|
|
|
@ -36,6 +36,7 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
var sharedPref = new AppSharedPreferences();
|
|
|
|
|
var familyFileProvider = FamilyFilesProvider();
|
|
|
|
|
AuthenticatedUser user;
|
|
|
|
|
AuthenticatedUser mainUser;
|
|
|
|
|
AuthenticatedUserObject authenticatedUserObject =
|
|
|
|
|
locator<AuthenticatedUserObject>();
|
|
|
|
|
|
|
|
|
@ -97,7 +98,7 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
child: Column(
|
|
|
|
|
children: <Widget>[
|
|
|
|
|
AppText(
|
|
|
|
|
'File No:' +
|
|
|
|
|
TranslationBase.of(context).fileno +": " +
|
|
|
|
|
user.patientID
|
|
|
|
|
.toString(),
|
|
|
|
|
color:
|
|
|
|
@ -188,49 +189,84 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
width: 1.0,
|
|
|
|
|
),
|
|
|
|
|
)),
|
|
|
|
|
child: Column(
|
|
|
|
|
child: Column(children: [
|
|
|
|
|
user.isFamily == true ? Container(
|
|
|
|
|
|
|
|
|
|
padding: EdgeInsets
|
|
|
|
|
.only(
|
|
|
|
|
bottom:
|
|
|
|
|
5),
|
|
|
|
|
child: InkWell(
|
|
|
|
|
onTap: () {
|
|
|
|
|
switchUser(
|
|
|
|
|
mainUser,
|
|
|
|
|
context);
|
|
|
|
|
},
|
|
|
|
|
child: Row(
|
|
|
|
|
crossAxisAlignment:
|
|
|
|
|
CrossAxisAlignment
|
|
|
|
|
.start,
|
|
|
|
|
children: <
|
|
|
|
|
Widget>[
|
|
|
|
|
Expanded(
|
|
|
|
|
child: Icon(
|
|
|
|
|
Icons.person),
|
|
|
|
|
),
|
|
|
|
|
Expanded(
|
|
|
|
|
flex:
|
|
|
|
|
7,
|
|
|
|
|
child: Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: <Widget>[
|
|
|
|
|
AppText(mainUser.firstName +' '+mainUser.lastName),
|
|
|
|
|
AppText(TranslationBase.of(context).fileno +": " + mainUser.patientID.toString()),
|
|
|
|
|
])),
|
|
|
|
|
],
|
|
|
|
|
))) : SizedBox(),
|
|
|
|
|
Column(
|
|
|
|
|
mainAxisAlignment:
|
|
|
|
|
MainAxisAlignment.start,
|
|
|
|
|
MainAxisAlignment.start,
|
|
|
|
|
mainAxisSize:
|
|
|
|
|
MainAxisSize.min,
|
|
|
|
|
MainAxisSize.min,
|
|
|
|
|
children: snapshot.data
|
|
|
|
|
.getAllSharedRecordsByStatusList
|
|
|
|
|
.map<Widget>((result) {
|
|
|
|
|
return result.status == 3
|
|
|
|
|
? Padding(
|
|
|
|
|
padding: EdgeInsets
|
|
|
|
|
.only(
|
|
|
|
|
bottom:
|
|
|
|
|
5),
|
|
|
|
|
child: InkWell(
|
|
|
|
|
onTap: () {
|
|
|
|
|
switchUser(
|
|
|
|
|
result,
|
|
|
|
|
context);
|
|
|
|
|
},
|
|
|
|
|
child: Row(
|
|
|
|
|
crossAxisAlignment:
|
|
|
|
|
CrossAxisAlignment
|
|
|
|
|
.start,
|
|
|
|
|
children: <
|
|
|
|
|
Widget>[
|
|
|
|
|
Expanded(
|
|
|
|
|
child: Icon(
|
|
|
|
|
Icons.person),
|
|
|
|
|
),
|
|
|
|
|
Expanded(
|
|
|
|
|
flex:
|
|
|
|
|
7,
|
|
|
|
|
child: Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: <Widget>[
|
|
|
|
|
Text(result.patientName),
|
|
|
|
|
Text('File No:' + result.iD.toString()),
|
|
|
|
|
])),
|
|
|
|
|
],
|
|
|
|
|
)))
|
|
|
|
|
? Container(
|
|
|
|
|
|
|
|
|
|
padding: EdgeInsets
|
|
|
|
|
.only(
|
|
|
|
|
bottom:
|
|
|
|
|
5),
|
|
|
|
|
child: InkWell(
|
|
|
|
|
onTap: () {
|
|
|
|
|
switchUser(
|
|
|
|
|
result,
|
|
|
|
|
context);
|
|
|
|
|
},
|
|
|
|
|
child: Row(
|
|
|
|
|
crossAxisAlignment:
|
|
|
|
|
CrossAxisAlignment
|
|
|
|
|
.start,
|
|
|
|
|
children: <
|
|
|
|
|
Widget>[
|
|
|
|
|
Expanded(
|
|
|
|
|
child: Icon(
|
|
|
|
|
Icons.person, color:result.responseID ==user.patientID ? Color(0xFF40ACC9): Colors.black),
|
|
|
|
|
),
|
|
|
|
|
Expanded(
|
|
|
|
|
flex:
|
|
|
|
|
7,
|
|
|
|
|
child: Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: <Widget>[
|
|
|
|
|
AppText(result.patientName, color:result.responseID ==user.patientID ? Color(0xFF40ACC9): Colors.black),
|
|
|
|
|
AppText(TranslationBase.of(context).fileno +": " + result.iD.toString(), color:result.responseID ==user.patientID ? Color(0xFF40ACC9): Colors.black),
|
|
|
|
|
])),
|
|
|
|
|
],
|
|
|
|
|
)))
|
|
|
|
|
: SizedBox();
|
|
|
|
|
}).toList()));
|
|
|
|
|
}).toList())],));
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
),
|
|
|
|
@ -343,8 +379,13 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
if (await this.sharedPref.getObject(USER_PROFILE) != null) {
|
|
|
|
|
var data = AuthenticatedUser.fromJson(
|
|
|
|
|
await this.sharedPref.getObject(USER_PROFILE));
|
|
|
|
|
|
|
|
|
|
var data2 = AuthenticatedUser.fromJson(
|
|
|
|
|
await this.sharedPref.getObject(MAIN_USER));
|
|
|
|
|
print(data2);
|
|
|
|
|
setState(() {
|
|
|
|
|
this.user = data;
|
|
|
|
|
this.mainUser = data2;
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -371,6 +412,7 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<GetAllSharedRecordsByStatusResponse> getFamilyFiles() async {
|
|
|
|
|
if(user !=null){
|
|
|
|
|
if (await sharedPref.getObject(FAMILY_FILE) != null) {
|
|
|
|
|
// print(await sharedPref.getObject(FAMILY_FILE));
|
|
|
|
|
return Future.value(GetAllSharedRecordsByStatusResponse.fromJson(
|
|
|
|
@ -378,13 +420,14 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
} else {
|
|
|
|
|
return familyFileProvider.getSharedRecordByStatus();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
switchUser(user, context) {
|
|
|
|
|
Utils.showProgressDialog(context);
|
|
|
|
|
this
|
|
|
|
|
.familyFileProvider
|
|
|
|
|
.silentLoggin(user)
|
|
|
|
|
.silentLoggin(user is AuthenticatedUser ? null : user, mainUser: user is AuthenticatedUser)
|
|
|
|
|
.then((value) => loginAfter(value, context))
|
|
|
|
|
.catchError((err) {
|
|
|
|
|
print(err);
|
|
|
|
@ -392,14 +435,20 @@ class _AppDrawerState extends State<AppDrawer> {
|
|
|
|
|
Navigator.of(context).pop();
|
|
|
|
|
}).showProgressBar(
|
|
|
|
|
text: "Loading", backgroundColor: Colors.blue.withOpacity(0.6));
|
|
|
|
|
;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
loginAfter(result, context) {
|
|
|
|
|
loginAfter(result, context) async {
|
|
|
|
|
Utils.hideProgressDialog();
|
|
|
|
|
result = CheckActivationCode.fromJson(result);
|
|
|
|
|
var familyFile = await sharedPref.getObject(FAMILY_FILE);
|
|
|
|
|
var mainUser = await sharedPref.getObject(MAIN_USER);
|
|
|
|
|
this.sharedPref.clear();
|
|
|
|
|
if(mainUser["PatientID"] != result.list.patientID) {
|
|
|
|
|
result.list.isFamily = true;
|
|
|
|
|
}
|
|
|
|
|
this.sharedPref.setObject(MAIN_USER,mainUser);
|
|
|
|
|
this.sharedPref.setObject(USER_PROFILE, result.list);
|
|
|
|
|
this.sharedPref.setObject(FAMILY_FILE, familyFile);
|
|
|
|
|
this.sharedPref.setObject(LOGIN_TOKEN_ID, result.logInTokenID);
|
|
|
|
|
this.sharedPref.setString(TOKEN, result.authenticationTokenID);
|
|
|
|
|
//this.checkIfUserAgreedBefore(result),
|
|
|
|
|