diff --git a/lib/screens/procedures/add_procedure_page.dart b/lib/screens/procedures/add_procedure_page.dart index 6e174f71..a82eaafa 100644 --- a/lib/screens/procedures/add_procedure_page.dart +++ b/lib/screens/procedures/add_procedure_page.dart @@ -1,8 +1,7 @@ -import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/core/enum/view_state.dart'; +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; -import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/procedures/procedure_type.dart'; import 'package:doctor_app_flutter/utils/dr_app_toast_msg.dart'; @@ -10,12 +9,11 @@ import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/widgets/bottom_sheet/custom_bottom_sheet_container.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/buttons/app_buttons_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; import 'package:doctor_app_flutter/widgets/shared/text_fields/app-textfield-custom.dart'; import 'package:flutter/material.dart'; -import '../../config/config.dart'; + import 'entity_list_checkbox_search_widget.dart'; class AddProcedurePage extends StatefulWidget { @@ -123,30 +121,25 @@ class _AddProcedurePageState extends State { onTap: () async { if (procedureName.text.isNotEmpty && procedureName.text.length >= 3) { - GifLoaderDialogUtils.showMyDialog(context); + GifLoaderDialogUtils.showMyDialog( + context); await model.getProcedureCategory( patientId: patient.patientId, - categoryName: - procedureName.text, - isLocalBusy: true - ); - if(model.state == ViewState.ErrorLocal){ + categoryName: procedureName.text, + isLocalBusy: true); + if (model.state == + ViewState.ErrorLocal) { DrAppToastMsg.showErrorToast( - model.error - ); - + model.error); } - GifLoaderDialogUtils.hideDialog(context); - - } - - else { + GifLoaderDialogUtils.hideDialog( + context); + } else { DrAppToastMsg.showErrorToast( TranslationBase.of(context) .atLeastThreeCharacters, ); } - }, child: Icon( Icons.search, @@ -166,8 +159,7 @@ class _AddProcedurePageState extends State { baseViewModel: model, child: EntityListCheckboxSearchWidget( model: widget.model, - masterList: - model.categoriesList[0].entityList, + masterList: model.categoriesList[0].entityList, removeProcedure: (item) { setState(() { entityList.remove(item); @@ -178,12 +170,13 @@ class _AddProcedurePageState extends State { entityList.add(history); }); }, - addSelectedHistories: () { - }, - isEntityListSelected: (master) => - widget.model.isEntityListSelected(master,entityList), + addSelectedHistories: () {}, + isEntityListSelected: (master) => widget.model + .isEntityListSelected(master, entityList), )), - SizedBox(height: 10,) + SizedBox( + height: 10, + ) ], ), ), @@ -192,32 +185,35 @@ class _AddProcedurePageState extends State { ], ), ), - bottomSheet: model.state == ViewState.BusyLocal? Container(height: 0,):CustomBottomSheetContainer( - label: procedureType.getAddButtonTitle(context), - onTap: () async { - { - GifLoaderDialogUtils.showMyDialog(context); - if (entityList.isEmpty == true) { - DrAppToastMsg.showErrorToast( - TranslationBase.of(context) - .fillTheMandatoryProcedureDetails, + bottomSheet: model.state == ViewState.BusyLocal + ? Container( + height: 0, + ) + : CustomBottomSheetContainer( + label: procedureType.getAddButtonTitle(context), + onTap: () async { + { + GifLoaderDialogUtils.showMyDialog(context); + if (entityList.isEmpty == true) { + DrAppToastMsg.showErrorToast( + TranslationBase.of(context) + .fillTheMandatoryProcedureDetails, + ); + GifLoaderDialogUtils.hideDialog(context); + return; + } + GifLoaderDialogUtils.showMyDialog(context); + await model.preparePostProcedure( + orderType: selectedType.toString(), + entityList: entityList, + patient: patient, + remarks: remarksController.text, + procedureType: ProcedureType.PROCEDURE, + isLocalBusy: true, ); GifLoaderDialogUtils.hideDialog(context); - return; } - GifLoaderDialogUtils.showMyDialog(context); - await model.preparePostProcedure( - orderType: selectedType.toString(), - entityList: entityList, - patient: patient, - remarks: remarksController.text, - procedureType: ProcedureType.PROCEDURE, - isLocalBusy: true, - ); - GifLoaderDialogUtils.hideDialog(context); - } - } - ), + }), ), ); } diff --git a/lib/screens/procedures/base_add_procedure_tab_page.dart b/lib/screens/procedures/base_add_procedure_tab_page.dart index 76b98849..ef36fb97 100644 --- a/lib/screens/procedures/base_add_procedure_tab_page.dart +++ b/lib/screens/procedures/base_add_procedure_tab_page.dart @@ -1,18 +1,17 @@ +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/viewModel/prescription/prescription_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; -import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/patients/profile/soap_update/shared_soap_widgets/bottom_sheet_title.dart'; import 'package:doctor_app_flutter/screens/prescription/add_prescription/add_prescription.dart'; -import 'package:doctor_app_flutter/screens/procedures/favorite_procedure/add_favourite_procedure.dart'; import 'package:doctor_app_flutter/screens/procedures/add_procedure_page.dart'; +import 'package:doctor_app_flutter/screens/procedures/favorite_procedure/add_favourite_procedure.dart'; import 'package:doctor_app_flutter/screens/procedures/procedure_type.dart'; import 'package:doctor_app_flutter/screens/procedures/tab_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; import 'package:flutter/material.dart'; - class BaseAddProcedureTabPage extends StatefulWidget { final ProcedureViewModel previousProcedureViewModel; final PrescriptionViewModel prescriptionModel; @@ -67,24 +66,25 @@ class _BaseAddProcedureTabPageState extends State return BaseView( onModelReady: (model) async { - if(widget.previousProcedureViewModel == null) { + if (widget.previousProcedureViewModel == null) { await model.getProcedureTemplate( categoryID: widget.procedureType.getCategoryId()); } - }, builder: (BuildContext context, ProcedureViewModel model, Widget child) => AppScaffold( - baseViewModel: model, - isShowAppBar: true, - appBar: BottomSheetTitle(title: procedureType.getToolbarLabel(context),), - body: NetworkBaseView( + baseViewModel: model, + isShowAppBar: true, + appBar: BottomSheetTitle( + title: procedureType.getToolbarLabel(context), + ), + body: NetworkBaseView( baseViewModel: model, child: Scaffold( extendBodyBehindAppBar: true, appBar: PreferredSize( - preferredSize: Size.fromHeight( - MediaQuery.of(context).size.height * 0.070), + preferredSize: + Size.fromHeight(MediaQuery.of(context).size.height * 0.070), child: TabBar( isScrollable: false, controller: _tabController, @@ -92,24 +92,16 @@ class _BaseAddProcedureTabPageState extends State indicatorWeight: 1.0, indicatorSize: TabBarIndicatorSize.tab, labelColor: Theme.of(context).primaryColor, - labelPadding: EdgeInsets.only( - top: 0, left: 0, right: 0, bottom: 0), + labelPadding: + EdgeInsets.only(top: 0, left: 0, right: 0, bottom: 0), unselectedLabelColor: Colors.grey[800], tabs: [ - TabWidget.tabWidget( - screenSize, - _activeTab == 0, - - procedureType - .getFavouriteTabName(context), - isFirst: true,context: context - ), - TabWidget.tabWidget( - screenSize, - _activeTab == 1, + TabWidget.tabWidget(screenSize, _activeTab == 0, + procedureType.getFavouriteTabName(context), + isFirst: true, context: context), + TabWidget.tabWidget(screenSize, _activeTab == 1, procedureType.getAllLabelName(context), - isLast: true,context: context - ), + isLast: true, context: context), ], ), ), @@ -121,14 +113,13 @@ class _BaseAddProcedureTabPageState extends State controller: _tabController, children: [ AddFavouriteProcedure( - previousProcedureViewModel: widget.previousProcedureViewModel??model, - prescriptionModel: - widget.prescriptionModel, + previousProcedureViewModel: + widget.previousProcedureViewModel ?? model, + prescriptionModel: widget.prescriptionModel, patient: patient, procedureType: procedureType, ), - if (widget.procedureType == - ProcedureType.PRESCRIPTION) + if (widget.procedureType == ProcedureType.PRESCRIPTION) AddPrescription( widget.prescriptionModel, widget.patient, @@ -145,8 +136,7 @@ class _BaseAddProcedureTabPageState extends State ), ], ), - ) - ), + )), ), ); } diff --git a/lib/screens/procedures/entity_list_checkbox_search_widget.dart b/lib/screens/procedures/entity_list_checkbox_search_widget.dart index 332300c2..b5a798fe 100644 --- a/lib/screens/procedures/entity_list_checkbox_search_widget.dart +++ b/lib/screens/procedures/entity_list_checkbox_search_widget.dart @@ -1,13 +1,14 @@ import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; -import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/divider_with_spaces_around.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; +import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.dart'; import 'package:eva_icons_flutter/eva_icons_flutter.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; + import '../../config/config.dart'; class EntityListCheckboxSearchWidget extends StatefulWidget { @@ -18,16 +19,15 @@ class EntityListCheckboxSearchWidget extends StatefulWidget { final bool Function(EntityList) isEntityListSelected; final List masterList; - EntityListCheckboxSearchWidget( - {Key key, - this.model, - this.addSelectedHistories, - this.removeProcedure, - this.masterList, - this.addProcedure, - this.isEntityListSelected, - }) - : super(key: key); + EntityListCheckboxSearchWidget({ + Key key, + this.model, + this.addSelectedHistories, + this.removeProcedure, + this.masterList, + this.addProcedure, + this.isEntityListSelected, + }) : super(key: key); @override _EntityListCheckboxSearchWidgetState createState() => @@ -80,7 +80,8 @@ class _EntityListCheckboxSearchWidgetState suffixIcon: EvaIcons.search, suffixIconColor: Color(0xff2B353E), onChanged: (value) { - widget.model.filterSearchResults(value, widget.masterList, items); + widget.model.filterSearchResults( + value, widget.masterList, items); }, hasBorder: false, ), @@ -106,8 +107,8 @@ class _EntityListCheckboxSearchWidgetState widget.removeProcedure( historyInfo); } else { - widget - .addProcedure(historyInfo); + widget.addProcedure( + historyInfo); } }); }), diff --git a/lib/screens/procedures/expansion_procedure.dart b/lib/screens/procedures/expansion_procedure.dart index d7b2eb2a..d48ab586 100644 --- a/lib/screens/procedures/expansion_procedure.dart +++ b/lib/screens/procedures/expansion_procedure.dart @@ -64,8 +64,8 @@ class _ExpansionProcedureState extends State { children: [ Expanded( child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ + crossAxisAlignment: CrossAxisAlignment.start, + children: [ Icon( Icons.folder, size: 20, @@ -76,17 +76,16 @@ class _ExpansionProcedureState extends State { padding: const EdgeInsets.symmetric( horizontal: 10, vertical: 0), child: AppText( - widget.isProcedure == true - ? "Procedures for " + - widget.procedureTempleteModel.templateName - : "Prescription for " + - widget.procedureTempleteModel.templateName, - letterSpacing: -0.72, - fontSize: 16.0, - color: AppGlobal.appTextColor, - fontWeight: FontWeight.w600, + widget.isProcedure == true + ? "Procedures for " + + widget.procedureTempleteModel.templateName + : "Prescription for " + + widget.procedureTempleteModel.templateName, + letterSpacing: -0.72, + fontSize: 16.0, + color: AppGlobal.appTextColor, + fontWeight: FontWeight.w600, ), - ), ), ], @@ -176,12 +175,13 @@ class _ExpansionProcedureState extends State { padding: const EdgeInsets.symmetric( horizontal: 10, vertical: 0), child: AppText( - Utils.convertToTitleCase(itemProcedure.procedureName), - fontSize: 14.0, - variant: "bodyText", - bold: true, - color: Color(0xff575757), - fontFamily: 'Poppins-Bold.ttf', + Utils.convertToTitleCase( + itemProcedure.procedureName), + fontSize: 14.0, + variant: "bodyText", + bold: true, + color: Color(0xff575757), + fontFamily: 'Poppins-Bold.ttf', ), ), ), diff --git a/lib/screens/procedures/favorite_procedure/add_favourite_procedure.dart b/lib/screens/procedures/favorite_procedure/add_favourite_procedure.dart index 86f1b801..ad689e93 100644 --- a/lib/screens/procedures/favorite_procedure/add_favourite_procedure.dart +++ b/lib/screens/procedures/favorite_procedure/add_favourite_procedure.dart @@ -1,7 +1,7 @@ +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/model/procedure/procedure_template_details_model.dart'; import 'package:doctor_app_flutter/core/viewModel/prescription/prescription_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; -import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/prescription/prescription_checkout_screen.dart'; import 'package:doctor_app_flutter/screens/procedures/favorite_procedure/entity_list_fav_procedure.dart'; @@ -66,7 +66,8 @@ class _AddFavouriteProcedureState extends State { }); }, isEntityFavListSelected: (master) => - procedureViewModel.isProcedureEntityListSelected(master, entityList), + procedureViewModel.isProcedureEntityListSelected( + master, entityList), groupProcedures: groupProcedures, selectProcedures: (selectedProcedure) { setState(() { @@ -116,7 +117,8 @@ class _AddFavouriteProcedureState extends State { MaterialPageRoute( builder: (context) => ProcedureCheckOutScreen( items: entityList, - previousProcedureViewModel: widget.previousProcedureViewModel, + previousProcedureViewModel: + widget.previousProcedureViewModel, patient: widget.patient, addButtonTitle: widget.procedureType .getAddButtonTitle(context), diff --git a/lib/screens/procedures/favorite_procedure/entity_list_fav_procedure.dart b/lib/screens/procedures/favorite_procedure/entity_list_fav_procedure.dart index 6598008b..3b6537ff 100644 --- a/lib/screens/procedures/favorite_procedure/entity_list_fav_procedure.dart +++ b/lib/screens/procedures/favorite_procedure/entity_list_fav_procedure.dart @@ -8,6 +8,7 @@ import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; + import '../../../config/config.dart'; import '../../../widgets/shared/text_fields/app_text_field_custom_serach.dart'; @@ -76,7 +77,6 @@ class _EntityListCheckboxSearchFavProceduresWidgetState TextEditingController remarksController = TextEditingController(); TextEditingController patientFileInfoController = TextEditingController(); - @override Widget build(BuildContext context) { return SingleChildScrollView( @@ -88,19 +88,18 @@ class _EntityListCheckboxSearchFavProceduresWidgetState child: Container( margin: EdgeInsets.only(top: 15), decoration: BoxDecoration( - borderRadius: BorderRadius.circular(8), - color: Colors.white), + borderRadius: BorderRadius.circular(8), color: Colors.white), child: ListView( children: [ AppTextFieldCustomSearch( searchController: patientFileInfoController, onChangeFun: (value) { - widget.model.filterProcedureSearchResults(value, widget.masterList, items); + widget.model.filterProcedureSearchResults( + value, widget.masterList, items); }, marginTop: 5, inputFormatters: [ - FilteringTextInputFormatter.allow( - RegExp(ONLY_LETTERS)) + FilteringTextInputFormatter.allow(RegExp(ONLY_LETTERS)) ], inputType: TextInputType.text, hintText: TranslationBase.of(context).searchFavoriteTemplate, @@ -110,16 +109,14 @@ class _EntityListCheckboxSearchFavProceduresWidgetState ), widget.model.templateList.length != 0 ? Column( - children: - widget.model.templateList.map((historyInfo) { + children: widget.model.templateList.map((historyInfo) { return ExpansionProcedure( procedureTempleteModel: historyInfo, model: widget.model, removeFavProcedure: widget.removeFavProcedure, addFavProcedure: widget.addFavProcedure, selectProcedures: widget.selectProcedures, - isEntityListSelected: - widget.isEntityListSelected, + isEntityListSelected: widget.isEntityListSelected, isEntityFavListSelected: widget.isEntityFavListSelected, isProcedure: widget.isProcedure, diff --git a/lib/screens/procedures/favorite_procedure/procedure_checkout_screen.dart b/lib/screens/procedures/favorite_procedure/procedure_checkout_screen.dart index eb96aeb6..fa1f880d 100644 --- a/lib/screens/procedures/favorite_procedure/procedure_checkout_screen.dart +++ b/lib/screens/procedures/favorite_procedure/procedure_checkout_screen.dart @@ -1,24 +1,24 @@ import 'package:doctor_app_flutter/config/size_config.dart'; -import 'package:doctor_app_flutter/core/enum/view_state.dart'; +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/model/procedure/procedure_template_details_model.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; -import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/patients/patient_search/patient_search_header.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/utils/utils.dart'; -import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart'; -import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.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/buttons/app_buttons_widget.dart'; +import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart'; +import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; + import '../../../config/config.dart'; class ProcedureCheckOutScreen extends StatefulWidget { final List items; - final ProcedureViewModel previousProcedureViewModel; + final ProcedureViewModel previousProcedureViewModel; final PatiantInformtion patient; final String addButtonTitle; final String toolbarTitle; @@ -48,8 +48,8 @@ class _ProcedureCheckOutScreenState extends State { backgroundColor: Color(0xffF8F8F8).withOpacity(0.9), isShowAppBar: true, appBar: PatientSearchHeader( - title: widget.toolbarTitle ?? 'Add Procedure', - ), + title: widget.toolbarTitle ?? 'Add Procedure', + ), body: SingleChildScrollView( child: Center( child: FractionallySizedBox( @@ -63,10 +63,11 @@ class _ProcedureCheckOutScreenState extends State { scrollDirection: Axis.vertical, itemCount: widget.items.length, physics: BouncingScrollPhysics(), - shrinkWrap: true, itemBuilder: (BuildContext ctxt, int index) { - final TextEditingController remarksControllerNew = TextEditingController(text: widget.items[index].remarks); + final TextEditingController remarksControllerNew = + TextEditingController( + text: widget.items[index].remarks); return Container( margin: EdgeInsets.only(bottom: 15.0), @@ -78,11 +79,13 @@ class _ProcedureCheckOutScreenState extends State { initiallyExpanded: true, title: Row( children: [ - Expanded( - child: - AppText(Utils.convertToTitleCase(widget.items[index].procedureName), fontWeight: FontWeight.w700,color: AppGlobal.appTextColor, - )), + child: AppText( + Utils.convertToTitleCase( + widget.items[index].procedureName), + fontWeight: FontWeight.w700, + color: AppGlobal.appTextColor, + )), ], ), children: [ @@ -90,7 +93,8 @@ class _ProcedureCheckOutScreenState extends State { child: Padding( padding: EdgeInsets.symmetric(horizontal: 12), child: Column( - crossAxisAlignment: CrossAxisAlignment.start, + crossAxisAlignment: + CrossAxisAlignment.start, children: [ Row( children: [ @@ -98,7 +102,8 @@ class _ProcedureCheckOutScreenState extends State { padding: const EdgeInsets.symmetric( horizontal: 11), child: AppText( - TranslationBase.of(context).orderType, + TranslationBase.of(context) + .orderType, fontWeight: FontWeight.w700, color: Color(0xff2B353E), ), @@ -110,10 +115,11 @@ class _ProcedureCheckOutScreenState extends State { Radio( activeColor: Color(0xFFD02127), value: 0, - groupValue: - widget.items[index].selectedType, + groupValue: widget + .items[index].selectedType, onChanged: (value) { - widget.items[index].selectedType = 0; + widget.items[index].selectedType = + 0; setState(() { widget.items[index].type = value.toString(); @@ -127,11 +133,12 @@ class _ProcedureCheckOutScreenState extends State { ), Radio( activeColor: Color(0xFFD02127), - groupValue: - widget.items[index].selectedType, + groupValue: widget + .items[index].selectedType, value: 1, onChanged: (value) { - widget.items[index].selectedType = 1; + widget.items[index].selectedType = + 1; setState(() { widget.items[index].type = value.toString(); @@ -175,7 +182,6 @@ class _ProcedureCheckOutScreenState extends State { ), ); }), - SizedBox( height: 90, ), @@ -196,7 +202,12 @@ class _ProcedureCheckOutScreenState extends State { fontWeight: FontWeight.w700, onPressed: () async { GifLoaderDialogUtils.showMyDialog(context); - await widget.previousProcedureViewModel.addProcedures(widget.previousProcedureViewModel, widget.items, widget.patient, remarksController, isLocalBusy: true); + await widget.previousProcedureViewModel.addProcedures( + widget.previousProcedureViewModel, + widget.items, + widget.patient, + remarksController, + isLocalBusy: true); GifLoaderDialogUtils.hideDialog(context); }, ), diff --git a/lib/screens/procedures/procedure_card.dart b/lib/screens/procedures/procedure_card.dart index 1a213f9c..9f61d556 100644 --- a/lib/screens/procedures/procedure_card.dart +++ b/lib/screens/procedures/procedure_card.dart @@ -1,12 +1,12 @@ import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/config/size_config.dart'; +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/model/procedure/get_ordered_procedure_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/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/utils/date-utils.dart'; -import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; +import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/user-guid/CusomRow.dart'; import 'package:flutter/cupertino.dart'; @@ -202,9 +202,10 @@ class ProcedureCard extends StatelessWidget { children: [ Expanded( child: AppText( - entityList.remarks!= null?Utils.convertToTitleCase( - entityList.remarks.toString()) : - '', + entityList.remarks != null + ? Utils.convertToTitleCase( + entityList.remarks.toString()) + : '', fontSize: 12, ), ), diff --git a/lib/screens/procedures/procedure_screen.dart b/lib/screens/procedures/procedure_screen.dart index a477e061..76947d00 100644 --- a/lib/screens/procedures/procedure_screen.dart +++ b/lib/screens/procedures/procedure_screen.dart @@ -1,22 +1,22 @@ import 'package:doctor_app_flutter/config/shared_pref_kay.dart'; import 'package:doctor_app_flutter/core/enum/view_state.dart'; -import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; import 'package:doctor_app_flutter/core/model/doctor/doctor_profile_model.dart'; import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; +import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/procedures/procedure_card.dart'; import 'package:doctor_app_flutter/screens/procedures/procedure_type.dart'; import 'package:doctor_app_flutter/screens/procedures/update_procedure.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; import 'package:doctor_app_flutter/utils/utils.dart'; +import 'package:doctor_app_flutter/widgets/patients/patient_service_title.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/add-order/addNewOrder.dart'; import 'package:doctor_app_flutter/widgets/patients/profile/app_bar/patient-profile-app-bar.dart'; -import 'package:doctor_app_flutter/widgets/patients/patient_service_title.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/slide_up_page.dart'; import 'package:flutter/material.dart'; + import '../../widgets/shared/errors/error_message.dart'; import 'base_add_procedure_tab_page.dart'; @@ -59,8 +59,9 @@ class ProcedureScreen extends StatelessWidget { height: 12, ), if ((model.procedureList.length == 0 && - patient.patientStatusType != 43) || patient.patientStatusType != null && - patient.patientStatusType == 43) + patient.patientStatusType != 43) || + patient.patientStatusType != null && + patient.patientStatusType == 43) ServiceTitle( title: TranslationBase.of(context).orderTestOr, subTitle: TranslationBase.of(context).procedure, @@ -72,7 +73,8 @@ class ProcedureScreen extends StatelessWidget { onTap: () async { GifLoaderDialogUtils.showMyDialog(context); await model.getProcedureTemplate( - categoryID: ProcedureType.PROCEDURE.getCategoryId(), isLocalBusy: true); + categoryID: ProcedureType.PROCEDURE.getCategoryId(), + isLocalBusy: true); GifLoaderDialogUtils.hideDialog(context); Navigator.push( @@ -86,8 +88,7 @@ class ProcedureScreen extends StatelessWidget { settingRoute: 'AddProcedureTabPage'), ); }, - label: TranslationBase.of(context) - .addMoreProcedure, + label: TranslationBase.of(context).addMoreProcedure, ), if (model.procedureList.isNotEmpty) ListView.builder( @@ -95,7 +96,6 @@ class ProcedureScreen extends StatelessWidget { itemCount: model.procedureList[0].rowcount, shrinkWrap: true, physics: BouncingScrollPhysics(), - itemBuilder: (BuildContext ctxt, int index) { return ProcedureCard( categoryID: model diff --git a/lib/screens/procedures/tab_widget.dart b/lib/screens/procedures/tab_widget.dart index 9683c1b4..23d77ea2 100644 --- a/lib/screens/procedures/tab_widget.dart +++ b/lib/screens/procedures/tab_widget.dart @@ -3,19 +3,17 @@ import 'package:doctor_app_flutter/utils/tab_utils.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; - -class TabWidget { +class TabWidget { static Widget tabWidget( - Size screenSize, - bool isActive, - String title, - { - int counter = -1, - bool isFirst = false, - bool isMiddle = false, - bool isLast = false, - context, - }) { + Size screenSize, + bool isActive, + String title, { + int counter = -1, + bool isFirst = false, + bool isMiddle = false, + bool isLast = false, + context, + }) { ProjectViewModel projectViewModel = Provider.of(context); return Center( child: Container( @@ -29,7 +27,6 @@ class TabWidget { child: Row( mainAxisAlignment: MainAxisAlignment.center, children: [ - TabUtils.getTabText(title: title, isActive: isActive), if (counter != -1) TabUtils.getTabCounter(isActive: isActive, counter: counter) diff --git a/lib/screens/procedures/update_procedure.dart b/lib/screens/procedures/update_procedure.dart index 52862163..5e6bc1c5 100644 --- a/lib/screens/procedures/update_procedure.dart +++ b/lib/screens/procedures/update_procedure.dart @@ -1,23 +1,20 @@ import 'package:doctor_app_flutter/config/config.dart'; -import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/core/enum/view_state.dart'; +import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/core/model/procedure/ControlsModel.dart'; import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart'; import 'package:doctor_app_flutter/core/model/procedure/update_procedure_request_model.dart'; import 'package:doctor_app_flutter/core/viewModel/procedure_View_model.dart'; -import 'package:doctor_app_flutter/core/model/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/patients/patient_search/patient_search_header.dart'; import 'package:doctor_app_flutter/utils/dr_app_toast_msg.dart'; -import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/utils/translations_delegate_base_utils.dart'; -import 'package:doctor_app_flutter/widgets/bottom_sheet/bottom_sheet_container.dart'; +import 'package:doctor_app_flutter/utils/utils.dart'; import 'package:doctor_app_flutter/widgets/bottom_sheet/custom_bottom_sheet_container.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; -import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.dart'; 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:doctor_app_flutter/widgets/shared/network_base_view.dart'; +import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart'; +import 'package:doctor_app_flutter/widgets/shared/text_fields/TextFields.dart'; import 'package:flutter/material.dart'; import 'package:hexcolor/hexcolor.dart'; @@ -103,11 +100,9 @@ class _UpdateProcedureWidgetState extends State { builder: (BuildContext context, ProcedureViewModel model, Widget child) => AppScaffold( - isShowAppBar: true, baseViewModel: model, - appBar: PatientSearchHeader( - title: "Update Procedure", - ), + isShowAppBar: true, + appBar: PatientSearchHeader(title: "Update Procedure"), body: SingleChildScrollView( child: Container( height: MediaQuery.of(context).size.height * 0.9, @@ -181,10 +176,10 @@ class _UpdateProcedureWidgetState extends State { bottomSheet: CustomBottomSheetContainer( label: TranslationBase.of(context).updateProcedure.toUpperCase(), onTap: () => updateProcedure( - limetNO: widget.limetNo, + lineItemNo: widget.limetNo, orderNo: widget.orderNo, orderType: selectedType.toString(), - categorieId: widget.categoryId, + categoryId: widget.categoryId, procedureId: widget.procedureId, entityList: entityList, patient: widget.patient, @@ -199,15 +194,15 @@ class _UpdateProcedureWidgetState extends State { updateProcedure( {ProcedureViewModel model, String remarks, - int limetNO, + int lineItemNo, int orderNo, String newProcedureId, - String newCategorieId, + String newCategoryId, List entityList, String orderType, String procedureId, PatiantInformtion patient, - String categorieId}) async { + String categoryId}) async { UpdateProcedureRequestModel updateProcedureReqModel = new UpdateProcedureRequestModel(); List controls = List(); @@ -217,7 +212,7 @@ class _UpdateProcedureWidgetState extends State { updateProcedureReqModel.episodeID = patient.episodeNo; updateProcedureReqModel.patientMRN = patient.patientMRN; - updateProcedureReqModel.lineItemNo = limetNO; + updateProcedureReqModel.lineItemNo = lineItemNo; updateProcedureReqModel.orderNo = orderNo; { @@ -230,22 +225,23 @@ class _UpdateProcedureWidgetState extends State { ); controlsProcedure.procedure = procedureId; - controlsProcedure.category = '0' + categorieId; + controlsProcedure.category = '0' + categoryId; controlsProcedure.controls = controls; } updateProcedureReqModel.procedureDetail = controlsProcedure; - + GifLoaderDialogUtils.showMyDialog(context); await model.updateProcedure( updateProcedureRequestModel: updateProcedureReqModel, mrn: patient.patientMRN); if (model.state == ViewState.ErrorLocal) { Utils.showErrorToast(model.error); - model.getProcedure(mrn: patient.patientMRN); } else if (model.state == ViewState.Idle) { DrAppToastMsg.showSuccesToast('procedure has been updated'); - model.getProcedure(mrn: patient.patientMRN); + await model.getProcedure(mrn: patient.patientMRN, isLocalBusy: true); } + + GifLoaderDialogUtils.hideDialog(context); } }