remove doctor profile view model

auth_refactor
Elham Rababah 5 years ago
parent 2e71706cab
commit 6815e47814

@ -1,19 +1,16 @@
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/core/model/auth/activation_Code_req_model.dart';
import 'package:doctor_app_flutter/core/model/auth/activation_code_for_verification_screen_model.dart';
import 'package:doctor_app_flutter/core/model/auth/check_activation_code_for_doctor_app_response_model.dart';
import 'package:doctor_app_flutter/core/model/auth/check_activation_code_request_model.dart';
import 'package:doctor_app_flutter/core/model/auth/imei_details.dart';
import 'package:doctor_app_flutter/core/model/auth/insert_imei_model.dart';
import 'package:doctor_app_flutter/core/model/auth/new_login_information_response_model.dart';
import 'package:doctor_app_flutter/core/model/auth/send_activation_code_for_doctor_app_response_model.dart';
import 'package:doctor_app_flutter/core/service/base/base_service.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/model/auth/activation_code_for_verification_screen_model.dart';
import 'package:doctor_app_flutter/core/model/auth/check_activation_code_request_model.dart';
import 'package:doctor_app_flutter/models/doctor/clinic_model.dart';
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart';
import 'package:doctor_app_flutter/models/doctor/profile_req_Model.dart';
import 'package:doctor_app_flutter/models/doctor/user_model.dart';
import 'package:provider/provider.dart';
class AuthenticationService extends BaseService {
List<GetIMEIDetailsModel> _imeiDetails = [];
@ -115,15 +112,7 @@ class AuthenticationService extends BaseService {
try {
await baseAppClient.post(CHECK_ACTIVATION_CODE_FOR_DOCTOR_APP,
onSuccess: (dynamic response, int statusCode) {
// TODO improve the logic here
Provider.of<DoctorProfileViewModel>(AppGlobal.CONTEX, listen: false).doctorsClinicList.clear();
_checkActivationCodeForDoctorAppRes = CheckActivationCodeForDoctorAppResponseModel.fromJson(response);
Provider.of<DoctorProfileViewModel>(AppGlobal.CONTEX, listen: false).selectedClinicName =
ClinicModel.fromJson(response['List_DoctorsClinic'][0]).clinicName;
response['List_DoctorsClinic'].forEach((v) {
Provider.of<DoctorProfileViewModel>(AppGlobal.CONTEX, listen: false).doctorsClinicList.add(new ClinicModel.fromJson(v));
});
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;

@ -29,9 +29,6 @@ import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/services.dart';
import 'package:local_auth/auth_strings.dart';
import 'package:local_auth/local_auth.dart';
import 'package:provider/provider.dart';
import 'doctor_profile_view_model.dart';
enum APP_STATUS { LOADING, UNAUTHENTICATED, AUTHENTICATED, UNVERIFIED }
@ -72,6 +69,7 @@ class AuthenticationViewModel extends BaseViewModel {
AuthenticationViewModel({bool checkDeviceInfo = false}) {
getDeviceInfoFromFirebase();
getDoctorProfile();
}
Future selectDeviceImei(imei) async {
@ -287,9 +285,6 @@ class AuthenticationViewModel extends BaseViewModel {
localSetDoctorProfile(DoctorProfileModel profile) {
super.setDoctorProfile(profile);
//TODO: Remove it when we remove Doctor Profile View Model and start to use profile form base view model
Provider.of<DoctorProfileViewModel>(AppGlobal.CONTEX, listen: false)
.setDoctorProfile(profile);
}
Future getDoctorProfileBasedOnClinic(ClinicModel clinicInfo) async {
@ -358,7 +353,7 @@ class AuthenticationViewModel extends BaseViewModel {
setState(ViewState.Busy);
_firebaseMessaging.getToken().then((String token) async {
if (DEVICE_TOKEN == "") {
if (DEVICE_TOKEN == "" && !isLogin) {
DEVICE_TOKEN = token;
await _authService.selectDeviceImei(DEVICE_TOKEN);

@ -1,67 +0,0 @@
import 'package:doctor_app_flutter/client/base_app_client.dart';
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/core/service/authentication_service.dart';
import 'package:doctor_app_flutter/core/viewModel/base_view_model.dart';
import 'package:doctor_app_flutter/models/doctor/clinic_model.dart';
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart';
import '../../locator.dart';
class DoctorProfileViewModel extends BaseViewModel {
List<ClinicModel> doctorsClinicList = [];
AuthenticationService _authService = locator<AuthenticationService>();
String selectedClinicName;
bool isLogin = false;
bool isLoading = true;
DoctorProfileModel doctorProfile;
BaseAppClient baseAppClient = BaseAppClient();
setDoctorProfile(DoctorProfileModel profileModel) {
doctorProfile = profileModel;
notifyListeners();
}
DoctorProfileViewModel() {
getUserProfile();
}
getUserProfile() async {
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
if (profile != null) {
doctorProfile = new DoctorProfileModel.fromJson(profile);
isLoading = false;
isLogin = true;
} else {
isLoading = false;
isLogin = false;
}
notifyListeners();
}
Future<dynamic> getDocProfiles(docInfo,
{bool allowChangeProfile = true}) async {
try {
dynamic localRes;
await baseAppClient.post(GET_DOC_PROFILES,
onSuccess: (dynamic response, int statusCode) {
localRes = response;
if (allowChangeProfile) {
doctorProfile =
DoctorProfileModel.fromJson(response['DoctorProfileList'][0]);
selectedClinicName =
response['DoctorProfileList'][0]['ClinicDescription'];
}
}, onFailure: (String error, int statusCode) {
throw error;
}, body: docInfo);
notifyListeners();
return Future.value(localRes);
} catch (error) {
print(error);
throw error;
}
}
}

@ -4,15 +4,15 @@ import 'package:connectivity/connectivity.dart';
import 'package:doctor_app_flutter/client/base_app_client.dart';
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/models/doctor/clinic_model.dart';
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart';
import 'package:doctor_app_flutter/models/doctor/profile_req_Model.dart';
import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart';
import 'package:doctor_app_flutter/util/helpers.dart';
import 'package:flutter/cupertino.dart';
import 'package:provider/provider.dart';
import 'authentication_view_model.dart';
Helpers helpers = Helpers();
class ProjectViewModel with ChangeNotifier {
@ -116,19 +116,9 @@ class ProjectViewModel with ChangeNotifier {
void getProfile() async {
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
DoctorProfileModel doctorProfile = new DoctorProfileModel.fromJson(profile);
ProfileReqModel docInfo = new ProfileReqModel(
doctorID: doctorProfile.doctorID,
clinicID: doctorProfile.clinicID,
license: true,
projectID: doctorProfile.projectID,
);
Provider.of<DoctorProfileViewModel>(AppGlobal.CONTEX, listen: false)
.getDocProfiles(docInfo.toJson())
.then((res) async {
sharedPref.setObj(DOCTOR_PROFILE, res['DoctorProfileList'][0]);
}).catchError((err) {
print(err);
});
ClinicModel clinicModel = ClinicModel(doctorID:doctorProfile.doctorID,clinicID: doctorProfile.clinicID, projectID: doctorProfile.projectID,);
await Provider.of<AuthenticationViewModel>(AppGlobal.CONTEX, listen: false)
.getDoctorProfileBasedOnClinic(clinicModel);
}
}

@ -12,8 +12,6 @@ import './config/size_config.dart';
import './routes.dart';
import 'config/config.dart';
import 'core/viewModel/authentication_view_model.dart';
import 'core/viewModel/doctor_profile_view_model.dart';
import 'core/viewModel/hospitals_view_model.dart';
import 'locator.dart';
void main() async {
@ -35,8 +33,6 @@ class MyApp extends StatelessWidget {
providers: [
ChangeNotifierProvider<AuthenticationViewModel>(
create: (context) => AuthenticationViewModel()),
ChangeNotifierProvider<DoctorProfileViewModel>(
create: (context) => DoctorProfileViewModel()),
ChangeNotifierProvider<ProjectViewModel>(
create: (context) => ProjectViewModel(),
),

@ -14,7 +14,6 @@ class RootPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
AuthenticationViewModel authenticationViewModel = Provider.of(context);
// ignore: missing_return
Widget buildRoot() {
switch (authenticationViewModel.stutas) {
case APP_STATUS.LOADING:

@ -4,7 +4,6 @@ import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/core/enum/auth_method_types.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/util/date-utils.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
@ -42,14 +41,12 @@ class _VerificationMethodsScreenState extends State<VerificationMethodsScreen> {
ProjectViewModel projectsProvider;
bool isMoreOption = false;
bool onlySMSBox = false;
DoctorProfileViewModel doctorProfileViewModel;
AuthMethodTypes fingerPrintBefore;
AuthMethodTypes selectedOption;
AuthenticationViewModel authenticationViewModel;
@override
Widget build(BuildContext context) {
doctorProfileViewModel = Provider.of<DoctorProfileViewModel>(context);
projectsProvider = Provider.of<ProjectViewModel>(context);
authenticationViewModel = Provider.of<AuthenticationViewModel>(context);

@ -2,26 +2,21 @@ import 'package:charts_flutter/flutter.dart' as charts;
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/patient_type.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/model/PatientSearchRequestModel.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/dashboard_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/hospitals_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/dashboard_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/dashboard/dashboard_model.dart';
import 'package:doctor_app_flutter/models/doctor/clinic_model.dart';
import 'package:doctor_app_flutter/models/doctor/doctor_profile_model.dart';
import 'package:doctor_app_flutter/models/doctor/profile_req_Model.dart';
import 'package:doctor_app_flutter/models/patient/patient_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/medicine/medicine_search_screen.dart';
import 'package:doctor_app_flutter/screens/patients/DischargedPatientPage.dart';
import 'package:doctor_app_flutter/screens/patients/PatientsInPatientScreen.dart';
import 'package:doctor_app_flutter/screens/patients/ReferralDischargedPatientPage.dart';
import 'package:doctor_app_flutter/screens/patients/out_patient/out_patient_screen.dart';
import 'package:doctor_app_flutter/screens/patients/patient_search/patient_search_screen.dart';
import 'package:doctor_app_flutter/screens/patients/patient_search/patient_search_result_screen.dart';
import 'package:doctor_app_flutter/screens/patients/profile/referral/patient_referral_screen.dart';
import 'package:doctor_app_flutter/util/date-utils.dart';
import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart';
@ -35,6 +30,7 @@ import 'package:doctor_app_flutter/widgets/dashboard/swiper_rounded_pagination.d
import 'package:doctor_app_flutter/widgets/patients/profile/profile-welcome-widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart';
import 'package:doctor_app_flutter/widgets/transitions/fade_page.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/cupertino.dart';
@ -43,7 +39,6 @@ import 'package:flutter_swiper/flutter_swiper.dart';
import 'package:provider/provider.dart';
import 'package:sticky_headers/sticky_headers/widget.dart';
import '../../locator.dart';
import '../../widgets/shared/app_texts_widget.dart';
import '../../widgets/shared/rounded_container_widget.dart';
import 'home_page_card.dart';
@ -63,7 +58,6 @@ class HomeScreen extends StatefulWidget {
class _HomeScreenState extends State<HomeScreen> {
final FirebaseMessaging _firebaseMessaging = FirebaseMessaging();
DoctorProfileViewModel authProvider;
bool isLoading = false;
ProjectViewModel projectsProvider;
var _isInit = true;
@ -111,7 +105,6 @@ class _HomeScreenState extends State<HomeScreen> {
@override
Widget build(BuildContext context) {
myContext = context;
authProvider = Provider.of(context);
projectsProvider = Provider.of(context);
FocusScopeNode currentFocus = FocusScope.of(context);
@ -584,7 +577,7 @@ class _HomeScreenState extends State<HomeScreen> {
PatientSearchRequestModel(
from: date,
to: date,
doctorID: authProvider
doctorID: authenticationViewModel
.doctorProfile
.doctorID)),
));
@ -811,24 +804,16 @@ class _HomeScreenState extends State<HomeScreen> {
}
changeClinic(clinicId, BuildContext context, model) async {
// Navigator.pop(context);
changeIsLoading(true);
Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
DoctorProfileModel doctorProfile = new DoctorProfileModel.fromJson(profile);
ProfileReqModel docInfo = new ProfileReqModel(
doctorID: doctorProfile.doctorID,
clinicID: clinicId,
license: true,
projectID: doctorProfile.projectID,
tokenID: '',
languageID: 2);
authProvider.getDocProfiles(docInfo.toJson()).then((res) async {
changeIsLoading(false);
sharedPref.setObj(DOCTOR_PROFILE, res['DoctorProfileList'][0]);
}).catchError((err) {
changeIsLoading(false);
Helpers.showErrorToast(err);
});
GifLoaderDialogUtils.showMyDialog(context);
DoctorProfileModel doctorProfile = authenticationViewModel.doctorProfile;
ClinicModel clinic = ClinicModel(clinicID:clinicId, doctorID: doctorProfile.doctorID,projectID: doctorProfile.projectID, );
await authenticationViewModel.getDoctorProfileBasedOnClinic(clinic);
if(authenticationViewModel.state == ViewState.ErrorLocal) {
Helpers.showErrorToast(authenticationViewModel.error);
}
GifLoaderDialogUtils.hideDialog(context);
}
changeIsLoading(bool val) {

@ -4,7 +4,7 @@ import 'package:doctor_app_flutter/core/enum/patient_type.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/model/PatientSearchRequestModel.dart';
import 'package:doctor_app_flutter/core/viewModel/PatientSearchViewModel.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/patient_model.dart';
@ -60,9 +60,9 @@ class OutPatientsScreen extends StatefulWidget {
class _OutPatientsScreenState extends State<OutPatientsScreen> {
int clinicId;
DoctorProfileViewModel authProvider;
AuthenticationViewModel authenticationViewModel;
List<String> _times = []; //['All', 'Today', 'Tomorrow', 'Next Week'];
List<String> _times = [];
int _activeLocation = 1;
String patientType;
@ -79,7 +79,7 @@ class _OutPatientsScreenState extends State<OutPatientsScreen> {
@override
Widget build(BuildContext context) {
authProvider = Provider.of(context);
authenticationViewModel = Provider.of(context);
_times = [
TranslationBase
.of(context)

@ -2,7 +2,7 @@ import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/patient_type.dart';
import 'package:doctor_app_flutter/core/model/PatientSearchRequestModel.dart';
import 'package:doctor_app_flutter/core/viewModel/PatientSearchViewModel.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/patient_model.dart';
@ -48,7 +48,7 @@ class PatientsSearchResultScreen extends StatefulWidget {
class _PatientsSearchResultScreenState
extends State<PatientsSearchResultScreen> {
int clinicId;
DoctorProfileViewModel authProvider;
AuthenticationViewModel authenticationViewModel;
String patientType;
@ -64,7 +64,7 @@ class _PatientsSearchResultScreenState
@override
Widget build(BuildContext context) {
authProvider = Provider.of(context);
authenticationViewModel = Provider.of(context);
return BaseView<PatientSearchViewModel>(
onModelReady: (model) async {
if(!widget.isSearchWithKeyInfo && widget.selectedPatientType == PatientType.OutPatient) {

@ -2,7 +2,7 @@ import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/core/enum/patient_type.dart';
import 'package:doctor_app_flutter/core/model/PatientSearchRequestModel.dart';
import 'package:doctor_app_flutter/core/viewModel/PatientSearchViewModel.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/patients/patient_search/patient_search_result_screen.dart';
import 'package:doctor_app_flutter/screens/patients/profile/soap_update/shared_soap_widgets/bottom_sheet_title.dart';
@ -29,11 +29,11 @@ class _PatientSearchScreenState extends State<PatientSearchScreen> {
TextEditingController middleNameInfoController = TextEditingController();
TextEditingController lastNameFileInfoController = TextEditingController();
PatientType selectedPatientType = PatientType.inPatient;
DoctorProfileViewModel authProvider;
AuthenticationViewModel authenticationViewModel;
@override
Widget build(BuildContext context) {
authProvider =Provider.of(context);
authenticationViewModel = Provider.of(context);
return BaseView<PatientSearchViewModel>(
onModelReady: (model) async {},
builder: (_, model, w) => AppScaffold(
@ -147,7 +147,7 @@ class _PatientSearchScreenState extends State<PatientSearchScreen> {
isFormSubmitted = true;
});
PatientSearchRequestModel patientSearchRequestModel =
PatientSearchRequestModel(doctorID: authProvider.doctorProfile.doctorID);
PatientSearchRequestModel(doctorID: authenticationViewModel.doctorProfile.doctorID);
if (showOther) {
patientSearchRequestModel.firstName = firstNameInfoController.text.trim().isEmpty?"0":firstNameInfoController.text.trim();
patientSearchRequestModel.middleName = middleNameInfoController.text.trim().isEmpty?"0":middleNameInfoController.text.trim();

@ -1,6 +1,6 @@
import 'package:doctor_app_flutter/core/model/note/note_model.dart';
import 'package:doctor_app_flutter/core/model/note/update_note_model.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/patient_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
@ -39,10 +39,8 @@ class ProgressNoteScreen extends StatefulWidget {
class _ProgressNoteState extends State<ProgressNoteScreen> {
List<NoteModel> notesList;
var filteredNotesList;
final _controller = TextEditingController();
var _isInit = true;
bool isDischargedPatient = false;
DoctorProfileViewModel authProvider;
AuthenticationViewModel authenticationViewModel;
ProjectViewModel projectViewModel;
getProgressNoteList(BuildContext context, PatientViewModel model,
@ -71,7 +69,7 @@ class _ProgressNoteState extends State<ProgressNoteScreen> {
@override
Widget build(BuildContext context) {
authProvider = Provider.of(context);
authenticationViewModel = Provider.of(context);
projectViewModel = Provider.of(context);
final routeArgs = ModalRoute
.of(context)
@ -141,7 +139,7 @@ class _ProgressNoteState extends State<ProgressNoteScreen> {
bgColor: model.patientProgressNoteList[index]
.status ==
1 &&
authProvider.doctorProfile.doctorID !=
authenticationViewModel.doctorProfile.doctorID !=
model
.patientProgressNoteList[
index]
@ -167,7 +165,7 @@ class _ProgressNoteState extends State<ProgressNoteScreen> {
index]
.status ==
1 &&
authProvider
authenticationViewModel
.doctorProfile.doctorID !=
model
.patientProgressNoteList[
@ -213,7 +211,7 @@ class _ProgressNoteState extends State<ProgressNoteScreen> {
index]
.status !=
4 &&
authProvider
authenticationViewModel
.doctorProfile.doctorID ==
model
.patientProgressNoteList[

@ -1,6 +1,5 @@
import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/patient-referral-viewmodel.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/my_referral/PendingReferral.dart';
@ -15,16 +14,13 @@ import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/buttons/app_buttons_widget.dart';
import 'package:flutter/material.dart';
import 'package:hexcolor/hexcolor.dart';
import 'package:provider/provider.dart';
// ignore: must_be_immutable
class MyReferralDetailScreen extends StatelessWidget {
PendingReferral pendingReferral;
@override
Widget build(BuildContext context) {
final gridHeight = (MediaQuery.of(context).size.width * 0.3) * 1.8;
DoctorProfileViewModel authProvider = Provider.of(context);
final routeArgs = ModalRoute.of(context).settings.arguments as Map;
pendingReferral = routeArgs['referral'];

@ -1,4 +1,3 @@
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/patient-referral-viewmodel.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
@ -7,15 +6,12 @@ import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:provider/provider.dart';
import '../../../../routes.dart';
class MyReferralPatientScreen extends StatelessWidget {
// previous design page is: MyReferralPatient
@override
Widget build(BuildContext context) {
DoctorProfileViewModel authProvider = Provider.of(context);
return BaseView<PatientReferralViewModel>(
onModelReady: (model) => model.getPendingReferralPatients(),

@ -3,7 +3,6 @@ import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart';
// import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/models/SOAP/PatchAssessmentReqModel.dart';
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart';

@ -1,4 +1,4 @@
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
@ -11,7 +11,7 @@ class ProfileWelcomeWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
DoctorProfileViewModel authProvider = Provider.of(context);
AuthenticationViewModel authenticationViewModel = Provider.of(context);
return Container(
height: height,
@ -55,7 +55,7 @@ class ProfileWelcomeWidget extends StatelessWidget {
child: ClipRRect(
borderRadius: BorderRadius.circular(20),
child: Image.network(
authProvider.doctorProfile.doctorImageURL,
authenticationViewModel.doctorProfile.doctorImageURL,
fit: BoxFit.fill,
width: 75,
height: 75,

@ -1,4 +1,4 @@
import 'package:doctor_app_flutter/core/viewModel/doctor_profile_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/authentication_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/project_view_model.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/screens/reschedule-leaves/add-rescheduleleave.dart';
@ -28,7 +28,7 @@ class _AppDrawerState extends State<AppDrawer> {
@override
Widget build(BuildContext context) {
DoctorProfileViewModel authProvider = Provider.of(context);
AuthenticationViewModel authenticationViewModel = Provider.of(context);
projectsProvider = Provider.of(context);
return RoundedContainer(
child: Container(
@ -69,7 +69,7 @@ class _AppDrawerState extends State<AppDrawer> {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
),
SizedBox(height: 5),
if (authProvider.doctorProfile != null)
if (authenticationViewModel.doctorProfile != null)
InkWell(
onTap: () {
// TODO: return it back when its needed
@ -85,7 +85,7 @@ class _AppDrawerState extends State<AppDrawer> {
padding: EdgeInsets.only(top: 10),
child: AppText(
TranslationBase.of(context).dr +
authProvider.doctorProfile?.doctorName,
authenticationViewModel.doctorProfile?.doctorName,
fontWeight: FontWeight.bold,
color: Color(0xFF2E303A),
fontFamily: 'Poppins',
@ -95,7 +95,7 @@ class _AppDrawerState extends State<AppDrawer> {
Padding(
padding: EdgeInsets.only(top: 0),
child: AppText(
authProvider.doctorProfile?.clinicDescription,
authenticationViewModel.doctorProfile?.clinicDescription,
fontWeight: FontWeight.w600,
color: Color(0xFF2E303A),
fontSize: 15,

@ -3,13 +3,6 @@ import 'package:progress_hud_v2/progress_hud.dart';
import 'loader/gif_loader_container.dart';
/*
*@author: Elham Rababah
*@Date:19/4/2020
*@param:
*@return: Positioned
*@desc: AppLoaderWidget to create loader
*/
class AppLoaderWidget extends StatefulWidget {
AppLoaderWidget({Key key, this.title, this.containerColor}) : super(key: key);
@ -21,25 +14,7 @@ class AppLoaderWidget extends StatefulWidget {
}
class _AppLoaderWidgetState extends State<AppLoaderWidget> {
ProgressHUD _progressHUD;
@override
void initState() {
super.initState();
/*
*@author: Elham Rababah
*@Date:19/4/2020
*@param:
*@return:
*@desc: create loader the desing
*/
_progressHUD = new ProgressHUD(
backgroundColor: widget.containerColor == null ? Colors.black12 : widget.containerColor,
color: Colors.black,
// containerColor: Colors.blue,
borderRadius: 5.0,
// text: 'Loading...',
);
}
@override
Widget build(BuildContext context) {

Loading…
Cancel
Save