diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 2f4607e0..878a1850 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -322,4 +322,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: 649616dc336b3659ac6b2b25159d8e488e042b69 -COCOAPODS: 1.10.0.rc.1 +COCOAPODS: 1.10.1 diff --git a/lib/client/base_app_client.dart b/lib/client/base_app_client.dart index faef1fca..d6a72ab6 100644 --- a/lib/client/base_app_client.dart +++ b/lib/client/base_app_client.dart @@ -88,7 +88,6 @@ class BaseAppClient { onFailure(Helpers.generateContactAdminMsg(), statusCode); } else { var parsed = json.decode(response.body.toString()); - if (parsed['ErrorType'] == 4) { helpers.navigateToUpdatePage(parsed['ErrorEndUserMessage'], parsed['AndroidLink'], parsed['IOSLink']); @@ -99,7 +98,7 @@ class BaseAppClient { onFailure(getError(parsed), statusCode); } else if (!isAllowAny) { await Helpers.logout(); - Helpers.showErrorToast('Your session expired Please login agian'); + Helpers.showErrorToast('Your session expired Please login again'); } if (isAllowAny) { onFailure(getError(parsed), statusCode); diff --git a/lib/config/localized_values.dart b/lib/config/localized_values.dart index 5d2b2de8..d09d33f4 100644 --- a/lib/config/localized_values.dart +++ b/lib/config/localized_values.dart @@ -47,7 +47,7 @@ const Map> localizedValues = { 'radiology': {'en': 'Radiology', 'ar': 'الأشعة'}, 'service': {'en': 'Service', 'ar': 'خدمة'}, 'referral': {'en': 'Referral', 'ar': 'الإحالة'}, - 'inPatient': {'en': 'My InPatients', 'ar': 'مرضاي'}, + 'inPatient': {'en': 'InPatients', 'ar': 'مرضاي'}, 'inPatientLabel': {'en': 'InPatients', 'ar': 'المريض الداخلي'}, 'inPatientAll': {'en': 'All InPatients', 'ar': 'كل المرضى'}, 'operations': {'en': 'Operations', 'ar': 'عمليات'}, diff --git a/lib/core/service/DischargedPatientService.dart b/lib/core/service/DischargedPatientService.dart index 2d43afc6..9b54f308 100644 --- a/lib/core/service/DischargedPatientService.dart +++ b/lib/core/service/DischargedPatientService.dart @@ -44,7 +44,7 @@ class DischargedPatientService extends BaseService { Future gtMyDischargeReferralPatient() async { hasError = false; Map body = Map(); - await getDoctorProfile(); + await getDoctorProfile(isGetProfile: true); body['DoctorID'] = doctorProfile.doctorID; body['FirstName'] = "0"; body['MiddleName'] = "0"; diff --git a/lib/screens/home/home_patient_card.dart b/lib/screens/home/home_patient_card.dart index c604fdd7..bdaac7a7 100644 --- a/lib/screens/home/home_patient_card.dart +++ b/lib/screens/home/home_patient_card.dart @@ -48,6 +48,7 @@ class HomePatientCard extends StatelessWidget { Container( child: Column( mainAxisAlignment: MainAxisAlignment.end, + crossAxisAlignment: CrossAxisAlignment.start, children: [ Icon( cardIcon, diff --git a/lib/screens/patients/PatientsInPatientScreen.dart b/lib/screens/patients/PatientsInPatientScreen.dart index 75b65847..e6c28a51 100644 --- a/lib/screens/patients/PatientsInPatientScreen.dart +++ b/lib/screens/patients/PatientsInPatientScreen.dart @@ -107,7 +107,7 @@ class _PatientInPatientScreenState extends State with Si unselectedLabelColor: Colors.grey[800], tabs: [ tabWidget(screenSize, _activeTab == 0, TranslationBase.of(context).inPatientAll, counter: model.inPatientList.length), - tabWidget(screenSize, _activeTab == 1, TranslationBase.of(context).inPatient, counter: model.myIinPatientList.length), + tabWidget(screenSize, _activeTab == 1, "My InPatients", counter: model.myIinPatientList.length), tabWidget(screenSize, _activeTab == 2, TranslationBase.of(context).discharged), ], ), diff --git a/lib/screens/patients/profile/medical_report/MedicalReportPage.dart b/lib/screens/patients/profile/medical_report/MedicalReportPage.dart new file mode 100644 index 00000000..f31c754e --- /dev/null +++ b/lib/screens/patients/profile/medical_report/MedicalReportPage.dart @@ -0,0 +1,8 @@ +import 'package:flutter/cupertino.dart'; + +class MedicalReportPage extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/lib/screens/patients/profile/note/update_note.dart b/lib/screens/patients/profile/note/update_note.dart index 8997dd07..3fde4262 100644 --- a/lib/screens/patients/profile/note/update_note.dart +++ b/lib/screens/patients/profile/note/update_note.dart @@ -173,13 +173,12 @@ class _UpdateNoteOrderState extends State { ), ), bottomSheet: Container( + height: progressNoteController.text.isNotEmpty? 130:70, margin: EdgeInsets.all(SizeConfig.widthMultiplier * 5), - child: Wrap( - alignment: WrapAlignment.center, + child: Column( children: [ - progressNoteController.text.isEmpty - ? SizedBox() - : Container( + if(progressNoteController.text.isNotEmpty) + Container( margin: EdgeInsets.all(5), child: AppButton( title: TranslationBase.of(context).clearText, diff --git a/lib/screens/patients/profile/referral/AddReplayOnReferralPatient.dart b/lib/screens/patients/profile/referral/AddReplayOnReferralPatient.dart index 06f426d1..0626e3e8 100644 --- a/lib/screens/patients/profile/referral/AddReplayOnReferralPatient.dart +++ b/lib/screens/patients/profile/referral/AddReplayOnReferralPatient.dart @@ -22,7 +22,7 @@ import 'package:speech_to_text/speech_to_text.dart' as stt; class AddReplayOnReferralPatient extends StatefulWidget { final PatientReferralViewModel patientReferralViewModel; final MyReferralPatientModel myReferralInPatientModel; - //TODO Jammal + const AddReplayOnReferralPatient( {Key key, this.patientReferralViewModel, this.myReferralInPatientModel}) : super(key: key); @@ -38,7 +38,7 @@ class _AddReplayOnReferralPatientState stt.SpeechToText speech = stt.SpeechToText(); var reconizedWord; var event = RobotProvider(); - TextEditingController progressNoteController = TextEditingController(); + TextEditingController replayOnReferralController = TextEditingController(); @override void initState() { requestPermissions(); @@ -71,12 +71,12 @@ class _AddReplayOnReferralPatientState children: [ AppTextFieldCustom( hintText: 'Replay your responses here', - controller: progressNoteController, + controller: replayOnReferralController, maxLines: 35, minLines: 25, hasBorder: true, validationError: - progressNoteController.text.isEmpty && + replayOnReferralController.text.isEmpty && isSubmitted ? TranslationBase.of(context).emptyMessage : null, @@ -107,11 +107,11 @@ class _AddReplayOnReferralPatientState ), ), bottomSheet: Container( + height: replayOnReferralController.text.isNotEmpty? 130:70, margin: EdgeInsets.all(SizeConfig.widthMultiplier * 5), - child: Wrap( - alignment: WrapAlignment.center, + child: Column( children: [ - progressNoteController.text.isEmpty + replayOnReferralController.text.isEmpty ? SizedBox() : Container( margin: EdgeInsets.all(5), @@ -120,7 +120,7 @@ class _AddReplayOnReferralPatientState title: TranslationBase.of(context).clearText, onPressed: () { setState(() { - progressNoteController.text = ''; + replayOnReferralController.text = ''; }); }, )), @@ -135,10 +135,10 @@ class _AddReplayOnReferralPatientState setState(() { isSubmitted = true; }); - if (progressNoteController.text.isNotEmpty) { + if (replayOnReferralController.text.isNotEmpty) { GifLoaderDialogUtils.showMyDialog(context); await widget.patientReferralViewModel.replay( - progressNoteController.text.trim(), + replayOnReferralController.text.trim(), widget.myReferralInPatientModel); if (widget.patientReferralViewModel.state == ViewState.ErrorLocal) { @@ -199,7 +199,7 @@ class _AddReplayOnReferralPatientState if (result.finalResult == true) { setState(() { SpeechToText.closeAlertDialog(context); - progressNoteController.text += reconizedWord + '\n'; + replayOnReferralController.text += reconizedWord + '\n'; }); } } diff --git a/lib/screens/prescription/add_prescription_form.dart b/lib/screens/prescription/add_prescription_form.dart index 07bf9d81..fd7c09cf 100644 --- a/lib/screens/prescription/add_prescription_form.dart +++ b/lib/screens/prescription/add_prescription_form.dart @@ -385,8 +385,7 @@ class _PrescriptionFormWidgetState extends State { true; visbiltySearch = false; _selectedMedication = - model.allMedicationList[ - index]; + model.allMedicationList[index]; uom = _selectedMedication .uom; }, @@ -406,6 +405,8 @@ class _PrescriptionFormWidgetState extends State { child: Container( child: Column( children: [ + + AppText(_selectedMedication?.description??"",bold: true,), Container( child: Row( children: [ @@ -435,10 +436,7 @@ class _PrescriptionFormWidgetState extends State { child: Row( children: [ Container( - width: MediaQuery.of(context) - .size - .width * - 0.550, + width: MediaQuery.of(context).size.width * 0.35, child: TextFields( inputFormatters: [ LengthLimitingTextInputFormatter( @@ -447,9 +445,7 @@ class _PrescriptionFormWidgetState extends State { // .digitsOnly ], hintText: - TranslationBase.of( - context) - .strength, + TranslationBase.of(context).strength, controller: strengthController, keyboardType: TextInputType @@ -513,7 +509,7 @@ class _PrescriptionFormWidgetState extends State { width: MediaQuery.of(context) .size .width * - 0.350, + 0.450, child: InkWell( onTap: model.itemMedicineListUnit != @@ -560,21 +556,11 @@ class _PrescriptionFormWidgetState extends State { : null, child: TextField( decoration: - textFieldSelectorDecoration( - TranslationBase.of( - context) - .unit, - model.itemMedicineListUnit - .length == - 1 - ? model.itemMedicineListUnit[ - 0][ - 'description'] - : units != - null - ? units[ - 'description'] - : null, + textFieldSelectorDecoration('Select', + + model.itemMedicineListUnit.length == 1 + ? units = model.itemMedicineListUnit[0]['description'] + : units != null ? units['description'].toString() : null, true), enabled: false), ), @@ -640,10 +626,16 @@ class _PrescriptionFormWidgetState extends State { TranslationBase.of( context) .route, - route != null - ? route[ - 'description'] - : null, + model.itemMedicineListRoute + .length == + 1 + ? model.itemMedicineListRoute[ + 0] + ['description'] + : route != null + ? route[ + 'description'] + : null, true), enabled: false, ), @@ -725,10 +717,16 @@ class _PrescriptionFormWidgetState extends State { TranslationBase.of( context) .frequency, - frequency != null - ? frequency[ - 'description'] - : null, + model.itemMedicineList + .length == + 1 + ? model.itemMedicineList[ + 0] + ['description'] + : frequency != null + ? frequency[ + 'description'] + : null, true), enabled: false, ), @@ -1138,12 +1136,13 @@ class _PrescriptionFormWidgetState extends State { formKey.currentState.save(); // Navigator.pop(context); // openDrugToDrug(); - if (route == null || - frequency == null || + if (frequency == null || + strengthController + .text == + "" || doseTime == null || duration == null || - selectedDate == null || - units == null) { + selectedDate == null) { DrAppToastMsg.showErrorToast( TranslationBase.of( context) @@ -1206,27 +1205,48 @@ class _PrescriptionFormWidgetState extends State { // // .trim()) // // .toList() // // .join(' '), - // dose: - // strengthController - // .text, - // doseUnit: units[ - // 'parameterCode'] - // .toString(), - // patient: - // widget.patient, + // dose: strengthController + // .text, + // doseUnit: model + // .itemMedicineListUnit + // .length == + // 1 + // ? model + // .itemMedicineListUnit[ + // 0][ + // 'parameterCode'] + // .toString() + // : units['parameterCode'] + // .toString(), + // patient: widget.patient, // doseTimeIn: // doseTime['id'] // .toString(), // model: widget.model, - // duration: - // duration['id'] - // .toString(), - // frequency: frequency[ - // 'parameterCode'] - // .toString(), - // route: route[ - // 'parameterCode'] + // duration: duration['id'] // .toString(), + // frequency: model + // .itemMedicineList + // .length == + // 1 + // ? model + // .itemMedicineList[ + // 0][ + // 'parameterCode'] + // .toString() + // : frequency[ + // 'parameterCode'] + // .toString(), + // route: model.itemMedicineListRoute + // .length == + // 1 + // ? model + // .itemMedicineListRoute[ + // 0][ + // 'parameterCode'] + // .toString() + // : route['parameterCode'] + // .toString(), // drugId: // _selectedMedication // .itemId @@ -1240,8 +1260,7 @@ class _PrescriptionFormWidgetState extends State { // instruction: // instructionController // .text, - // doseTime: - // selectedDate, + // doseTime: selectedDate, // ); } } @@ -1350,7 +1369,7 @@ class _PrescriptionFormWidgetState extends State { children: [ DrugToDrug( widget.patient, - getPriscriptionforDrug(widget.prescriptionList), + getPriscriptionforDrug(widget.prescriptionList, model), model.patientAssessmentList), Container( margin: EdgeInsets.all(SizeConfig.widthMultiplier * 3), @@ -1382,8 +1401,12 @@ class _PrescriptionFormWidgetState extends State { doseTimeIn: doseTime['id'].toString(), model: widget.model, duration: duration['id'].toString(), - frequency: frequency['parameterCode'].toString(), - route: route['parameterCode'].toString(), + frequency: model.itemMedicineList.length == 1 + ? model.itemMedicineList[0]['parameterCode'] + : frequency['parameterCode'].toString(), + route: model.itemMedicineListRoute.length == 1 + ? model.itemMedicineListRoute[0]['parameterCode'] + : route['parameterCode'].toString(), drugId: _selectedMedication.itemId.toString(), strength: strengthController.text, indication: indicationController.text, @@ -1431,7 +1454,17 @@ class _PrescriptionFormWidgetState extends State { }); } - getPriscriptionforDrug(List prescriptionList) { + // selectedValue(itemMdeicationList,key){ + // // String selected = ""; + // // units[key]=itemMdeicationList.length==1? itemMdeicationList[0][key]:units[key].toString(); + // // + // // selected = units[key]; + // // + // // return selected; + // // } + + getPriscriptionforDrug( + List prescriptionList, MedicineViewModel model) { var prescriptionDetails = []; if (prescriptionList.length > 0) { prescriptionList[0].entityList.forEach((element) { @@ -1455,11 +1488,19 @@ class _PrescriptionFormWidgetState extends State { 'DrugId': _selectedMedication.mediSpanGPICode, 'DrugName': _selectedMedication.description, 'Dose': strengthController.text, - 'DoseType': units['parameterCode'].toString(), - 'Unit': units['description'], - 'FrequencyType': frequency['parameterCode'].toString(), + 'DoseType': model.itemMedicineListUnit.length == 1 + ? model.itemMedicineListUnit[0]['parameterCode'].toString() + : units['parameterCode'].toString(), + 'Unit': model.itemMedicineListUnit.length == 1 + ? model.itemMedicineListUnit[0]['description'] + : units['description'], + 'FrequencyType': model.itemMedicineList.length == 1 + ? model.itemMedicineList[0]['parameterCode'] + : frequency['parameterCode'].toString(), 'Duration': duration['id'].toString(), - 'RouteID': route['parameterCode'].toString(), + 'RouteID': model.itemMedicineListRoute.length == 1 + ? model.itemMedicineListRoute[0]['parameterCode'].toString() + : route['parameterCode'].toString(), 'IsScreen': true }); } diff --git a/lib/widgets/dashboard/activity_button.dart b/lib/widgets/dashboard/activity_button.dart index b925870f..e9001e41 100644 --- a/lib/widgets/dashboard/activity_button.dart +++ b/lib/widgets/dashboard/activity_button.dart @@ -10,7 +10,7 @@ class GetActivityButton extends StatelessWidget { width: 120, padding: EdgeInsets.all(5), margin: EdgeInsets.all(5), - height: 120, + height: 130, decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.circular(20), @@ -22,7 +22,7 @@ class GetActivityButton extends StatelessWidget { Padding( padding: EdgeInsets.all(8), child: AppText(value.value.toString(), - fontSize: 28, fontWeight: FontWeight.bold)), + fontSize: 30, fontWeight: FontWeight.bold)), Expanded( child: AppText( value.kPIParameter, diff --git a/lib/widgets/patients/profile/patient-profile-header-new-design-app-bar.dart b/lib/widgets/patients/profile/patient-profile-header-new-design-app-bar.dart index 3d7638c2..d5c43892 100644 --- a/lib/widgets/patients/profile/patient-profile-header-new-design-app-bar.dart +++ b/lib/widgets/patients/profile/patient-profile-header-new-design-app-bar.dart @@ -303,7 +303,7 @@ class PatientProfileHeaderNewDesignAppBar extends StatelessWidget "${TranslationBase.of(context).numOfDays}: ", fontSize: 15, ), - if(isDischargedPatient) + if(isDischargedPatient && patient.dischargeDate!=null) AppText( "${DateUtils.getDateTimeFromServerFormat(patient.dischargeDate).difference(DateUtils.getDateTimeFromServerFormat(patient.admissionDate)).inDays + 1}", fontSize: 15, diff --git a/pubspec.lock b/pubspec.lock index ee31002d..1a572a0a 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -573,7 +573,7 @@ packages: name: js url: "https://pub.dartlang.org" source: hosted - version: "0.6.2" + version: "0.6.3-nullsafety.1" json_annotation: dependency: transitive description: @@ -615,7 +615,7 @@ packages: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.3.0-nullsafety.3" + version: "1.3.0-nullsafety.4" mime: dependency: transitive description: @@ -907,7 +907,7 @@ packages: name: stack_trace url: "https://pub.dartlang.org" source: hosted - version: "1.10.0-nullsafety.1" + version: "1.10.0-nullsafety.2" sticky_headers: dependency: "direct main" description: @@ -1098,5 +1098,5 @@ packages: source: hosted version: "2.2.1" sdks: - dart: ">=2.10.0 <2.11.0" + dart: ">=2.10.0 <=2.11.0-213.1.beta" flutter: ">=1.22.0 <2.0.0"