Merge branch 'in-patient-medication' into 'development'

favorite prescription hot fix

See merge request Cloud_Solution/doctor_app_flutter!836
merge-requests/837/merge
Mohammad Aljammal 4 years ago
commit 6b7fc1bf56

@ -10,6 +10,7 @@ import 'package:doctor_app_flutter/screens/procedures/procedure_checkout_screen.
import 'package:doctor_app_flutter/util/dr_app_toast_msg.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.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/network_base_view.dart';
import 'package:flutter/cupertino.dart';
@ -46,10 +47,8 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
@override
Widget build(BuildContext context) {
return BaseView<ProcedureViewModel>(
onModelReady: (model) =>
model.getProcedureTemplate(categoryID: widget.procedureType.getCategoryId()),
builder: (BuildContext context, ProcedureViewModel model, Widget child) =>
AppScaffold(
onModelReady: (model) => model.getProcedureTemplate(categoryID: widget.procedureType.getCategoryId()),
builder: (BuildContext context, ProcedureViewModel model, Widget child) => AppScaffold(
isShowAppBar: false,
baseViewModel: model,
body: Column(
@ -57,97 +56,100 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
Container(
height: MediaQuery.of(context).size.height * 0.070,
),
if (model.templateList.length != 0)
Expanded(
child: EntityListCheckboxSearchFavProceduresWidget(
isProcedure: !(widget.procedureType == ProcedureType.PRESCRIPTION),
model: model,
removeFavProcedure: (item) {
setState(() {
entityList.remove(item);
});
},
addFavProcedure: (history) {
setState(() {
entityList.add(history);
});
},
isEntityFavListSelected: (master) =>
isEntityListSelected(master),
groupProcedures: groupProcedures,
selectProcedures: (selectedProcedure) {
setState(() {
groupProcedures = selectedProcedure;
});
},
),
),
Container(
margin: EdgeInsets.all(SizeConfig.widthMultiplier * 5),
child: Wrap(
alignment: WrapAlignment.center,
children: <Widget>[
AppButton(
title: widget.procedureType.getAddButtonTitle(context) ??
TranslationBase.of(context).addSelectedProcedures,
color: Color(0xff359846),
fontWeight: FontWeight.w700,
onPressed: () {
if(widget.procedureType == ProcedureType.PRESCRIPTION){
if (groupProcedures == null) {
DrAppToastMsg.showErrorToast(
'Please Select item ',
);
return;
}
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PrescriptionCheckOutScreen(
patient: widget.patient,
model: widget.prescriptionModel,
groupProcedures: groupProcedures,
), settings: RouteSettings(name: 'PrescriptionCheckOutScreen')
),
);
} else {
if (entityList.isEmpty == true) {
DrAppToastMsg.showErrorToast(
TranslationBase.of(context)
.fillTheMandatoryProcedureDetails,
);
return;
}
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => ProcedureCheckOutScreen(
items: entityList,
model: model,
patient: widget.patient,
addButtonTitle: widget.procedureType.getAddButtonTitle(context),
toolbarTitle: widget.procedureType.getToolbarLabel(context),
), settings: RouteSettings(name: 'ProcedureCheckOutScreen')
),
);
}
},
(model.templateList.length != 0)
? Expanded(
child: EntityListCheckboxSearchFavProceduresWidget(
isProcedure: !(widget.procedureType == ProcedureType.PRESCRIPTION),
model: model,
removeFavProcedure: (item) {
setState(() {
entityList.remove(item);
});
},
addFavProcedure: (history) {
setState(() {
entityList.add(history);
});
},
isEntityFavListSelected: (master) => isEntityListSelected(master),
groupProcedures: groupProcedures,
selectProcedures: (selectedProcedure) {
setState(() {
groupProcedures = selectedProcedure;
});
},
),
)
: Container(
child: Padding(
padding: EdgeInsets.symmetric(vertical: 50.0),
child: AppText('You Don\'t have favorite prescription'),
),
),
],
),
),
],
),
bottomSheet: Container(
margin: EdgeInsets.all(SizeConfig.widthMultiplier * 5),
child: Wrap(
alignment: WrapAlignment.center,
children: <Widget>[
AppButton(
title: widget.procedureType.getAddButtonTitle(context) ??
TranslationBase.of(context).addSelectedProcedures,
color: Color(0xff359846),
disabled: model.templateList.length == 0 ? true : false,
fontWeight: FontWeight.w700,
onPressed: () {
if (widget.procedureType == ProcedureType.PRESCRIPTION) {
if (groupProcedures == null) {
DrAppToastMsg.showErrorToast(
'Please Select item ',
);
return;
}
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PrescriptionCheckOutScreen(
patient: widget.patient,
model: widget.prescriptionModel,
groupProcedures: groupProcedures,
),
settings: RouteSettings(name: 'PrescriptionCheckOutScreen')),
);
} else {
if (entityList.isEmpty == true) {
DrAppToastMsg.showErrorToast(
TranslationBase.of(context).fillTheMandatoryProcedureDetails,
);
return;
}
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => ProcedureCheckOutScreen(
items: entityList,
model: model,
patient: widget.patient,
addButtonTitle: widget.procedureType.getAddButtonTitle(context),
toolbarTitle: widget.procedureType.getToolbarLabel(context),
),
settings: RouteSettings(name: 'ProcedureCheckOutScreen')),
);
}
},
),
],
),
),
),
);
}
bool isEntityListSelected(ProcedureTempleteDetailsModel masterKey) {
Iterable<ProcedureTempleteDetailsModel> history = entityList.where(
(element) =>
masterKey.templateID == element.templateID &&
masterKey.procedureName == element.procedureName);
(element) => masterKey.templateID == element.templateID && masterKey.procedureName == element.procedureName);
if (history.length > 0) {
return true;
}

Loading…
Cancel
Save