From 01bd55366a489eae25d2d03eded616e15f855482 Mon Sep 17 00:00:00 2001 From: Elham Rababah Date: Thu, 29 Apr 2021 17:44:28 +0300 Subject: [PATCH] date difference --- .../out_patient/filter_date_page.dart | 54 ++++++++++++------- 1 file changed, 34 insertions(+), 20 deletions(-) diff --git a/lib/screens/patients/out_patient/filter_date_page.dart b/lib/screens/patients/out_patient/filter_date_page.dart index e95cb425..f4577008 100644 --- a/lib/screens/patients/out_patient/filter_date_page.dart +++ b/lib/screens/patients/out_patient/filter_date_page.dart @@ -169,31 +169,45 @@ class _FilterDatePageState extends State { padding: 10, color: Color(0xFF359846), onPressed: () async { - if (widget.patientSearchViewModel.selectedFromDate == null || - widget.patientSearchViewModel.selectedToDate == null) { + if (widget.patientSearchViewModel.selectedFromDate == + null || + widget.patientSearchViewModel.selectedToDate == + null) { Helpers.showErrorToast( "Please Select All The date Fields "); } else { - String dateTo = DateUtils.convertDateToFormat( - widget.patientSearchViewModel.selectedToDate, - 'yyyy-MM-dd'); - String dateFrom = DateUtils.convertDateToFormat( - widget.patientSearchViewModel.selectedFromDate, - 'yyyy-MM-dd'); + Duration difference = widget + .patientSearchViewModel.selectedToDate + .difference( + widget.patientSearchViewModel.selectedFromDate); + if (difference.inDays > 30) { + Helpers.showErrorToast( + "The difference between from date and end date must be less"); + } else { + String dateTo = DateUtils.convertDateToFormat( + widget.patientSearchViewModel.selectedToDate, + 'yyyy-MM-dd'); + String dateFrom = DateUtils.convertDateToFormat( + widget.patientSearchViewModel.selectedFromDate, + 'yyyy-MM-dd'); - PatientSearchRequestModel currentModel = PatientSearchRequestModel(); - currentModel.to = dateTo; - currentModel.from= dateFrom; - GifLoaderDialogUtils.showMyDialog(context); - await widget.patientSearchViewModel.getOutPatient( - currentModel, isLocalBusy: true); - GifLoaderDialogUtils.hideDialog(context); - if(widget.patientSearchViewModel.state == ViewState.ErrorLocal) { - Helpers.showErrorToast(widget.patientSearchViewModel.error); - }else { - Navigator.of(context).pop(); - } + PatientSearchRequestModel currentModel = + PatientSearchRequestModel(); + currentModel.to = dateTo; + currentModel.from = dateFrom; + GifLoaderDialogUtils.showMyDialog(context); + await widget.patientSearchViewModel + .getOutPatient(currentModel, isLocalBusy: true); + GifLoaderDialogUtils.hideDialog(context); + if (widget.patientSearchViewModel.state == + ViewState.ErrorLocal) { + Helpers.showErrorToast( + widget.patientSearchViewModel.error); + } else { + Navigator.of(context).pop(); + } + } } }, ),