|
|
|
|
@ -1,8 +1,10 @@
|
|
|
|
|
import 'package:doctor_app_flutter/config/config.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/hospitals/get_hospitals_request_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/hospitals/get_hospitals_response_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/imei_details.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/insert_imei_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/service/auth_service.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/service/hospitals/hospitals_service.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/viewModel/base_view_model.dart';
|
|
|
|
|
@ -11,10 +13,6 @@ import 'package:doctor_app_flutter/models/auth/activation_Code_req_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/auth/activation_code_for_verification_screen_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/auth/check_activation_code_request_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/models/doctor/user_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/util/helpers.dart';
|
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
|
|
|
|
|
|
import 'auth_view_model.dart';
|
|
|
|
|
|
|
|
|
|
class IMEIViewModel extends BaseViewModel {
|
|
|
|
|
AuthService _authService = locator<AuthService>();
|
|
|
|
|
@ -37,6 +35,45 @@ class IMEIViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future insertDeviceImei() async {
|
|
|
|
|
|
|
|
|
|
var loggedIn = await sharedPref.getObj(LOGGED_IN_USER);
|
|
|
|
|
var user = await sharedPref.getObj(LAST_LOGIN_USER);
|
|
|
|
|
if (user != null) {
|
|
|
|
|
user = GetIMEIDetailsModel.fromJson(user);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var profileInfo = await sharedPref.getObj(DOCTOR_PROFILE);
|
|
|
|
|
|
|
|
|
|
profileInfo['IMEI'] = DEVICE_TOKEN;
|
|
|
|
|
profileInfo['LogInTypeID'] = await sharedPref.getInt(OTP_TYPE);
|
|
|
|
|
profileInfo['BioMetricEnabled'] = true;
|
|
|
|
|
profileInfo['MobileNo'] =
|
|
|
|
|
loggedIn != null ? loggedIn['MobileNumber'] : user.mobile;
|
|
|
|
|
InsertIMEIDetailsModel insertIMEIDetailsModel = InsertIMEIDetailsModel.fromJson(profileInfo);
|
|
|
|
|
insertIMEIDetailsModel.genderDescription = profileInfo['Gender_Description'];
|
|
|
|
|
insertIMEIDetailsModel.genderDescriptionN = profileInfo['Gender_DescriptionN'];
|
|
|
|
|
insertIMEIDetailsModel.genderDescriptionN = profileInfo['Gender_DescriptionN'];
|
|
|
|
|
insertIMEIDetailsModel.titleDescription = profileInfo['Title_Description'];
|
|
|
|
|
insertIMEIDetailsModel.titleDescriptionN = profileInfo['Title_DescriptionN'];
|
|
|
|
|
insertIMEIDetailsModel.projectID = await sharedPref.getInt(PROJECT_ID);
|
|
|
|
|
insertIMEIDetailsModel.doctorID = loggedIn != null
|
|
|
|
|
? loggedIn['List_MemberInformation'][0]['MemberID']
|
|
|
|
|
: user.doctorID;
|
|
|
|
|
insertIMEIDetailsModel.outSA = loggedIn != null ? loggedIn['PatientOutSA'] : user.outSA;
|
|
|
|
|
insertIMEIDetailsModel.vidaAuthTokenID = await sharedPref.getString(VIDA_AUTH_TOKEN_ID);
|
|
|
|
|
insertIMEIDetailsModel.vidaRefreshTokenID =
|
|
|
|
|
await sharedPref.getString(VIDA_REFRESH_TOKEN_ID);
|
|
|
|
|
insertIMEIDetailsModel.password = await sharedPref.getString(PASSWORD);
|
|
|
|
|
|
|
|
|
|
await _authService.insertDeviceImei(insertIMEIDetailsModel);
|
|
|
|
|
if (_authService.hasError) {
|
|
|
|
|
error = _authService.error;
|
|
|
|
|
setState(ViewState.ErrorLocal);
|
|
|
|
|
} else
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future login(UserModel userInfo) async {
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
await _authService.login(userInfo);
|
|
|
|
|
|