diff --git a/Frontend/lib/mih_packages/patient_profile/pat_profile/package_tools/patient_info.dart b/Frontend/lib/mih_packages/patient_profile/pat_profile/package_tools/patient_info.dart index 320b3fd6..0f817e90 100644 --- a/Frontend/lib/mih_packages/patient_profile/pat_profile/package_tools/patient_info.dart +++ b/Frontend/lib/mih_packages/patient_profile/pat_profile/package_tools/patient_info.dart @@ -5,6 +5,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_ import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_package_tool_body.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_floating_menu.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_toggle.dart'; import 'package:mzansi_innovation_hub/mih_objects/app_user.dart'; import 'package:mzansi_innovation_hub/mih_objects/arguments.dart'; import 'package:mzansi_innovation_hub/mih_objects/patients.dart'; @@ -39,8 +40,9 @@ class _PatientInfoState extends State { final medMainMemController = TextEditingController(); final medAidCodeController = TextEditingController(); final _formKey = GlobalKey(); - double textFieldWidth = 500; + double textFieldWidth = 300; late String medAid; + late bool medAidPosition; Widget getPatientDetailsField() { return Center( @@ -146,16 +148,37 @@ class _PatientInfoState extends State { medAidDet.add( SizedBox( width: textFieldWidth, - child: MihTextFormField( - // width: textFieldWidth, - fillColor: MzanziInnovationHub.of(context)!.theme.secondaryColor(), - inputColor: MzanziInnovationHub.of(context)!.theme.primaryColor(), - controller: medAidController, - multiLineInput: false, - requiredText: true, - readOnly: true, + child: MihToggle( hintText: "Medical Aid", + initialPostion: medAidPosition, + fillColor: MzanziInnovationHub.of(context)!.theme.secondaryColor(), + secondaryFillColor: + MzanziInnovationHub.of(context)!.theme.primaryColor(), + readOnly: true, + onChange: (value) { + if (value) { + setState(() { + medAidController.text = "Yes"; + medAidPosition = value; + }); + } else { + setState(() { + medAidController.text = "No"; + medAidPosition = value; + }); + } + }, ), + // MihTextFormField( + // // width: textFieldWidth, + // fillColor: MzanziInnovationHub.of(context)!.theme.secondaryColor(), + // inputColor: MzanziInnovationHub.of(context)!.theme.primaryColor(), + // controller: medAidController, + // multiLineInput: false, + // requiredText: true, + // readOnly: true, + // hintText: "Medical Aid", + // ), ), ); bool req; @@ -216,6 +239,7 @@ class _PatientInfoState extends State { Visibility( visible: req, child: SizedBox( + width: textFieldWidth, child: MihTextFormField( // width: textFieldWidth, fillColor: MzanziInnovationHub.of(context)!.theme.secondaryColor(), @@ -299,6 +323,11 @@ class _PatientInfoState extends State { TextEditingValue(text: widget.selectedPatient.medical_aid_code); medAid = widget.selectedPatient.medical_aid; }); + if (medAid == "Yes") { + medAidPosition = true; + } else { + medAidPosition = false; + } super.initState(); } diff --git a/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_add.dart b/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_add.dart index 4afaabfa..7cebc9a8 100644 --- a/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_add.dart +++ b/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_add.dart @@ -3,7 +3,6 @@ import 'dart:convert'; import 'package:mzansi_innovation_hub/main.dart'; import 'package:mzansi_innovation_hub/mih_apis/mih_alert_services.dart'; import 'package:mzansi_innovation_hub/mih_apis/mih_validation_services.dart'; -import 'package:mzansi_innovation_hub/mih_components/mih_inputs_and_buttons/mih_dropdown_input.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_action.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_body.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_header.dart'; @@ -11,6 +10,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_layout_build import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_button.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_form.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_toggle.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_success_message.dart'; import 'package:mzansi_innovation_hub/mih_env/env.dart'; @@ -46,6 +46,8 @@ class _AddPatientState extends State { final medMainMemController = TextEditingController(); final medAidCodeController = TextEditingController(); + late bool medAidPosition; + late bool medMainMemberPosition; final baseAPI = AppEnviroment.baseApiUrl; late int futureDocOfficeId; //late bool medRequired; @@ -297,13 +299,26 @@ class _AddPatientState extends State { .theme .secondaryColor()), const SizedBox(height: 10.0), - MIHDropdownField( - controller: medAidController, + MihToggle( hintText: "Medical Aid", - editable: true, - required: true, - enableSearch: false, - dropdownOptions: const ["Yes", "No"], + initialPostion: medAidPosition, + fillColor: + MzanziInnovationHub.of(context)!.theme.secondaryColor(), + secondaryFillColor: + MzanziInnovationHub.of(context)!.theme.primaryColor(), + onChange: (value) { + if (value) { + setState(() { + medAidController.text = "Yes"; + medAidPosition = value; + }); + } else { + setState(() { + medAidController.text = "No"; + medAidPosition = value; + }); + } + }, ), ValueListenableBuilder( valueListenable: medRequired, @@ -313,13 +328,28 @@ class _AddPatientState extends State { child: Column( children: [ const SizedBox(height: 10.0), - MIHDropdownField( - controller: medMainMemController, + MihToggle( hintText: "Main Member", - editable: value, - required: value, - enableSearch: false, - dropdownOptions: const ["Yes", "No"], + initialPostion: medMainMemberPosition, + fillColor: MzanziInnovationHub.of(context)! + .theme + .secondaryColor(), + secondaryFillColor: MzanziInnovationHub.of(context)! + .theme + .primaryColor(), + onChange: (value) { + if (value) { + setState(() { + medMainMemController.text = "Yes"; + medMainMemberPosition = value; + }); + } else { + setState(() { + medMainMemController.text = "No"; + medMainMemberPosition = value; + }); + } + }, ), const SizedBox(height: 10.0), MihTextFormField( @@ -520,7 +550,10 @@ class _AddPatientState extends State { fnameController.text = widget.signedInUser.fname; lnameController.text = widget.signedInUser.lname; emailController.text = widget.signedInUser.email; + medAidPosition = false; + medMainMemberPosition = false; medAidController.text = "No"; + medMainMemController.text = "No"; }); super.initState(); } diff --git a/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_edit.dart b/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_edit.dart index 63dd4f86..19e25cee 100644 --- a/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_edit.dart +++ b/Frontend/lib/mih_packages/patient_profile/pat_profile/patient_edit.dart @@ -3,7 +3,6 @@ import 'dart:convert'; import 'package:mzansi_innovation_hub/main.dart'; import 'package:mzansi_innovation_hub/mih_apis/mih_alert_services.dart'; import 'package:mzansi_innovation_hub/mih_apis/mih_validation_services.dart'; -import 'package:mzansi_innovation_hub/mih_components/mih_inputs_and_buttons/mih_dropdown_input.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_action.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_body.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_header.dart'; @@ -11,6 +10,7 @@ import 'package:mzansi_innovation_hub/mih_components/mih_layout/mih_layout_build import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_button.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_form.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_text_form_field.dart'; +import 'package:mzansi_innovation_hub/mih_components/mih_package_components/mih_toggle.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:mzansi_innovation_hub/mih_components/mih_pop_up_messages/mih_success_message.dart'; import 'package:mzansi_innovation_hub/mih_env/env.dart'; @@ -54,6 +54,8 @@ class _EditPatientState extends State { final apiUrlDelete = "${AppEnviroment.baseApiUrl}/patients/delete/"; final _formKey = GlobalKey(); + late bool medAidPosition; + late bool medMainMemberPosition; late int futureDocOfficeId; late String userEmail; // bool medRequired = false; @@ -511,13 +513,26 @@ class _EditPatientState extends State { .theme .secondaryColor()), const SizedBox(height: 10.0), - MIHDropdownField( - controller: medAidController, + MihToggle( hintText: "Medical Aid", - editable: true, - required: true, - enableSearch: false, - dropdownOptions: const ["Yes", "No"], + initialPostion: medAidPosition, + fillColor: + MzanziInnovationHub.of(context)!.theme.secondaryColor(), + secondaryFillColor: + MzanziInnovationHub.of(context)!.theme.primaryColor(), + onChange: (value) { + if (value) { + setState(() { + medAidController.text = "Yes"; + medAidPosition = value; + }); + } else { + setState(() { + medAidController.text = "No"; + medAidPosition = value; + }); + } + }, ), ValueListenableBuilder( valueListenable: medRequired, @@ -527,13 +542,28 @@ class _EditPatientState extends State { child: Column( children: [ const SizedBox(height: 10.0), - MIHDropdownField( - controller: medMainMemController, + MihToggle( hintText: "Main Member", - editable: value, - required: value, - enableSearch: false, - dropdownOptions: const ["Yes", "No"], + initialPostion: medMainMemberPosition, + fillColor: MzanziInnovationHub.of(context)! + .theme + .secondaryColor(), + secondaryFillColor: MzanziInnovationHub.of(context)! + .theme + .primaryColor(), + onChange: (value) { + if (value) { + setState(() { + medMainMemController.text = "Yes"; + medMainMemberPosition = value; + }); + } else { + setState(() { + medMainMemController.text = "No"; + medMainMemberPosition = value; + }); + } + }, ), const SizedBox(height: 10.0), MihTextFormField( @@ -747,6 +777,18 @@ class _EditPatientState extends State { medAidCodeController.text = widget.selectedPatient.medical_aid_code; }); + if (medAidController.text == "Yes") { + medAidPosition = true; + } else { + medAidPosition = false; + medAidController.text = "No"; + } + if (medMainMemController.text == "Yes") { + medMainMemberPosition = true; + } else { + medMainMemberPosition = false; + medMainMemController.text = "No"; + } super.initState(); }