Merge branch 'development' of https://gitlab.com/Cloud_Solution/doctor_app_flutter into fix-issues

 Conflicts:
	lib/core/model/get_medication_response_model.dart
	lib/core/service/prescription_service.dart
merge-requests/337/head
hussam al-habibeh 5 years ago
commit 0597cc4b00

@ -83,7 +83,6 @@ class BaseAppClient {
print("URL : $url"); print("URL : $url");
print("Body : ${json.encode(body)}"); print("Body : ${json.encode(body)}");
if (await Helpers.checkConnection()) { if (await Helpers.checkConnection()) {
final response = await http.post(url, final response = await http.post(url,
body: json.encode(body), body: json.encode(body),

@ -5,6 +5,7 @@ class GetMedicationResponseModel {
String keywords; String keywords;
dynamic price; dynamic price;
dynamic quantity; dynamic quantity;
dynamic mediSpanGPICode;
bool isNarcotic; bool isNarcotic;
String uom; String uom;
GetMedicationResponseModel( GetMedicationResponseModel(
@ -16,6 +17,8 @@ class GetMedicationResponseModel {
this.quantity, this.quantity,
this.isNarcotic, this.isNarcotic,
this.uom}); this.uom});
this.isNarcotic,
this.mediSpanGPICode});
GetMedicationResponseModel.fromJson(Map<String, dynamic> json) { GetMedicationResponseModel.fromJson(Map<String, dynamic> json) {
description = json['Description']; description = json['Description'];
@ -24,6 +27,7 @@ class GetMedicationResponseModel {
keywords = json['Keywords']; keywords = json['Keywords'];
price = json['Price']; price = json['Price'];
quantity = json['Quantity']; quantity = json['Quantity'];
mediSpanGPICode = json['mediSpanGPICode'];
isNarcotic = json['isNarcotic']; isNarcotic = json['isNarcotic'];
uom = json['uom']; uom = json['uom'];
} }
@ -36,6 +40,7 @@ class GetMedicationResponseModel {
data['Keywords'] = this.keywords; data['Keywords'] = this.keywords;
data['Price'] = this.price; data['Price'] = this.price;
data['Quantity'] = this.quantity; data['Quantity'] = this.quantity;
data['mediSpanGPICode'] = this.mediSpanGPICode;
data['isNarcotic'] = this.isNarcotic; data['isNarcotic'] = this.isNarcotic;
data['uom'] = this.uom; data['uom'] = this.uom;
return data; return data;

@ -60,7 +60,7 @@ class EntityList {
dynamic pharmacistRemarks; dynamic pharmacistRemarks;
dynamic pharmacyInervention; dynamic pharmacyInervention;
dynamic refill; dynamic refill;
dynamic mediSpanGPICode;
EntityList( EntityList(
{this.appointmentNo, {this.appointmentNo,
this.clinicName, this.clinicName,
@ -92,8 +92,9 @@ class EntityList {
this.stopDate, this.stopDate,
this.uom, this.uom,
this.pharmacistRemarks, this.pharmacistRemarks,
this.refill, this.mediSpanGPICode,
this.pharmacyInervention}); this.pharmacyInervention,
this.refill});
EntityList.fromJson(Map<String, dynamic> json) { EntityList.fromJson(Map<String, dynamic> json) {
appointmentNo = json['appointmentNo']; appointmentNo = json['appointmentNo'];
@ -126,6 +127,7 @@ class EntityList {
stopDate = json['stopDate']; stopDate = json['stopDate'];
uom = json['uom']; uom = json['uom'];
pharmacistRemarks = json['pharmacistRemarks']; pharmacistRemarks = json['pharmacistRemarks'];
mediSpanGPICode = json['mediSpanGPICode'];
refill = json['refill']; refill = json['refill'];
pharmacyInervention = json['interventionID']; pharmacyInervention = json['interventionID'];
} }
@ -162,6 +164,7 @@ class EntityList {
data['stopDate'] = this.stopDate; data['stopDate'] = this.stopDate;
data['uom'] = this.uom; data['uom'] = this.uom;
data['pharmacistRemarks'] = this.pharmacistRemarks; data['pharmacistRemarks'] = this.pharmacistRemarks;
data['mediSpanGPICode'] = this.mediSpanGPICode;
data['refill'] = this.refill; data['refill'] = this.refill;
data['interventionID'] = this.pharmacyInervention; data['interventionID'] = this.pharmacyInervention;

@ -3,6 +3,7 @@ import 'package:doctor_app_flutter/core/model/Prescription_model.dart';
import 'package:doctor_app_flutter/core/model/calculate_box_request_model.dart'; import 'package:doctor_app_flutter/core/model/calculate_box_request_model.dart';
import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart'; import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart';
import 'package:doctor_app_flutter/core/model/item_by_medicine_request_model.dart'; import 'package:doctor_app_flutter/core/model/item_by_medicine_request_model.dart';
import 'package:doctor_app_flutter/core/model/medical_file_model.dart';
import 'package:doctor_app_flutter/core/model/prescription_req_model.dart'; import 'package:doctor_app_flutter/core/model/prescription_req_model.dart';
import 'package:doctor_app_flutter/core/model/post_prescrition_req_model.dart'; import 'package:doctor_app_flutter/core/model/post_prescrition_req_model.dart';
import 'package:doctor_app_flutter/core/model/search_drug_model.dart'; import 'package:doctor_app_flutter/core/model/search_drug_model.dart';
@ -15,6 +16,7 @@ import 'package:doctor_app_flutter/models/SOAP/GetAssessmentResModel.dart';
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart'; import 'package:doctor_app_flutter/models/SOAP/master_key_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/models/patient/vital_sign/patient-vital-sign-data.dart'; import 'package:doctor_app_flutter/models/patient/vital_sign/patient-vital-sign-data.dart';
import 'package:doctor_app_flutter/util/date-utils.dart';
class PrescriptionService extends LookupService { class PrescriptionService extends LookupService {
List<PrescriptionModel> _prescriptionList = List(); List<PrescriptionModel> _prescriptionList = List();
@ -25,6 +27,7 @@ class PrescriptionService extends LookupService {
List<GetMedicationResponseModel> allMedicationList = []; List<GetMedicationResponseModel> allMedicationList = [];
List<dynamic> specialityList = []; List<dynamic> specialityList = [];
List<dynamic> drugToDrug = []; List<dynamic> drugToDrug = [];
List<dynamic> get drugToDrugList => drugToDrug;
List<dynamic> itemMedicineList = []; List<dynamic> itemMedicineList = [];
List<dynamic> itemMedicineListRoute = []; List<dynamic> itemMedicineListRoute = [];
List<dynamic> itemMedicineListUnit = []; List<dynamic> itemMedicineListUnit = [];
@ -158,70 +161,71 @@ class PrescriptionService extends LookupService {
Future getDrugToDrug( Future getDrugToDrug(
VitalSignData vital, VitalSignData vital,
List<MasterKeyModel> diagnosis, List<GetAssessmentResModel> lstAssessments,
List<GetAllergiesResModel> allergy, List<GetAllergiesResModel> allergy,
PatiantInformtion patient, PatiantInformtion patient,
List<PrescriptionModel> prescription) async { List<dynamic> prescription) async {
// Map<String, dynamic> request = {
// "Prescription": {
// "objPatientInfo": {"Gender": "Male", "Age": "21/06/1967"},
// "objVitalSign": {"Height": "180", "Weight": "37"},
// "objPrescriptionItems": [
// {
// "DrugId": "83-20-00-30-20-03-03",
// "DrugName": "WARFARIN 1 MG TAB 28'S (N)",
// "Dose": "1",
// "DoseType": "04",
// "Unit": "actuation(s)",
// "FrequencyType": "1/3/Day",
// "Duration": "3/Day",
// "IsScreen": "true"
// },
// {
// "DrugId": "64-20-00-10-00-03-15",
// "DrugName": "PANADOL 500 MG TAB 24'S(DIS)",
// "Dose": "1",
// "DoseType": "04",
// "Unit": "MG",
// "FrequencyType": "3/1/Day",
// "Duration": "4/Day",
// "RouteID": "24",
// "IsScreen": "true"
// }
// ],
// "objAllergies": {
// "Allergy": {
// "objProperties": {"Id": "26", "Name": "phenoxymethylpenicillin"}
// }
// },
// "objDiagnosis": {
// "Diagnosis": {
// "objProperties": {"Id": "A01.1", "Name": "Paratyphoid fever A"}
// }
// },
// "IsDoctor": "false",
// "IsPharmacist": "false"
// },
// "IPAdress": "10.10.10.10",
// "Channel": 9,
// "LanguageID": 2,
// "VersionID": 5.3,
// "SessionID": "BlUSkYymTt",
// "IsLoginForDoctorApp": true,
// "PatientOutSA": 0,
// "TokenID": "@dm!n",
// "OutSA": true
// };
Map<String, dynamic> request = { Map<String, dynamic> request = {
"Prescription": {
"objPatientInfo": {"Gender": "Male", "Age": "21/06/1967"},
"objVitalSign": {"Height": "180", "Weight": "37"},
"objPrescriptionItems": [
{
"DrugId": "83-20-00-30-20-03-03",
"DrugName": "WARFARIN 1 MG TAB 28'S (N)",
"Dose": "1",
"DoseType": "04",
"Unit": "actuation(s)",
"FrequencyType": "1/3/Day",
"Duration": "3/Day",
"IsScreen": "true"
},
{
"DrugId": "64-20-00-10-00-03-15",
"DrugName": "PANADOL 500 MG TAB 24'S(DIS)",
"Dose": "1",
"DoseType": "04",
"Unit": "MG",
"FrequencyType": "3/1/Day",
"Duration": "4/Day",
"RouteID": "24",
"IsScreen": "true"
}
],
"objAllergies": {
"Allergy": {
"objProperties": {"Id": "26", "Name": "phenoxymethylpenicillin"}
}
},
"objDiagnosis": {
"Diagnosis": {
"objProperties": {"Id": "A01.1", "Name": "Paratyphoid fever A"}
}
},
"IsDoctor": "false",
"IsPharmacist": "false"
},
"IPAdress": "10.10.10.10",
"Channel": 9,
"LanguageID": 2,
"VersionID": 5.3,
"SessionID": "BlUSkYymTt",
"IsLoginForDoctorApp": true,
"PatientOutSA": 0,
"TokenID": "@dm!n",
"OutSA": true
};
Map<String, dynamic> requestN = {
"Prescription": { "Prescription": {
"objPatientInfo": { "objPatientInfo": {
"Gender": patient.gender == 1 ? 'Male' : 'Female', "Gender": patient.gender == 1 ? 'Male' : 'Female',
"Age": patient.age "Age": DateUtils.convertDateFromServerFormat(
patient.dateofBirth, 'dd/MM/yyyy')
}, },
"objVitalSign": {"Height": vital.heightCm, "Weight": vital.weightKg}, "objVitalSign": {"Height": vital?.heightCm, "Weight": vital?.weightKg},
"objPrescriptionItems": prescription[0].entityList, "objPrescriptionItems": prescription,
"objAllergies": allergy, "objAllergies": getAllergiesObj(allergy),
"objDiagnosis": diagnosis, "objDiagnosis": getDiagnosisObj(lstAssessments),
"IsDoctor": "false", "IsDoctor": "false",
"IsPharmacist": "false" "IsPharmacist": "false"
} }
@ -231,7 +235,8 @@ class PrescriptionService extends LookupService {
await baseAppClient.post(DRUG_TO_DRUG, await baseAppClient.post(DRUG_TO_DRUG,
onSuccess: (dynamic response, int statusCode) { onSuccess: (dynamic response, int statusCode) {
drugToDrug = []; drugToDrug = [];
//drugToDrug = //response['MedicationList']['entityList']; drugToDrug =
response['DrugToDrugResponse']['objPrescriptionCheckerResult'];
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {
hasError = true; hasError = true;
super.error = error; super.error = error;
@ -256,4 +261,27 @@ class PrescriptionService extends LookupService {
super.error = error; super.error = error;
}, body: _boxQuantityRequestModel.toJson()); }, body: _boxQuantityRequestModel.toJson());
} }
getAllergiesObj(List<GetAllergiesResModel> allergies) {
var allergiesObj = [];
allergies.forEach((element) {
allergiesObj.add({
"objProperties": {
'Id': element.allergyDiseaseId,
'Name': element.allergyDiseaseName
}
});
});
return allergiesObj;
}
getDiagnosisObj(List<GetAssessmentResModel> lstAssessments) {
var lstAssessmentsObj = [];
lstAssessments.forEach((element) {
lstAssessmentsObj.add({
"objProperties": {'Id': element.icdCode10ID, 'Name': element.asciiDesc}
});
});
return lstAssessmentsObj;
}
} }

@ -1,12 +1,14 @@
import 'package:doctor_app_flutter/core/enum/viewstate.dart'; import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/model/Prescription_model.dart'; import 'package:doctor_app_flutter/core/model/Prescription_model.dart';
import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart'; import 'package:doctor_app_flutter/core/model/get_medication_response_model.dart';
import 'package:doctor_app_flutter/core/model/medical_file_model.dart';
import 'package:doctor_app_flutter/core/model/post_prescrition_req_model.dart'; import 'package:doctor_app_flutter/core/model/post_prescrition_req_model.dart';
import 'package:doctor_app_flutter/core/model/search_drug_model.dart'; import 'package:doctor_app_flutter/core/model/search_drug_model.dart';
import 'package:doctor_app_flutter/core/service/prescription_service.dart'; import 'package:doctor_app_flutter/core/service/prescription_service.dart';
import 'package:doctor_app_flutter/core/viewModel/base_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/base_view_model.dart';
import 'package:doctor_app_flutter/locator.dart'; import 'package:doctor_app_flutter/locator.dart';
import 'package:doctor_app_flutter/models/SOAP/GetAllergiesResModel.dart'; import 'package:doctor_app_flutter/models/SOAP/GetAllergiesResModel.dart';
import 'package:doctor_app_flutter/models/SOAP/GetAssessmentResModel.dart';
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart'; import 'package:doctor_app_flutter/models/SOAP/master_key_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/models/patient/vital_sign/patient-vital-sign-data.dart'; import 'package:doctor_app_flutter/models/patient/vital_sign/patient-vital-sign-data.dart';
@ -21,6 +23,7 @@ class PrescriptionViewModel extends BaseViewModel {
_prescriptionService.prescriptionList; _prescriptionService.prescriptionList;
List<dynamic> get drugsList => _prescriptionService.doctorsList; List<dynamic> get drugsList => _prescriptionService.doctorsList;
//List<dynamic> get allMedicationList => _prescriptionService.allMedicationList; //List<dynamic> get allMedicationList => _prescriptionService.allMedicationList;
List<dynamic> get drugToDrug => _prescriptionService.drugToDrugList;
List<dynamic> get itemMedicineList => _prescriptionService.itemMedicineList; List<dynamic> get itemMedicineList => _prescriptionService.itemMedicineList;
@ -102,14 +105,14 @@ class PrescriptionViewModel extends BaseViewModel {
Future getDrugToDrug( Future getDrugToDrug(
VitalSignData vital, VitalSignData vital,
List<MasterKeyModel> listOfDiagnosisType, List<GetAssessmentResModel> lstAssessments,
List<GetAllergiesResModel> allergy, List<GetAllergiesResModel> allergy,
PatiantInformtion patient, PatiantInformtion patient,
List<PrescriptionModel> prescription) async { List<dynamic> prescription) async {
hasError = false; hasError = false;
setState(ViewState.Busy); setState(ViewState.Busy);
await _prescriptionService.getDrugToDrug( await _prescriptionService.getDrugToDrug(
vital, listOfDiagnosisType, allergy, patient, prescription); vital, lstAssessments, allergy, patient, prescription);
if (_prescriptionService.hasError) { if (_prescriptionService.hasError) {
error = _prescriptionService.error; error = _prescriptionService.error;
setState(ViewState.ErrorLocal); setState(ViewState.ErrorLocal);

@ -973,13 +973,15 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
if (formKey.currentState if (formKey.currentState
.validate()) { .validate()) {
Navigator.pop(context); Navigator.pop(context);
openDrugToDrug(model);
{ {
// var x = model /*// var x = model
// .patientAssessmentList // .patientAssessmentList
// .map((value) => // .map((value) =>
// value.icdCode10ID) // value.icdCode10ID)
// .toList() // .toList()
// .join(','); // .join(',');
postProcedure( postProcedure(
icdCode: model icdCode: model
.patientAssessmentList .patientAssessmentList
@ -1030,8 +1032,10 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
.text, .text,
doseTime: selectedDate, doseTime: selectedDate,
); );
*/
} }
} }
{ {
// Navigator.push( // Navigator.push(
// context, // context,
@ -1110,7 +1114,7 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
); );
} }
openDrugToDrug() { openDrugToDrug(model) {
showModalBottomSheet( showModalBottomSheet(
context: context, context: context,
builder: (context) { builder: (context) {
@ -1121,26 +1125,43 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
child: Column( child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceBetween, // mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
DrugToDrug(widget.patient, widget.prescriptionList), DrugToDrug(
widget.patient,
getPriscriptionforDrug(widget.prescriptionList),
model.patientAssessmentList),
Container( Container(
margin: EdgeInsets.all(SizeConfig.widthMultiplier * 3), margin: EdgeInsets.all(SizeConfig.widthMultiplier * 3),
child: AppButton( child: AppButton(
title: TranslationBase.of(context).addMedication, title: TranslationBase.of(context).addMedication,
onPressed: () { onPressed: () {
Navigator.pop(context);
postProcedure( postProcedure(
dose: strengthController.text, icdCode:
doseUnit: units['id'].toString(), model.patientAssessmentList[0].icdCode10ID.isEmpty
patient: widget.patient, ? "test"
doseTimeIn: doseTime['id'].toString(), : model.patientAssessmentList[0].icdCode10ID
model: widget.model, .toString(),
duration: duration['id'].toString(), // icdCode: model
frequency: frequency['id'].toString(), // .patientAssessmentList
route: route['id'].toString(), // .map((value) => value
drugId: selectedDrug['ItemId'].toString(), // .icdCode10ID
strength: strengthController.text, // .trim())
indication: indicationController.text, // .toList()
instruction: instructionController.text, // .join(' '),
doseTime: selectedDate); dose: strengthController.text,
doseUnit: units['parameterCode'].toString(),
patient: widget.patient,
doseTimeIn: doseTime['id'].toString(),
model: widget.model,
duration: duration['id'].toString(),
frequency: frequency['parameterCode'].toString(),
route: route['parameterCode'].toString(),
drugId: _selectedMedication.itemId.toString(),
strength: strengthController.text,
indication: indicationController.text,
instruction: instructionController.text,
doseTime: selectedDate,
);
}, },
)) ))
], ],
@ -1151,4 +1172,37 @@ class _PrescriptionFormWidgetState extends State<PrescriptionFormWidget> {
); );
}); });
} }
getPriscriptionforDrug(List<PrescriptionModel> prescriptionList) {
var prescriptionDetails = [];
prescriptionList[0].entityList.forEach((element) {
if (element.mediSpanGPICode != null) {
prescriptionDetails.add({
'DrugId': element.mediSpanGPICode,
'DrugName': element.medicationName,
'Dose': element.doseDailyQuantity,
'DoseType': element.doseDailyUnitID,
'Unit': element.uom,
'FrequencyType': element.frequencyID,
'Duration': element.doseDurationDays,
'RouteID': element.routeID,
'IsScreen': element.isSIG
});
}
});
if (_selectedMedication.mediSpanGPICode != null) {
prescriptionDetails.add({
'DrugId': _selectedMedication.mediSpanGPICode,
'DrugName': _selectedMedication.description,
'Dose': strengthController.text,
'DoseType': units['parameterCode'].toString(),
'Unit': units['description'],
'FrequencyType': frequency['parameterCode'].toString(),
'Duration': duration['id'].toString(),
'RouteID': route['parameterCode'].toString(),
'IsScreen': true
});
}
return prescriptionDetails;
}
} }

@ -2,25 +2,29 @@ import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart'; import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart';
import 'package:doctor_app_flutter/core/enum/viewstate.dart'; import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/model/medical_file_model.dart';
import 'package:doctor_app_flutter/core/model/prescription_model.dart'; import 'package:doctor_app_flutter/core/model/prescription_model.dart';
import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/SOAP_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/patient-vital-sign-viewmodel.dart'; import 'package:doctor_app_flutter/core/viewModel/patient-vital-sign-viewmodel.dart';
import 'package:doctor_app_flutter/core/viewModel/patient_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/patient_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/prescription_view_model.dart'; import 'package:doctor_app_flutter/core/viewModel/prescription_view_model.dart';
import 'package:doctor_app_flutter/models/SOAP/GeneralGetReqForSOAP.dart'; import 'package:doctor_app_flutter/models/SOAP/GeneralGetReqForSOAP.dart';
import 'package:doctor_app_flutter/models/SOAP/GetAssessmentResModel.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/models/patient/vital_sign/vital_sign_req_model.dart'; import 'package:doctor_app_flutter/models/patient/vital_sign/vital_sign_req_model.dart';
import 'package:doctor_app_flutter/screens/base/base_view.dart'; import 'package:doctor_app_flutter/screens/base/base_view.dart';
import 'package:doctor_app_flutter/screens/medicine/medicine_search_screen.dart'; import 'package:doctor_app_flutter/screens/medicine/medicine_search_screen.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/app_scaffold_widget.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/network_base_view.dart'; import 'package:doctor_app_flutter/widgets/shared/network_base_view.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
class DrugToDrug extends StatefulWidget { class DrugToDrug extends StatefulWidget {
final PatiantInformtion patient; final PatiantInformtion patient;
final prescription; final prescription;
DrugToDrug(this.patient, this.prescription); final List<GetAssessmentResModel> listAssessment;
DrugToDrug(this.patient, this.prescription, this.listAssessment);
@override @override
_DrugToDrug createState() => _DrugToDrug(); _DrugToDrug createState() => _DrugToDrug();
} }
@ -29,11 +33,11 @@ class _DrugToDrug extends State<DrugToDrug> {
int typeID = 1; int typeID = 1;
bool isLoaded = false; bool isLoaded = false;
List<Map<dynamic, dynamic>> expandableList = [ List<Map<dynamic, dynamic>> expandableList = [
{'name': 'CRITICAL'}, {'name': 'CRITICAL', 'level': 'LEVEL_4'},
{'name': 'HIGH'}, {'name': 'HIGH', 'level': 'LEVEL_3'},
{'name': 'MODERATE'}, {'name': 'MODERATE', 'level': 'LEVEL_2'},
{'name': 'LOW'}, {'name': 'LOW', 'level': 'LEVEL_1'},
{'name': 'INFO'}, {'name': 'INFO', 'level': 'INFO'},
]; ];
GeneralGetReqForSOAP generalGetReqForSOAP = GeneralGetReqForSOAP( GeneralGetReqForSOAP generalGetReqForSOAP = GeneralGetReqForSOAP(
patientMRN: 2954208, //widget.patient.patientMRN, patientMRN: 2954208, //widget.patient.patientMRN,
@ -58,7 +62,7 @@ class _DrugToDrug extends State<DrugToDrug> {
? BaseView<PrescriptionViewModel>( ? BaseView<PrescriptionViewModel>(
onModelReady: (model3) => model3.getDrugToDrug( onModelReady: (model3) => model3.getDrugToDrug(
model.patientVitalSigns, model.patientVitalSigns,
model2.listOfDiagnosisType, widget.listAssessment,
model2.patientAllergiesList, model2.patientAllergiesList,
widget.patient, widget.patient,
widget.prescription), widget.prescription),
@ -72,15 +76,28 @@ class _DrugToDrug extends State<DrugToDrug> {
itemCount: expandableList.length, itemCount: expandableList.length,
itemBuilder: (context, i) { itemBuilder: (context, i) {
return new ExpansionTile( return new ExpansionTile(
title: new Text( title: new AppText(
expandableList[i]['name'], expandableList[i]['name'] +
style: new TextStyle( ' ' +
fontSize: 20.0, '(' +
fontWeight: FontWeight.bold, getDrugInfo(expandableList[i]['level'],
fontStyle: FontStyle.italic), model3)
), .length
children: <Widget>[Text('Hi')], .toString() +
); ')',
fontSize: 20,
fontWeight: FontWeight.bold,
),
children: getDrugInfo(
expandableList[i]['level'], model3)
.map((item) {
return Container(
padding: EdgeInsets.all(10),
child: AppText(
item['comment'],
color: Colors.red[900],
));
}).toList());
})))) }))))
: Container( : Container(
height: SizeConfig.realScreenHeight * .45, height: SizeConfig.realScreenHeight * .45,
@ -107,4 +124,8 @@ class _DrugToDrug extends State<DrugToDrug> {
}); });
} }
} }
List<dynamic> getDrugInfo(level, model3) {
return model3.drugToDrug.where((i) => i['Severity'] == level).toList();
}
} }

Loading…
Cancel
Save