|
|
|
|
@ -7,8 +7,7 @@ import 'package:doctor_app_flutter/core/model/labs/patient_lab_orders.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/labs/patient_lab_special_result.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/categories_procedure.dart'
|
|
|
|
|
as cpe;
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/procedure/categories_procedure.dart' as cpe;
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/procedure/get_ordered_procedure_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/procedure/post_procedure_req_model.dart';
|
|
|
|
|
import 'package:doctor_app_flutter/core/model/procedure/procedure_templateModel.dart';
|
|
|
|
|
@ -36,14 +35,11 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
bool hasError = false;
|
|
|
|
|
ProcedureService _procedureService = locator<ProcedureService>();
|
|
|
|
|
|
|
|
|
|
List<GetOrderedProcedureModel> get procedureList =>
|
|
|
|
|
_procedureService.procedureList;
|
|
|
|
|
List<GetOrderedProcedureModel> get procedureList => _procedureService.procedureList;
|
|
|
|
|
|
|
|
|
|
List<ProcedureValadteModel> get valadteProcedureList =>
|
|
|
|
|
_procedureService.valadteProcedureList;
|
|
|
|
|
List<ProcedureValadteModel> get valadteProcedureList => _procedureService.valadteProcedureList;
|
|
|
|
|
|
|
|
|
|
List<CategoriseProcedureModel> get categoriesList =>
|
|
|
|
|
_procedureService.categoriesList;
|
|
|
|
|
List<CategoriseProcedureModel> get categoriesList => _procedureService.categoriesList;
|
|
|
|
|
|
|
|
|
|
List<dynamic> get categoryList => _procedureService.categoryList;
|
|
|
|
|
RadiologyService _radiologyService = locator<RadiologyService>();
|
|
|
|
|
@ -51,44 +47,31 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
List<FinalRadiologyList> _finalRadiologyListClinic = List();
|
|
|
|
|
List<FinalRadiologyList> _finalRadiologyListHospital = List();
|
|
|
|
|
|
|
|
|
|
List<FinalRadiologyList> get finalRadiologyList =>
|
|
|
|
|
filterType == FilterType.Clinic
|
|
|
|
|
? _finalRadiologyListClinic
|
|
|
|
|
: _finalRadiologyListHospital;
|
|
|
|
|
List<FinalRadiologyList> get finalRadiologyList => filterType == FilterType.Clinic ? _finalRadiologyListClinic : _finalRadiologyListHospital;
|
|
|
|
|
|
|
|
|
|
List<FinalRadiology> get radiologyList =>
|
|
|
|
|
_radiologyService.finalRadiologyList;
|
|
|
|
|
List<FinalRadiology> get radiologyList => _radiologyService.finalRadiologyList;
|
|
|
|
|
|
|
|
|
|
List<PatientLabOrders> get patientLabOrdersList =>
|
|
|
|
|
_labsService.patientLabOrdersList;
|
|
|
|
|
List<PatientLabOrders> get patientLabOrdersList => _labsService.patientLabOrdersList;
|
|
|
|
|
|
|
|
|
|
List<LabOrderResult> get labOrdersResultsList =>
|
|
|
|
|
_labsService.labOrdersResultsList;
|
|
|
|
|
List<LabOrderResult> get labOrdersResultsList => _labsService.labOrdersResultsList;
|
|
|
|
|
|
|
|
|
|
List<ProcedureTempleteDetailsModel> get procedureTemplate =>
|
|
|
|
|
_procedureService.templateList;
|
|
|
|
|
List<ProcedureTempleteDetailsModel> get procedureTemplate => _procedureService.templateList;
|
|
|
|
|
List<ProcedureTempleteDetailsModelList> templateList = List();
|
|
|
|
|
|
|
|
|
|
List<ProcedureTempleteDetailsModel> get procedureTemplateDetails =>
|
|
|
|
|
_procedureService.templateDetailsList;
|
|
|
|
|
List<ProcedureTempleteDetailsModel> get procedureTemplateDetails => _procedureService.templateDetailsList;
|
|
|
|
|
|
|
|
|
|
bool _isRadiologyVIDAPlus = false;
|
|
|
|
|
|
|
|
|
|
bool get isRadiologyVIDAPlus => _isRadiologyVIDAPlus;
|
|
|
|
|
|
|
|
|
|
Future getProcedure(
|
|
|
|
|
{int mrn,
|
|
|
|
|
String patientType,
|
|
|
|
|
int appointmentNo,
|
|
|
|
|
bool isLocalBusy = false}) async {
|
|
|
|
|
Future getProcedure({int mrn, String patientType, int appointmentNo, bool isLocalBusy = false}) async {
|
|
|
|
|
hasError = false;
|
|
|
|
|
await getDoctorProfile();
|
|
|
|
|
if (isLocalBusy)
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
else
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _procedureService.getProcedure(
|
|
|
|
|
mrn: mrn, appointmentNo: appointmentNo);
|
|
|
|
|
await _procedureService.getProcedure(mrn: mrn, appointmentNo: appointmentNo);
|
|
|
|
|
if (_procedureService.hasError) {
|
|
|
|
|
error = _procedureService.error;
|
|
|
|
|
if (patientType == "7")
|
|
|
|
|
@ -99,21 +82,14 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future getProcedureCategory(
|
|
|
|
|
{String categoryName,
|
|
|
|
|
String categoryID,
|
|
|
|
|
patientId,
|
|
|
|
|
bool isLocalBusy = false}) async {
|
|
|
|
|
Future getProcedureCategory({String categoryName, String categoryID, patientId, bool isLocalBusy = false}) async {
|
|
|
|
|
if (categoryName == null) return;
|
|
|
|
|
hasError = false;
|
|
|
|
|
if (isLocalBusy)
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
else
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _procedureService.getProcedureCategory(
|
|
|
|
|
categoryName: categoryName,
|
|
|
|
|
categoryID: categoryID,
|
|
|
|
|
patientId: patientId);
|
|
|
|
|
await _procedureService.getProcedureCategory(categoryName: categoryName, categoryID: categoryID, patientId: patientId);
|
|
|
|
|
if (_procedureService.hasError) {
|
|
|
|
|
error = _procedureService.error;
|
|
|
|
|
setState(ViewState.ErrorLocal);
|
|
|
|
|
@ -133,17 +109,13 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future getProcedureTemplate(
|
|
|
|
|
{String categoryID,
|
|
|
|
|
bool isLocalBusy = false,
|
|
|
|
|
BuildContext context}) async {
|
|
|
|
|
Future getProcedureTemplate({String categoryID, bool isLocalBusy = false, BuildContext context}) async {
|
|
|
|
|
if (isLocalBusy) {
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
} else {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
}
|
|
|
|
|
await _procedureService.getProcedureTemplate(
|
|
|
|
|
categoryID: categoryID, isLocalBusy: false);
|
|
|
|
|
await _procedureService.getProcedureTemplate(categoryID: categoryID, isLocalBusy: false);
|
|
|
|
|
if (_procedureService.hasError) {
|
|
|
|
|
error = _procedureService.error;
|
|
|
|
|
setState(ViewState.ErrorLocal);
|
|
|
|
|
@ -154,20 +126,12 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
|
|
|
|
|
setTemplateListDependOnId() {
|
|
|
|
|
procedureTemplate.forEach((element) {
|
|
|
|
|
List<ProcedureTempleteDetailsModelList> templateListData = templateList
|
|
|
|
|
.where((elementTemplate) =>
|
|
|
|
|
elementTemplate.templateId == element.templateID)
|
|
|
|
|
.toList();
|
|
|
|
|
List<ProcedureTempleteDetailsModelList> templateListData = templateList.where((elementTemplate) => elementTemplate.templateId == element.templateID).toList();
|
|
|
|
|
|
|
|
|
|
if (templateListData.length != 0) {
|
|
|
|
|
templateList[templateList.indexOf(templateListData[0])]
|
|
|
|
|
.procedureTemplate
|
|
|
|
|
.add(element);
|
|
|
|
|
templateList[templateList.indexOf(templateListData[0])].procedureTemplate.add(element);
|
|
|
|
|
} else {
|
|
|
|
|
var template = ProcedureTempleteDetailsModelList(
|
|
|
|
|
templateName: element.templateName,
|
|
|
|
|
templateId: element.templateID,
|
|
|
|
|
template: element);
|
|
|
|
|
var template = ProcedureTempleteDetailsModelList(templateName: element.templateName, templateId: element.templateID, template: element);
|
|
|
|
|
if (!templateList.contains(template)) templateList.add(template);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
@ -189,8 +153,7 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future postProcedure(PostProcedureReqModel postProcedureReqModel, int mrn,
|
|
|
|
|
{bool isLocalBusy = false}) async {
|
|
|
|
|
Future postProcedure(PostProcedureReqModel postProcedureReqModel, int mrn, {bool isLocalBusy = false}) async {
|
|
|
|
|
hasError = false;
|
|
|
|
|
if (isLocalBusy)
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
@ -201,14 +164,12 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
error = _procedureService.error;
|
|
|
|
|
setState(ViewState.ErrorLocal);
|
|
|
|
|
} else {
|
|
|
|
|
await getProcedure(mrn: mrn, isLocalBusy:isLocalBusy);
|
|
|
|
|
await getProcedure(mrn: mrn, isLocalBusy: isLocalBusy);
|
|
|
|
|
setState(ViewState.Idle);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future validationProcedure(
|
|
|
|
|
ProcedureValidationRequestModel procedureValidateRequestModel,
|
|
|
|
|
{bool isLocalBusy = false}) async {
|
|
|
|
|
Future validationProcedure(ProcedureValidationRequestModel procedureValidateRequestModel, {bool isLocalBusy = false}) async {
|
|
|
|
|
hasError = false;
|
|
|
|
|
if (isLocalBusy) {
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
@ -224,12 +185,12 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future updateProcedure(
|
|
|
|
|
{UpdateProcedureRequestModel updateProcedureRequestModel,
|
|
|
|
|
int mrn, bool isLocalBusy = false}) async {
|
|
|
|
|
Future updateProcedure({UpdateProcedureRequestModel updateProcedureRequestModel, int mrn, bool isLocalBusy = false}) async {
|
|
|
|
|
hasError = false;
|
|
|
|
|
if(isLocalBusy)setState(ViewState.BusyLocal); else
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
if (isLocalBusy)
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
else
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _procedureService.updateProcedure(updateProcedureRequestModel);
|
|
|
|
|
if (_procedureService.hasError) {
|
|
|
|
|
error = _procedureService.error;
|
|
|
|
|
@ -239,11 +200,9 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
//await getProcedure(mrn: mrn);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void getPatientRadOrders(PatiantInformtion patient,
|
|
|
|
|
{String patientType, bool isInPatient = false}) async {
|
|
|
|
|
void getPatientRadOrders(PatiantInformtion patient, {String patientType, bool isInPatient = false}) async {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _radiologyService.getPatientRadOrders(patient,
|
|
|
|
|
isInPatient: isInPatient);
|
|
|
|
|
await _radiologyService.getPatientRadOrders(patient, isInPatient: isInPatient);
|
|
|
|
|
_isRadiologyVIDAPlus = _radiologyService.isRadiologyVIDAPlus;
|
|
|
|
|
if (_radiologyService.hasError) {
|
|
|
|
|
error = _radiologyService.error;
|
|
|
|
|
@ -253,39 +212,25 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.ErrorLocal);
|
|
|
|
|
} else {
|
|
|
|
|
_radiologyService.finalRadiologyList.forEach((element) {
|
|
|
|
|
List<FinalRadiologyList> finalRadiologyListClinic =
|
|
|
|
|
_finalRadiologyListClinic
|
|
|
|
|
.where((elementClinic) =>
|
|
|
|
|
elementClinic.filterName == element.clinicDescription)
|
|
|
|
|
.toList();
|
|
|
|
|
List<FinalRadiologyList> finalRadiologyListClinic = _finalRadiologyListClinic.where((elementClinic) => elementClinic.filterName == element.clinicDescription).toList();
|
|
|
|
|
|
|
|
|
|
if (finalRadiologyListClinic.length != 0) {
|
|
|
|
|
_finalRadiologyListClinic[
|
|
|
|
|
finalRadiologyListClinic.indexOf(finalRadiologyListClinic[0])]
|
|
|
|
|
.finalRadiologyList
|
|
|
|
|
.add(element);
|
|
|
|
|
_finalRadiologyListClinic[finalRadiologyListClinic.indexOf(finalRadiologyListClinic[0])].finalRadiologyList.add(element);
|
|
|
|
|
} else {
|
|
|
|
|
_finalRadiologyListClinic.add(FinalRadiologyList(
|
|
|
|
|
filterName: element.clinicDescription, finalRadiology: element));
|
|
|
|
|
_finalRadiologyListClinic.add(FinalRadiologyList(filterName: element.clinicDescription, finalRadiology: element));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// FinalRadiologyList list sort via project
|
|
|
|
|
List<FinalRadiologyList> finalRadiologyListHospital =
|
|
|
|
|
_finalRadiologyListHospital
|
|
|
|
|
.where(
|
|
|
|
|
(elementClinic) =>
|
|
|
|
|
elementClinic.filterName == element.projectName,
|
|
|
|
|
)
|
|
|
|
|
.toList();
|
|
|
|
|
List<FinalRadiologyList> finalRadiologyListHospital = _finalRadiologyListHospital
|
|
|
|
|
.where(
|
|
|
|
|
(elementClinic) => elementClinic.filterName == element.projectName,
|
|
|
|
|
)
|
|
|
|
|
.toList();
|
|
|
|
|
|
|
|
|
|
if (finalRadiologyListHospital.length != 0) {
|
|
|
|
|
_finalRadiologyListHospital[finalRadiologyListHospital
|
|
|
|
|
.indexOf(finalRadiologyListHospital[0])]
|
|
|
|
|
.finalRadiologyList
|
|
|
|
|
.add(element);
|
|
|
|
|
_finalRadiologyListHospital[finalRadiologyListHospital.indexOf(finalRadiologyListHospital[0])].finalRadiologyList.add(element);
|
|
|
|
|
} else {
|
|
|
|
|
_finalRadiologyListHospital.add(FinalRadiologyList(
|
|
|
|
|
filterName: element.projectName, finalRadiology: element));
|
|
|
|
|
_finalRadiologyListHospital.add(FinalRadiologyList(filterName: element.projectName, finalRadiology: element));
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
@ -295,17 +240,9 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
|
|
|
|
|
String get radImageURL => _radiologyService.url;
|
|
|
|
|
|
|
|
|
|
getRadImageURL(
|
|
|
|
|
{int invoiceNo,
|
|
|
|
|
int lineItem,
|
|
|
|
|
int projectId,
|
|
|
|
|
@required PatiantInformtion patient}) async {
|
|
|
|
|
getRadImageURL({int invoiceNo, int lineItem, int projectId, @required PatiantInformtion patient}) async {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _radiologyService.getRadImageURL(
|
|
|
|
|
invoiceNo: invoiceNo,
|
|
|
|
|
lineItem: lineItem,
|
|
|
|
|
projectId: projectId,
|
|
|
|
|
patient: patient);
|
|
|
|
|
await _radiologyService.getRadImageURL(invoiceNo: invoiceNo, lineItem: lineItem, projectId: projectId, patient: patient);
|
|
|
|
|
if (_radiologyService.hasError) {
|
|
|
|
|
error = _radiologyService.error;
|
|
|
|
|
setState(ViewState.Error);
|
|
|
|
|
@ -318,8 +255,7 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
notifyListeners();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<PatientLabSpecialResult> get patientLabSpecialResult =>
|
|
|
|
|
_labsService.patientLabSpecialResult;
|
|
|
|
|
List<PatientLabSpecialResult> get patientLabSpecialResult => _labsService.patientLabSpecialResult;
|
|
|
|
|
|
|
|
|
|
List<LabResult> get labResultList => _labsService.labResultList;
|
|
|
|
|
|
|
|
|
|
@ -340,19 +276,9 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
getLaboratoryResult(
|
|
|
|
|
{String projectID,
|
|
|
|
|
int clinicID,
|
|
|
|
|
String invoiceNo,
|
|
|
|
|
String orderNo,
|
|
|
|
|
PatiantInformtion patient}) async {
|
|
|
|
|
getLaboratoryResult({String projectID, int clinicID, String invoiceNo, String orderNo, PatiantInformtion patient}) async {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _labsService.getLaboratoryResult(
|
|
|
|
|
invoiceNo: invoiceNo,
|
|
|
|
|
orderNo: orderNo,
|
|
|
|
|
projectID: projectID,
|
|
|
|
|
clinicID: clinicID,
|
|
|
|
|
patient: patient);
|
|
|
|
|
await _labsService.getLaboratoryResult(invoiceNo: invoiceNo, orderNo: orderNo, projectID: projectID, clinicID: clinicID, patient: patient);
|
|
|
|
|
if (_labsService.hasError) {
|
|
|
|
|
error = _labsService.error;
|
|
|
|
|
setState(ViewState.Error);
|
|
|
|
|
@ -361,15 +287,9 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
getPatientLabOrdersResults(
|
|
|
|
|
{PatientLabOrders patientLabOrder,
|
|
|
|
|
String procedure,
|
|
|
|
|
PatiantInformtion patient}) async {
|
|
|
|
|
getPatientLabOrdersResults({PatientLabOrders patientLabOrder, String procedure, PatiantInformtion patient}) async {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
await _labsService.getPatientLabOrdersResults(
|
|
|
|
|
patientLabOrder: patientLabOrder,
|
|
|
|
|
procedure: procedure,
|
|
|
|
|
patient: patient);
|
|
|
|
|
await _labsService.getPatientLabOrdersResults(patientLabOrder: patientLabOrder, procedure: procedure, patient: patient);
|
|
|
|
|
if (_labsService.hasError) {
|
|
|
|
|
error = _labsService.error;
|
|
|
|
|
setState(ViewState.Error);
|
|
|
|
|
@ -377,9 +297,7 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
bool isShouldClear = false;
|
|
|
|
|
if (_labsService.labOrdersResultsList.length == 1) {
|
|
|
|
|
labOrdersResultsList.forEach((element) {
|
|
|
|
|
if (element.resultValue.contains('/') ||
|
|
|
|
|
element.resultValue.contains('*') ||
|
|
|
|
|
element.resultValue.isEmpty) isShouldClear = true;
|
|
|
|
|
if (element.resultValue.contains('/') || element.resultValue.contains('*') || element.resultValue.isEmpty) isShouldClear = true;
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
if (isShouldClear) _labsService.labOrdersResultsList.clear();
|
|
|
|
|
@ -410,8 +328,7 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
setState(ViewState.Busy);
|
|
|
|
|
}
|
|
|
|
|
PostProcedureReqModel postProcedureReqModel = new PostProcedureReqModel();
|
|
|
|
|
ProcedureValidationRequestModel procedureValadteRequestModel =
|
|
|
|
|
new ProcedureValidationRequestModel();
|
|
|
|
|
ProcedureValidationRequestModel procedureValadteRequestModel = new ProcedureValidationRequestModel();
|
|
|
|
|
procedureValadteRequestModel.patientMRN = patient.patientMRN;
|
|
|
|
|
procedureValadteRequestModel.episodeID = patient.episodeNo;
|
|
|
|
|
procedureValadteRequestModel.appointmentNo = patient.appointmentNo;
|
|
|
|
|
@ -426,48 +343,34 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
procedureValadteRequestModel.procedure = [element.procedureId];
|
|
|
|
|
List<Controls> controls = List();
|
|
|
|
|
controls.add(
|
|
|
|
|
Controls(
|
|
|
|
|
code: "remarks",
|
|
|
|
|
controlValue: element.remarks != null ? element.remarks : ""),
|
|
|
|
|
Controls(code: "remarks", controlValue: element.remarks != null ? element.remarks : ""),
|
|
|
|
|
);
|
|
|
|
|
controls.add(
|
|
|
|
|
Controls(
|
|
|
|
|
code: "ordertype",
|
|
|
|
|
controlValue: procedureType == ProcedureType.PROCEDURE
|
|
|
|
|
? element.type ?? "1"
|
|
|
|
|
: "0"),
|
|
|
|
|
Controls(code: "ordertype", controlValue: procedureType == ProcedureType.PROCEDURE ? element.type ?? "1" : "0"),
|
|
|
|
|
);
|
|
|
|
|
controlsProcedure.add(Procedures(
|
|
|
|
|
category: element.categoryID,
|
|
|
|
|
procedure: element.procedureId,
|
|
|
|
|
controls: controls));
|
|
|
|
|
controlsProcedure.add(Procedures(category: element.categoryID, procedure: element.procedureId, controls: controls));
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
postProcedureReqModel.procedures = controlsProcedure;
|
|
|
|
|
await validationProcedure(procedureValadteRequestModel,
|
|
|
|
|
isLocalBusy: isLocalBusy);
|
|
|
|
|
await validationProcedure(procedureValadteRequestModel, isLocalBusy: isLocalBusy);
|
|
|
|
|
if (state == ViewState.Idle) {
|
|
|
|
|
if (valadteProcedureList[0].entityList.length == 0) {
|
|
|
|
|
await postProcedure(postProcedureReqModel, patient.patientMRN,
|
|
|
|
|
isLocalBusy: isLocalBusy);
|
|
|
|
|
await postProcedure(postProcedureReqModel, patient.patientMRN, isLocalBusy: isLocalBusy);
|
|
|
|
|
|
|
|
|
|
if (state == ViewState.ErrorLocal) {
|
|
|
|
|
Utils.showErrorToast(error);
|
|
|
|
|
getProcedure(mrn: patient.patientMRN, isLocalBusy: isLocalBusy);
|
|
|
|
|
} else if (state == ViewState.Idle) {
|
|
|
|
|
DrAppToastMsg.showSuccesToast('procedure has been added');
|
|
|
|
|
if (Navigator.canPop(AppGlobal.CONTEX))
|
|
|
|
|
Navigator.pop(AppGlobal.CONTEX);
|
|
|
|
|
if (Navigator.canPop(AppGlobal.CONTEX))
|
|
|
|
|
Navigator.pop(AppGlobal.CONTEX);
|
|
|
|
|
if (Navigator.canPop(AppGlobal.CONTEX)) Navigator.pop(AppGlobal.CONTEX);
|
|
|
|
|
if (Navigator.canPop(AppGlobal.CONTEX)) Navigator.pop(AppGlobal.CONTEX);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (state == ViewState.ErrorLocal) {
|
|
|
|
|
Utils.showErrorToast(error);
|
|
|
|
|
getProcedure(mrn: patient.patientMRN);
|
|
|
|
|
} else if (state == ViewState.Idle) {
|
|
|
|
|
Utils.showErrorToast(
|
|
|
|
|
valadteProcedureList[0].entityList[0].warringMessages);
|
|
|
|
|
Utils.showErrorToast(valadteProcedureList[0].entityList[0].warringMessages);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
@ -475,34 +378,23 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool isEntityListSelected(
|
|
|
|
|
cpe.EntityList masterKey, List<cpe.EntityList> entityList) {
|
|
|
|
|
Iterable<cpe.EntityList> history = entityList
|
|
|
|
|
.where((element) => masterKey.procedureId == element.procedureId);
|
|
|
|
|
bool isEntityListSelected(cpe.EntityList masterKey, List<cpe.EntityList> entityList) {
|
|
|
|
|
Iterable<cpe.EntityList> history = entityList.where((element) => masterKey.procedureId == element.procedureId);
|
|
|
|
|
if (history.length > 0) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool isProcedureEntityListSelected(ProcedureTempleteDetailsModel masterKey,
|
|
|
|
|
List<ProcedureTempleteDetailsModel> entityList) {
|
|
|
|
|
Iterable<ProcedureTempleteDetailsModel> history = entityList.where(
|
|
|
|
|
(element) =>
|
|
|
|
|
masterKey.templateID == element.templateID &&
|
|
|
|
|
masterKey.procedureName == element.procedureName);
|
|
|
|
|
bool isProcedureEntityListSelected(ProcedureTempleteDetailsModel masterKey, List<ProcedureTempleteDetailsModel> entityList) {
|
|
|
|
|
Iterable<ProcedureTempleteDetailsModel> history = entityList.where((element) => masterKey.templateID == element.templateID && masterKey.procedureName == element.procedureName);
|
|
|
|
|
if (history.length > 0) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future addProcedures(
|
|
|
|
|
ProcedureViewModel model,
|
|
|
|
|
List<ProcedureTempleteDetailsModel> items,
|
|
|
|
|
PatiantInformtion patient,
|
|
|
|
|
TextEditingController remarksController,
|
|
|
|
|
{bool isLocalBusy = false}) async {
|
|
|
|
|
Future addProcedures(ProcedureViewModel model, List<ProcedureTempleteDetailsModel> items, PatiantInformtion patient, TextEditingController remarksController, {bool isLocalBusy = false}) async {
|
|
|
|
|
if (isLocalBusy) {
|
|
|
|
|
setState(ViewState.BusyLocal);
|
|
|
|
|
} else {
|
|
|
|
|
@ -523,15 +415,10 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
eventCategory: "Procedure Checkout Screen",
|
|
|
|
|
eventAction: "Add New Procedure",
|
|
|
|
|
);
|
|
|
|
|
await model.preparePostProcedure(
|
|
|
|
|
entityList: entityList,
|
|
|
|
|
patient: patient,
|
|
|
|
|
remarks: remarksController.text,
|
|
|
|
|
isLocalBusy: isLocalBusy);
|
|
|
|
|
await model.preparePostProcedure(entityList: entityList, patient: patient, remarks: remarksController.text, isLocalBusy: isLocalBusy);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Future filterSearchResults(String query, List<cpe.EntityList> masterList,
|
|
|
|
|
List<cpe.EntityList> items) async {
|
|
|
|
|
Future filterSearchResults(String query, List<cpe.EntityList> masterList, List<cpe.EntityList> items) async {
|
|
|
|
|
List<cpe.EntityList> dummySearchList = List();
|
|
|
|
|
dummySearchList.addAll(masterList);
|
|
|
|
|
if (query.isNotEmpty) {
|
|
|
|
|
@ -549,13 +436,9 @@ class ProcedureViewModel extends BaseViewModel {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void filterProcedureSearchResults(
|
|
|
|
|
String query,
|
|
|
|
|
List<ProcedureTempleteModel> masterList,
|
|
|
|
|
List<ProcedureTempleteModel> items) {
|
|
|
|
|
void filterProcedureSearchResults(String query, List<ProcedureTempleteModel> masterList, List<ProcedureTempleteModel> items) {
|
|
|
|
|
List<ProcedureTempleteModel> dummySearchList = List();
|
|
|
|
|
if(masterList!= null)
|
|
|
|
|
dummySearchList.addAll(masterList);
|
|
|
|
|
if (masterList != null) dummySearchList.addAll(masterList);
|
|
|
|
|
if (query.isNotEmpty) {
|
|
|
|
|
List<ProcedureTempleteModel> dummyListData = List();
|
|
|
|
|
dummySearchList.forEach((item) {
|
|
|
|
|
|