favourite template Procedure service

merge-requests/674/head
hussam al-habibeh 5 years ago
parent 623f2730e8
commit e1d00b87ad

@ -88,9 +88,11 @@ class ProcedureService extends BaseService {
Future getProcedureTemplateDetails( Future getProcedureTemplateDetails(
{int doctorId, int projectId, int clinicId, int templateId}) async { {int doctorId, int projectId, int clinicId, int templateId}) async {
_procedureTempleteDetailsRequestModel = _procedureTempleteDetailsRequestModel =
ProcedureTempleteDetailsRequestModel(templateID: templateId); ProcedureTempleteDetailsRequestModel(
templateID: templateId, searchType: 1, patientID: 0);
hasError = false; hasError = false;
//insuranceApprovalInPatient.clear(); //insuranceApprovalInPatient.clear();
_templateDetailsList.clear();
await baseAppClient.post(GET_PROCEDURE_TEMPLETE_DETAILS, await baseAppClient.post(GET_PROCEDURE_TEMPLETE_DETAILS,
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {

@ -110,7 +110,9 @@ class ProcedureViewModel extends BaseViewModel {
setState(ViewState.Idle); setState(ViewState.Idle);
} }
int tempId = 0;
Future getProcedureTemplateDetails({int templateId}) async { Future getProcedureTemplateDetails({int templateId}) async {
tempId = templateId;
hasError = false; hasError = false;
//_insuranceCardService.clearInsuranceCard(); //_insuranceCardService.clearInsuranceCard();
setState(ViewState.Busy); setState(ViewState.Busy);

@ -1,6 +1,7 @@
import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart'; import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart';
import 'package:doctor_app_flutter/core/model/procedure/procedure_templateModel.dart'; import 'package:doctor_app_flutter/core/model/procedure/procedure_templateModel.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/viewModel/procedure_View_model.dart';
import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart';
@ -27,11 +28,15 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
_AddFavouriteProcedureState({this.patient, this.model}); _AddFavouriteProcedureState({this.patient, this.model});
ProcedureViewModel model; ProcedureViewModel model;
PatiantInformtion patient; PatiantInformtion patient;
List<ProcedureTempleteModel> entityList = List(); List<ProcedureTempleteDetailsModel> entityList = List();
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return BaseView<ProcedureViewModel>( return BaseView<ProcedureViewModel>(
onModelReady: (model) => model.getProcedureTemplate(), onModelReady: (model) async {
if (model.procedureTemplate.length == 0) {
model.getProcedureTemplate();
}
},
builder: (BuildContext context, ProcedureViewModel model, Widget child) => builder: (BuildContext context, ProcedureViewModel model, Widget child) =>
AppScaffold( AppScaffold(
isShowAppBar: false, isShowAppBar: false,
@ -52,12 +57,12 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
EntityListCheckboxSearchFavProceduresWidget( EntityListCheckboxSearchFavProceduresWidget(
model: widget.model, model: widget.model,
masterList: widget.model.procedureTemplate, masterList: widget.model.procedureTemplate,
removeHistory: (item) { removeFavProcedure: (item) {
setState(() { setState(() {
entityList.remove(item); entityList.remove(item);
}); });
}, },
addHistory: (history) { addFavProcedure: (history) {
setState(() { setState(() {
entityList.add(history); entityList.add(history);
}); });
@ -66,7 +71,7 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
//TODO build your fun herr //TODO build your fun herr
// widget.addSelectedHistories(); // widget.addSelectedHistories();
}, },
isEntityListSelected: (master) => isEntityFavListSelected: (master) =>
isEntityListSelected(master), isEntityListSelected(master),
) )
// : ProcedureListWidget( // : ProcedureListWidget(
@ -131,8 +136,8 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
); );
} }
bool isEntityListSelected(ProcedureTempleteModel masterKey) { bool isEntityListSelected(ProcedureTempleteDetailsModel masterKey) {
Iterable<ProcedureTempleteModel> history = entityList Iterable<ProcedureTempleteDetailsModel> history = entityList
.where((element) => masterKey.templateID == element.templateID); .where((element) => masterKey.templateID == element.templateID);
if (history.length > 0) { if (history.length > 0) {
return true; return true;

@ -1,5 +1,6 @@
import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart'; import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart';
import 'package:doctor_app_flutter/core/model/procedure/procedure_templateModel.dart'; import 'package:doctor_app_flutter/core/model/procedure/procedure_templateModel.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/viewModel/procedure_View_model.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/shared/TextFields.dart'; import 'package:doctor_app_flutter/widgets/shared/TextFields.dart';
@ -17,7 +18,12 @@ class EntityListCheckboxSearchFavProceduresWidget extends StatefulWidget {
final Function(ProcedureTempleteModel) addHistory; final Function(ProcedureTempleteModel) addHistory;
final Function(ProcedureTempleteModel) addRemarks; final Function(ProcedureTempleteModel) addRemarks;
final Function(ProcedureTempleteDetailsModel) removeFavProcedure;
final Function(ProcedureTempleteDetailsModel) addFavProcedure;
final Function(ProcedureTempleteDetailsModel) addProceduresRemarks;
final bool Function(ProcedureTempleteModel) isEntityListSelected; final bool Function(ProcedureTempleteModel) isEntityListSelected;
final bool Function(ProcedureTempleteDetailsModel) isEntityFavListSelected;
final List<ProcedureTempleteModel> masterList; final List<ProcedureTempleteModel> masterList;
EntityListCheckboxSearchFavProceduresWidget( EntityListCheckboxSearchFavProceduresWidget(
@ -27,7 +33,11 @@ class EntityListCheckboxSearchFavProceduresWidget extends StatefulWidget {
this.removeHistory, this.removeHistory,
this.masterList, this.masterList,
this.addHistory, this.addHistory,
this.addFavProcedure,
this.addProceduresRemarks,
this.removeFavProcedure,
this.isEntityListSelected, this.isEntityListSelected,
this.isEntityFavListSelected,
this.addRemarks}) this.addRemarks})
: super(key: key); : super(key: key);
@ -49,7 +59,7 @@ class _EntityListCheckboxSearchFavProceduresWidgetState
} }
List<ProcedureTempleteModel> items = List(); List<ProcedureTempleteModel> items = List();
//List<ProcedureTempleteModel> items = List(); List<ProcedureTempleteDetailsModel> itemsProcedure = List();
List<String> remarksList = List(); List<String> remarksList = List();
List<int> typeList = List(); List<int> typeList = List();
@ -128,65 +138,72 @@ class _EntityListCheckboxSearchFavProceduresWidgetState
), ),
), ),
children: [ children: [
Container( Column(
child: Padding( children: widget
padding: EdgeInsets.symmetric( .model.procedureTemplateDetails
horizontal: 12), .map((itemProcedure) {
child: Column( return Container(
crossAxisAlignment: child: Padding(
CrossAxisAlignment.start, padding: EdgeInsets.symmetric(
children: [ horizontal: 12),
Row( child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [ children: [
Padding( Row(
padding: const EdgeInsets children: [
.symmetric( Padding(
horizontal: 11), padding:
child: Checkbox( const EdgeInsets
value: widget .symmetric(
.isEntityListSelected( horizontal: 11),
historyInfo), child: Checkbox(
activeColor: value: widget
Color(0xffD02127), .isEntityFavListSelected(
onChanged: itemProcedure),
(bool newValue) { activeColor: Color(
setState(() { 0xffD02127),
if (widget onChanged: (bool
.isEntityListSelected( newValue) {
historyInfo)) { setState(() {
widget.removeHistory( if (widget
historyInfo); .isEntityFavListSelected(
} else { itemProcedure)) {
widget.addHistory( widget.removeFavProcedure(
historyInfo); itemProcedure);
} } else {
}); widget.addFavProcedure(
}), itemProcedure);
), }
Expanded( });
child: Padding( }),
padding: const EdgeInsets ),
.symmetric( Expanded(
horizontal: 10, child: Padding(
vertical: 0), padding:
child: AppText( const EdgeInsets
widget .symmetric(
.model horizontal:
.procedureTemplate[ 10,
0] vertical: 0),
.templateName, child: AppText(
fontSize: 14.0, itemProcedure
variant: "bodyText", .procedureName,
bold: true, fontSize: 14.0,
color: Color( variant:
0xff575757)), "bodyText",
), bold: true,
color: Color(
0xff575757)),
),
),
],
), ),
], ],
), ),
], ),
), );
), }).toList(),
), ),
SizedBox( SizedBox(
height: 2.0, height: 2.0,

Loading…
Cancel
Save