diff --git a/lib/core/service/base_service.dart b/lib/core/service/base_service.dart index c2d31cf1..34b7e1f6 100644 --- a/lib/core/service/base_service.dart +++ b/lib/core/service/base_service.dart @@ -23,9 +23,9 @@ class BaseService { } getUser() async { - if (user==null) { + // if (user==null) { var userData = await sharedPref.getObject(USER_PROFILE); if (userData != null) user = AuthenticatedUser.fromJson(userData); - } + // } } } diff --git a/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart b/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart index 26f2fe85..0ec33532 100644 --- a/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart +++ b/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart @@ -32,6 +32,8 @@ class CMCViewModel extends BaseViewModel { PharmacyModuleService _pharmacyModuleService = locator(); + GetHHCAllPresOrdersResponseModel pendingOrder; + bool get isOrderUpdated => _cMCService.isOrderUpdated; Future getCMCAllServices() async { @@ -64,7 +66,7 @@ class CMCViewModel extends BaseViewModel { error = _cMCService.error; setState(ViewState.Error); } else { - var pendingOrder = _cMCService.cmcAllPresOrdersList.firstWhere((element) => element.status == 1 || element.status == 2, orElse: () => null); + pendingOrder = _cMCService.cmcAllPresOrdersList.firstWhere((element) => element.status == 1 || element.status == 2, orElse: () => null); if (pendingOrder != null) { await getOrderDetailByOrderID(pendingOrder); setState(ViewState.Idle); diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart index 4b6b9b7f..859580ef 100644 --- a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart +++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart @@ -7,6 +7,7 @@ import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/Dialog/confirm_cancel_order_dialog.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; +import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils_new.dart'; @@ -35,6 +36,8 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { CMCInsertPresOrderRequestModel cMCInsertPresOrderRequestModel; + BuildContext _context; + @override void initState() { super.initState(); @@ -79,6 +82,7 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { @override Widget build(BuildContext context) { + _context = context; ProjectViewModel projectViewModel = Provider.of(context); void showConfirmMessage(CMCViewModel model, GetOrderDetailByOrderIDResponseModel order) { @@ -88,13 +92,18 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { model: model, onTap: () async { UpdatePresOrderRequestModel updatePresOrderRequestModel = UpdatePresOrderRequestModel(presOrderID: order.presOrderID, rejectionReason: "", presOrderStatus: 4, editedBy: 3); - await model.updateCmcPresOrder(updatePresOrderRequestModel); - if (model.state == ViewState.ErrorLocal) { - Utils.showErrorToast(model.error); - } else { - AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); - await model.getCmcAllPresOrders(); - } + Future.delayed(new Duration(milliseconds: 300)).then((value) async { + GifLoaderDialogUtils.showMyDialog(_context); + await model.updateCmcPresOrder(updatePresOrderRequestModel); + if (model.state == ViewState.ErrorLocal) { + Utils.showErrorToast(model.error); + GifLoaderDialogUtils.hideDialog(_context); + } else { + AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); + await model.getCmcAllPresOrders(); + GifLoaderDialogUtils.hideDialog(_context); + } + }); }, )); } @@ -102,7 +111,7 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { return Scaffold( body: SafeArea( child: Container( - child: widget.model.cmcAllOrderDetail.length != 0 + child: widget.model.cmcAllOrderDetail.length != 0 && widget.model.pendingOrder != null ? Column( children: [ Container( @@ -138,9 +147,9 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( - TranslationBase.of(context).OrderStatus + - ' ' + - (projectViewModel.isArabic ? widget.model.cmcAllOrderDetail[0].descriptionN : widget.model.cmcAllOrderDetail[0].description), + // TranslationBase.of(context).OrderStatus + + // ' ' + + (projectViewModel.isArabic ? widget.model.pendingOrder.descriptionN : widget.model.pendingOrder.description), style: TextStyle( fontSize: 12, letterSpacing: -0.48, @@ -150,7 +159,7 @@ class _NewCMCPageState extends State with TickerProviderStateMixin { ), mHeight(12), Text( - TranslationBase.of(context).requestID + ' ' + widget.model.cmcAllOrderDetail[0].iD.toString(), + TranslationBase.of(context).requestID + ' ' + widget.model.pendingOrder.iD.toString(), style: TextStyle( fontSize: 16, letterSpacing: -0.48, diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart index 110fa19f..4320eb21 100644 --- a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart +++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart @@ -204,9 +204,9 @@ class _NewCMCStepOnePageState extends State { widget.cMCInsertPresOrderRequestModel.patientERCMCInsertServicesList = [patientERCMCInsertServicesList]; await widget.model.getCustomerInfo(); - if (widget.model.state == ViewState.ErrorLocal) { - Utils.showErrorToast(); - } else { + // if (widget.model.state == ViewState.ErrorLocal) { + // Utils.showErrorToast(); + // } else { navigateTo( context, NewCMCStepTowPage( @@ -216,7 +216,7 @@ class _NewCMCStepOnePageState extends State { model: widget.model, ), ); - } + // } } }, ), diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart index c88687c2..4de0e61d 100644 --- a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart +++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart @@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_v import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; +import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils_new.dart'; @@ -33,13 +34,25 @@ class OrdersLogDetailsPage extends StatelessWidget { model: model, onTap: () async { UpdatePresOrderRequestModel updatePresOrderRequestModel = UpdatePresOrderRequestModel(presOrderID: order.iD, rejectionReason: "", presOrderStatus: 4, editedBy: 3); - await model.updateCmcPresOrder(updatePresOrderRequestModel); - if (model.state == ViewState.ErrorLocal) { - Utils.showErrorToast(model.error); - } else { - AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); - await model.getCmcAllPresOrders(); - } + Future.delayed(new Duration(milliseconds: 300)).then((value) async { + GifLoaderDialogUtils.showMyDialog(context); + await model.updateCmcPresOrder(updatePresOrderRequestModel); + if (model.state == ViewState.ErrorLocal) { + Utils.showErrorToast(model.error); + GifLoaderDialogUtils.hideDialog(context); + } else { + AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); + await model.getCmcAllPresOrders(); + GifLoaderDialogUtils.hideDialog(context); + } + }); + // await model.updateCmcPresOrder(updatePresOrderRequestModel); + // if (model.state == ViewState.ErrorLocal) { + // Utils.showErrorToast(model.error); + // } else { + // AppToast.showSuccessToast(message: TranslationBase.of(context).processDoneSuccessfully); + // await model.getCmcAllPresOrders(); + // } }, ), ); @@ -120,7 +133,7 @@ class OrdersLogDetailsPage extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( - TranslationBase.of(context).serviceName + ": ", + TranslationBase.of(context).hospital + ": ", style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.4, height: 16 / 10), ), Expanded( @@ -139,7 +152,7 @@ class OrdersLogDetailsPage extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.end, children: [ Text( - DateUtil.formatDateToDate(DateUtil.convertStringToDate(order.createdOn), projectViewModel.isArabic), + DateUtil.getDayMonthYearDateFormatted(DateUtil.convertStringToDate(order.createdOn)), style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.4, height: 16 / 10), ), SizedBox(height: 12), diff --git a/lib/pages/BookAppointment/components/DocAvailableAppointments.dart b/lib/pages/BookAppointment/components/DocAvailableAppointments.dart index 65c9443f..aaceb5ca 100644 --- a/lib/pages/BookAppointment/components/DocAvailableAppointments.dart +++ b/lib/pages/BookAppointment/components/DocAvailableAppointments.dart @@ -111,10 +111,14 @@ class _DocAvailableAppointmentsState extends State wit void _onVisibleDaysChanged(DateTime first, DateTime last, CalendarFormat format) { print('CALLBACK: _onVisibleDaysChanged'); + print(first); + print(last); } void _onCalendarCreated(DateTime first, DateTime last, CalendarFormat format) { print('CALLBACK: _onCalendarCreated'); + print(first); + print(last); } @override @@ -274,8 +278,6 @@ class _DocAvailableAppointmentsState extends State wit selectedButtonIndex = 0; DocAvailableAppointments.selectedTime = dayEvents[selectedButtonIndex].isoTime; - -// _scrollController.animateTo(0.0, duration: new Duration(seconds: 1), curve: Curves.ease); }); } diff --git a/lib/pages/vaccine/my_vaccines_screen.dart b/lib/pages/vaccine/my_vaccines_screen.dart index 0265dc32..a41c8c99 100644 --- a/lib/pages/vaccine/my_vaccines_screen.dart +++ b/lib/pages/vaccine/my_vaccines_screen.dart @@ -1,3 +1,4 @@ +import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/vaccine_view_model.dart'; @@ -42,7 +43,7 @@ class _MyVaccinesState extends State { children: [ AppExpandableNotifier( isExpand: true, - title: "2013", + title: model.state == ViewState.Idle ? DateUtil.convertStringToDate(model.vaccineList[0].vaccinationDate).year.toString() : "", bodyWidget: Container( child: ListView.separated( scrollDirection: Axis.vertical, diff --git a/lib/widgets/app_map/google_huawei_map.dart b/lib/widgets/app_map/google_huawei_map.dart index f7b986db..ff9efeff 100644 --- a/lib/widgets/app_map/google_huawei_map.dart +++ b/lib/widgets/app_map/google_huawei_map.dart @@ -59,7 +59,7 @@ class AppMapState extends State { Widget googleMap() { return GoogleMap( mapType: MapType.normal, - zoomControlsEnabled: false, + zoomControlsEnabled: true, myLocationButtonEnabled: true, myLocationEnabled: true, initialCameraPosition: CameraPosition.fromMap(widget.initialCamera), diff --git a/lib/widgets/data_display/medical/LabResult/LineChartCurved.dart b/lib/widgets/data_display/medical/LabResult/LineChartCurved.dart index 2e05d19c..e83cc6ca 100644 --- a/lib/widgets/data_display/medical/LabResult/LineChartCurved.dart +++ b/lib/widgets/data_display/medical/LabResult/LineChartCurved.dart @@ -110,9 +110,10 @@ class LineChartCurvedState extends State { getTextStyles: (value) => TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: 0, height: 18 / 12), getTitles: (value) { - return '${value.toInt()}'; + return '${value}'; }, margin: 8, + interval: getInterval(), //reservedSize: 30, ), ), @@ -142,6 +143,14 @@ class LineChartCurvedState extends State { ); } + double getInterval() { + double interval = 0.0; + interval = (getMaxY() - getMinY()) < 1.0 ? 0.05 : 3.0; + // print("Interval: " + (getMaxY() - getMinY()).toString()); + // print("Interval: " + interval.toString()); + return interval; + } + double getMaxY() { double max = 0; widget.labResult.forEach((element) { @@ -152,8 +161,8 @@ class LineChartCurvedState extends State { print(e); } }); - print("MinX: " + max.roundToDouble().toString()); - return max.roundToDouble(); + // print("MaxY: " + max.toString()); + return max; } double getMinY() { @@ -168,9 +177,9 @@ class LineChartCurvedState extends State { } catch (e) { print(e); } - int value = min.toInt(); - print("MinY: " + value.toDouble().toString()); - return value.toDouble(); + // int value = min.toInt(); + // print("MinY: " + min.toString()); + return min; } List getData() {