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(
{int doctorId, int projectId, int clinicId, int templateId}) async {
_procedureTempleteDetailsRequestModel =
ProcedureTempleteDetailsRequestModel(templateID: templateId);
ProcedureTempleteDetailsRequestModel(
templateID: templateId, searchType: 1, patientID: 0);
hasError = false;
//insuranceApprovalInPatient.clear();
_templateDetailsList.clear();
await baseAppClient.post(GET_PROCEDURE_TEMPLETE_DETAILS,
onSuccess: (dynamic response, int statusCode) {

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

@ -1,6 +1,7 @@
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/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/models/patient/patiant_info_model.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});
ProcedureViewModel model;
PatiantInformtion patient;
List<ProcedureTempleteModel> entityList = List();
List<ProcedureTempleteDetailsModel> entityList = List();
@override
Widget build(BuildContext context) {
return BaseView<ProcedureViewModel>(
onModelReady: (model) => model.getProcedureTemplate(),
onModelReady: (model) async {
if (model.procedureTemplate.length == 0) {
model.getProcedureTemplate();
}
},
builder: (BuildContext context, ProcedureViewModel model, Widget child) =>
AppScaffold(
isShowAppBar: false,
@ -52,12 +57,12 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
EntityListCheckboxSearchFavProceduresWidget(
model: widget.model,
masterList: widget.model.procedureTemplate,
removeHistory: (item) {
removeFavProcedure: (item) {
setState(() {
entityList.remove(item);
});
},
addHistory: (history) {
addFavProcedure: (history) {
setState(() {
entityList.add(history);
});
@ -66,7 +71,7 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
//TODO build your fun herr
// widget.addSelectedHistories();
},
isEntityListSelected: (master) =>
isEntityFavListSelected: (master) =>
isEntityListSelected(master),
)
// : ProcedureListWidget(
@ -131,8 +136,8 @@ class _AddFavouriteProcedureState extends State<AddFavouriteProcedure> {
);
}
bool isEntityListSelected(ProcedureTempleteModel masterKey) {
Iterable<ProcedureTempleteModel> history = entityList
bool isEntityListSelected(ProcedureTempleteDetailsModel masterKey) {
Iterable<ProcedureTempleteDetailsModel> history = entityList
.where((element) => masterKey.templateID == element.templateID);
if (history.length > 0) {
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/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/util/translations_delegate_base.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) addRemarks;
final Function(ProcedureTempleteDetailsModel) removeFavProcedure;
final Function(ProcedureTempleteDetailsModel) addFavProcedure;
final Function(ProcedureTempleteDetailsModel) addProceduresRemarks;
final bool Function(ProcedureTempleteModel) isEntityListSelected;
final bool Function(ProcedureTempleteDetailsModel) isEntityFavListSelected;
final List<ProcedureTempleteModel> masterList;
EntityListCheckboxSearchFavProceduresWidget(
@ -27,7 +33,11 @@ class EntityListCheckboxSearchFavProceduresWidget extends StatefulWidget {
this.removeHistory,
this.masterList,
this.addHistory,
this.addFavProcedure,
this.addProceduresRemarks,
this.removeFavProcedure,
this.isEntityListSelected,
this.isEntityFavListSelected,
this.addRemarks})
: super(key: key);
@ -49,7 +59,7 @@ class _EntityListCheckboxSearchFavProceduresWidgetState
}
List<ProcedureTempleteModel> items = List();
//List<ProcedureTempleteModel> items = List();
List<ProcedureTempleteDetailsModel> itemsProcedure = List();
List<String> remarksList = List();
List<int> typeList = List();
@ -128,65 +138,72 @@ class _EntityListCheckboxSearchFavProceduresWidgetState
),
),
children: [
Container(
child: Padding(
padding: EdgeInsets.symmetric(
horizontal: 12),
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Row(
Column(
children: widget
.model.procedureTemplateDetails
.map((itemProcedure) {
return Container(
child: Padding(
padding: EdgeInsets.symmetric(
horizontal: 12),
child: Column(
crossAxisAlignment:
CrossAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets
.symmetric(
horizontal: 11),
child: Checkbox(
value: widget
.isEntityListSelected(
historyInfo),
activeColor:
Color(0xffD02127),
onChanged:
(bool newValue) {
setState(() {
if (widget
.isEntityListSelected(
historyInfo)) {
widget.removeHistory(
historyInfo);
} else {
widget.addHistory(
historyInfo);
}
});
}),
),
Expanded(
child: Padding(
padding: const EdgeInsets
.symmetric(
horizontal: 10,
vertical: 0),
child: AppText(
widget
.model
.procedureTemplate[
0]
.templateName,
fontSize: 14.0,
variant: "bodyText",
bold: true,
color: Color(
0xff575757)),
),
Row(
children: [
Padding(
padding:
const EdgeInsets
.symmetric(
horizontal: 11),
child: Checkbox(
value: widget
.isEntityFavListSelected(
itemProcedure),
activeColor: Color(
0xffD02127),
onChanged: (bool
newValue) {
setState(() {
if (widget
.isEntityFavListSelected(
itemProcedure)) {
widget.removeFavProcedure(
itemProcedure);
} else {
widget.addFavProcedure(
itemProcedure);
}
});
}),
),
Expanded(
child: Padding(
padding:
const EdgeInsets
.symmetric(
horizontal:
10,
vertical: 0),
child: AppText(
itemProcedure
.procedureName,
fontSize: 14.0,
variant:
"bodyText",
bold: true,
color: Color(
0xff575757)),
),
),
],
),
],
),
],
),
),
),
);
}).toList(),
),
SizedBox(
height: 2.0,

Loading…
Cancel
Save