|
|
|
|
@ -20,57 +20,58 @@ const GET_DOC_PROFILES = 'Doctors.svc/REST/GetDocProfiles';
|
|
|
|
|
DrAppSharedPreferances sharedPref = new DrAppSharedPreferances();
|
|
|
|
|
enum APP_STATUS { LOADING, UNAUTHENTICATED, AUTHENTICATED }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class AuthProvider with ChangeNotifier {
|
|
|
|
|
List <ClinicModel>doctorsClinicList=[];
|
|
|
|
|
bool isLogin= false;
|
|
|
|
|
List<ClinicModel> doctorsClinicList = [];
|
|
|
|
|
String selectedClinicName;
|
|
|
|
|
bool isLogin = false;
|
|
|
|
|
bool isLoading = true;
|
|
|
|
|
AuthProvider(){
|
|
|
|
|
AuthProvider() {
|
|
|
|
|
getUserAuthentication();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void getUserAuthentication() async{
|
|
|
|
|
void getUserAuthentication() async {
|
|
|
|
|
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
|
|
|
|
|
if(profile != null)
|
|
|
|
|
{
|
|
|
|
|
isLoading = false;
|
|
|
|
|
isLogin = true;
|
|
|
|
|
} else {
|
|
|
|
|
isLoading = false;
|
|
|
|
|
isLogin = false;
|
|
|
|
|
if (profile != null) {
|
|
|
|
|
isLoading = false;
|
|
|
|
|
isLogin = true;
|
|
|
|
|
} else {
|
|
|
|
|
isLoading = false;
|
|
|
|
|
isLogin = false;
|
|
|
|
|
}
|
|
|
|
|
notifyListeners();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
APP_STATUS get stutas {
|
|
|
|
|
if (isLoading) {
|
|
|
|
|
return APP_STATUS.LOADING;
|
|
|
|
|
} else{
|
|
|
|
|
if ( this.isLogin) {
|
|
|
|
|
} else {
|
|
|
|
|
if (this.isLogin) {
|
|
|
|
|
return APP_STATUS.AUTHENTICATED;
|
|
|
|
|
} else {
|
|
|
|
|
} else {
|
|
|
|
|
return APP_STATUS.UNAUTHENTICATED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future<dynamic> login(UserModel userInfo) async {
|
|
|
|
|
try {
|
|
|
|
|
dynamic localRes;
|
|
|
|
|
|
|
|
|
|
await BaseAppClient.post(LOGIN_URL,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: {
|
|
|
|
|
"UserID": userInfo.UserID,
|
|
|
|
|
"Password": userInfo.Password,
|
|
|
|
|
"ProjectID": userInfo.ProjectID,
|
|
|
|
|
"LanguageID": userInfo.LanguageID,
|
|
|
|
|
"IPAdress": userInfo.IPAdress,
|
|
|
|
|
"VersionID": userInfo.VersionID,
|
|
|
|
|
"Channel": userInfo.Channel,
|
|
|
|
|
"SessionID": userInfo.SessionID
|
|
|
|
|
});
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: {
|
|
|
|
|
"UserID": userInfo.UserID,
|
|
|
|
|
"Password": userInfo.Password,
|
|
|
|
|
"ProjectID": userInfo.ProjectID,
|
|
|
|
|
"LanguageID": userInfo.LanguageID,
|
|
|
|
|
"IPAdress": userInfo.IPAdress,
|
|
|
|
|
"VersionID": userInfo.VersionID,
|
|
|
|
|
"Channel": userInfo.Channel,
|
|
|
|
|
"SessionID": userInfo.SessionID
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
@ -85,10 +86,10 @@ class AuthProvider with ChangeNotifier {
|
|
|
|
|
|
|
|
|
|
await BaseAppClient.post(INSERT_DEVICE_IMEI,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: imei);
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: imei);
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
print(error);
|
|
|
|
|
@ -101,10 +102,10 @@ class AuthProvider with ChangeNotifier {
|
|
|
|
|
dynamic localRes;
|
|
|
|
|
await BaseAppClient.post(SELECT_DEVICE_IMEI,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: imei);
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: imei);
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
print(error);
|
|
|
|
|
@ -112,16 +113,15 @@ class AuthProvider with ChangeNotifier {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future sendActivationCodeByOtpNotificationType(
|
|
|
|
|
activationCodeModel) async {
|
|
|
|
|
Future sendActivationCodeByOtpNotificationType(activationCodeModel) async {
|
|
|
|
|
try {
|
|
|
|
|
var localRes;
|
|
|
|
|
await BaseAppClient.post(SEND_ACTIVATION_CODE_BY_OTP_NOTIFICATION_TYPE,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: activationCodeModel);
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: activationCodeModel);
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
print(error);
|
|
|
|
|
@ -134,15 +134,16 @@ class AuthProvider with ChangeNotifier {
|
|
|
|
|
dynamic localRes;
|
|
|
|
|
await BaseAppClient.post(MEMBER_CHECK_ACTIVATION_CODE_NEW,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
|
|
|
|
|
response['List_DoctorsClinic'].forEach((v) {
|
|
|
|
|
doctorsClinicList.add(new ClinicModel.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: activationCodeModel);
|
|
|
|
|
localRes = response;
|
|
|
|
|
selectedClinicName =
|
|
|
|
|
ClinicModel.fromJson(response['List_DoctorsClinic'][0]).clinicName;
|
|
|
|
|
notifyListeners();
|
|
|
|
|
response['List_DoctorsClinic'].forEach((v) {
|
|
|
|
|
doctorsClinicList.add(new ClinicModel.fromJson(v));
|
|
|
|
|
});
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: activationCodeModel);
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
print(error);
|
|
|
|
|
@ -162,16 +163,17 @@ class AuthProvider with ChangeNotifier {
|
|
|
|
|
dynamic localRes;
|
|
|
|
|
await BaseAppClient.post(GET_DOC_PROFILES,
|
|
|
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
|
|
|
localRes = response;
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: docInfo);
|
|
|
|
|
localRes = response;
|
|
|
|
|
//ClinicDescription
|
|
|
|
|
selectedClinicName = response['DoctorProfileList'][0]['ClinicDescription'];
|
|
|
|
|
notifyListeners();
|
|
|
|
|
}, onFailure: (String error, int statusCode) {
|
|
|
|
|
throw error;
|
|
|
|
|
}, body: docInfo);
|
|
|
|
|
return Future.value(localRes);
|
|
|
|
|
} catch (error) {
|
|
|
|
|
print(error);
|
|
|
|
|
throw error;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|