diff --git a/lib/config/config.dart b/lib/config/config.dart index 49b33063..53588ac1 100644 --- a/lib/config/config.dart +++ b/lib/config/config.dart @@ -19,12 +19,15 @@ const PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara'; const BASE_URL = 'https://hmgwebservices.com/'; // Pharmacy UAT URLs - const BASE_PHARMACY_URL = 'https://uat.hmgwebservices.com/epharmacy/api/'; - const PHARMACY_BASE_URL = 'https://uat.hmgwebservices.com/epharmacy/api/'; +// const BASE_PHARMACY_URL = 'https://uat.hmgwebservices.com/epharmacy/api/'; +// const PHARMACY_BASE_URL = 'https://uat.hmgwebservices.com/epharmacy/api/'; // // Pharmacy Production URLs -// const BASE_PHARMACY_URL = 'https://mdlaboratories.com/exacartapi/api/'; -// const PHARMACY_BASE_URL = 'https://mdlaboratories.com/exacartapi/api/'; +const BASE_PHARMACY_URL = 'https://mdlaboratories.com/exacartapi/api/'; +const PHARMACY_BASE_URL = 'https://mdlaboratories.com/exacartapi/api/'; + +// RC API URL +const RC_BASE_URL = 'https://livecare.hmg.com/'; const PING_SERVICE = 'Services/Weather.svc/REST/CheckConnectivity'; @@ -462,6 +465,7 @@ const UPDATE_RRT_ORDER_RC = 'rc/api/rrt/update'; // PRESCRIPTION RC SERVICES const ADD_PRESCRIPTION_ORDER_RC = "rc/api/prescription/add"; const GET_ALL_PRESCRIPTION_ORDERS_RC = "rc/api/prescription/list"; +const GET_ALL_PRESCRIPTION_INFO_RC = "rc/api/Prescription/info"; const UPDATE_PRESCRIPTION_ORDER_RC = 'rc/api/prescription/update'; diff --git a/lib/core/model/er/AmbulanceRequestOrdersModel.dart b/lib/core/model/er/AmbulanceRequestOrdersModel.dart index 6bcc02b0..72a3fd5f 100644 --- a/lib/core/model/er/AmbulanceRequestOrdersModel.dart +++ b/lib/core/model/er/AmbulanceRequestOrdersModel.dart @@ -1,26 +1,27 @@ class AmbulanceRequestOrdersModel { String statusText; - int paymentStatus; + num paymentStatus; dynamic clientRequestid; dynamic paymentStatusText; dynamic projectName; String nearestProjectName; - double paymentAmount; + num paymentAmount; WFOrder wFOrder; String serviceText; bool isSentForApproval; - int exaCartOrderId; + num exaCartOrderId; + String exaCartGUID; bool isTimer; - int timeSeconds; - int totalPendingSeconds; - int timeMinute; - int timeHour; - int timeTotalSeconds; - int timeTotalMinute; - int timeTotalHour; + num timeSeconds; + num totalPendingSeconds; + num timeMinute; + num timeHour; + num timeTotalSeconds; + num timeTotalMinute; + num timeTotalHour; dynamic approvalStatus; bool isActive; - int clickButton; + num clickButton; dynamic orderHistory; String pickupLocation; String dropOffLocation; @@ -28,22 +29,21 @@ class AmbulanceRequestOrdersModel { String doctorName; String branch; String time; - dynamic notes; - int id; - String patientId; - int patientOutSa; + String notes; + num iD; + num patientId; + num patientOutSa; bool isOutPatient; - int projectId; - int nearestProjectId; + num projectId; + num nearestProjectId; dynamic longitude; dynamic latitude; dynamic appointmentNo; dynamic dischargeId; - int statusId; - int serviceId; - int channel; + num statusId; + num serviceId; + num channel; Orderpayment orderpayment; - dynamic orderselectedservice; dynamic wforder; dynamic orderapprovalobj; String created; @@ -54,266 +54,293 @@ class AmbulanceRequestOrdersModel { AmbulanceRequestOrdersModel( {this.statusText, - this.paymentStatus, - this.clientRequestid, - this.paymentStatusText, - this.projectName, - this.nearestProjectName, - this.paymentAmount, - this.wFOrder, - this.serviceText, - this.isSentForApproval, - this.exaCartOrderId, - this.isTimer, - this.timeSeconds, - this.totalPendingSeconds, - this.timeMinute, - this.timeHour, - this.timeTotalSeconds, - this.timeTotalMinute, - this.timeTotalHour, - this.approvalStatus, - this.isActive, - this.clickButton, - this.orderHistory, - this.pickupLocation, - this.dropOffLocation, - this.clinicName, - this.doctorName, - this.branch, - this.time, - this.notes, - this.id, - this.patientId, - this.patientOutSa, - this.isOutPatient, - this.projectId, - this.nearestProjectId, - this.longitude, - this.latitude, - this.appointmentNo, - this.dischargeId, - this.statusId, - this.serviceId, - this.channel, - this.orderpayment, - this.orderselectedservice, - this.wforder, - this.orderapprovalobj, - this.created, - this.createdBy, - this.modified, - this.modifiedBy, - this.isDeleted}); + this.paymentStatus, + this.clientRequestid, + this.paymentStatusText, + this.projectName, + this.nearestProjectName, + this.paymentAmount, + this.wFOrder, + this.serviceText, + this.isSentForApproval, + this.exaCartOrderId, + this.exaCartGUID, + this.isTimer, + this.timeSeconds, + this.totalPendingSeconds, + this.timeMinute, + this.timeHour, + this.timeTotalSeconds, + this.timeTotalMinute, + this.timeTotalHour, + this.approvalStatus, + this.isActive, + this.clickButton, + this.orderHistory, + this.pickupLocation, + this.dropOffLocation, + this.clinicName, + this.doctorName, + this.branch, + this.time, + this.notes, + this.iD, + this.patientId, + this.patientOutSa, + this.isOutPatient, + this.projectId, + this.nearestProjectId, + this.longitude, + this.latitude, + this.appointmentNo, + this.dischargeId, + this.statusId, + this.serviceId, + this.channel, + this.orderpayment, + this.wforder, + this.orderapprovalobj, + this.created, + this.createdBy, + this.modified, + this.modifiedBy, + this.isDeleted}); AmbulanceRequestOrdersModel.fromJson(Map json) { - statusText = json['statusText']; - paymentStatus = json['paymentStatus']; - clientRequestid = json['clientRequestid']; - paymentStatusText = json['paymentStatusText']; - projectName = json['projectName']; - nearestProjectName = json['nearestProjectName']; - paymentAmount = json['paymentAmount']; - wFOrder = json['wF_order'] != null ? new WFOrder.fromJson(json['wF_order']) : null; - serviceText = json['serviceText']; + statusText = json['StatusText']; + paymentStatus = json['PaymentStatus']; + clientRequestid = json['ClientRequestid']; + paymentStatusText = json['PaymentStatusText']; + projectName = json['ProjectName']; + nearestProjectName = json['NearestProjectName']; + paymentAmount = json['PaymentAmount']; + wFOrder = json['WF_order'] != null + ? new WFOrder.fromJson(json['WF_order']) + : null; + serviceText = json['ServiceText']; isSentForApproval = json['isSentForApproval']; - exaCartOrderId = json['exaCart_OrderId']; + exaCartOrderId = json['ExaCart_OrderId']; + exaCartGUID = json['ExaCart_GUID']; isTimer = json['isTimer']; - timeSeconds = json['timeSeconds']; - totalPendingSeconds = json['totalPendingSeconds']; - timeMinute = json['timeMinute']; - timeHour = json['timeHour']; - timeTotalSeconds = json['timeTotalSeconds']; - timeTotalMinute = json['timeTotalMinute']; - timeTotalHour = json['timeTotalHour']; - approvalStatus = json['approvalStatus']; + timeSeconds = json['TimeSeconds']; + totalPendingSeconds = json['TotalPendingSeconds']; + timeMinute = json['TimeMinute']; + timeHour = json['TimeHour']; + timeTotalSeconds = json['TimeTotalSeconds']; + timeTotalMinute = json['TimeTotalMinute']; + timeTotalHour = json['TimeTotalHour']; + approvalStatus = json['ApprovalStatus']; isActive = json['isActive']; - clickButton = json['clickButton']; - orderHistory = json['orderHistory']; - pickupLocation = json['pickupLocation']; - dropOffLocation = json['dropOffLocation']; + clickButton = json['ClickButton']; + orderHistory = json['OrderHistory']; + pickupLocation = json['PickupLocation']; + dropOffLocation = json['DropOffLocation']; clinicName = json['clinicName']; - doctorName = json['doctorName']; - branch = json['branch']; - time = json['time']; - notes = json['notes']; - id = json['id']; - patientId = json['patientId']; - patientOutSa = json['patientOutSa']; - isOutPatient = json['isOutPatient']; - projectId = json['projectId']; - nearestProjectId = json['nearestProjectId']; - longitude = json['longitude']; - latitude = json['latitude']; - appointmentNo = json['appointmentNo']; - dischargeId = json['dischargeId']; - statusId = json['statusId']; - serviceId = json['serviceId']; - channel = json['channel']; - orderpayment = json['orderpayment'] != null ? new Orderpayment.fromJson(json['orderpayment']) : null; - orderselectedservice = json['orderselectedservice']; + doctorName = json['DoctorName']; + branch = json['Branch']; + time = json['Time']; + notes = json['Notes']; + iD = json['ID']; + patientId = json['PatientId']; + patientOutSa = json['PatientOutSa']; + isOutPatient = json['IsOutPatient']; + projectId = json['ProjectId']; + nearestProjectId = json['NearestProjectId']; + longitude = json['Longitude']; + latitude = json['Latitude']; + appointmentNo = json['AppointmentNo']; + dischargeId = json['DischargeId']; + statusId = json['StatusId']; + serviceId = json['ServiceId']; + channel = json['Channel']; + orderpayment = json['orderpayment'] != null + ? new Orderpayment.fromJson(json['orderpayment']) + : null; wforder = json['wforder']; orderapprovalobj = json['orderapprovalobj']; - created = json['created']; - createdBy = json['createdBy']; - modified = json['modified']; - modifiedBy = json['modifiedBy']; - isDeleted = json['isDeleted']; + created = json['Created']; + createdBy = json['CreatedBy']; + modified = json['Modified']; + modifiedBy = json['ModifiedBy']; + isDeleted = json['IsDeleted']; } Map toJson() { final Map data = new Map(); - data['statusText'] = this.statusText; - data['paymentStatus'] = this.paymentStatus; - data['clientRequestid'] = this.clientRequestid; - data['paymentStatusText'] = this.paymentStatusText; - data['projectName'] = this.projectName; - data['nearestProjectName'] = this.nearestProjectName; - data['paymentAmount'] = this.paymentAmount; + data['StatusText'] = this.statusText; + data['PaymentStatus'] = this.paymentStatus; + data['ClientRequestid'] = this.clientRequestid; + data['PaymentStatusText'] = this.paymentStatusText; + data['ProjectName'] = this.projectName; + data['NearestProjectName'] = this.nearestProjectName; + data['PaymentAmount'] = this.paymentAmount; if (this.wFOrder != null) { - data['wF_order'] = this.wFOrder.toJson(); + data['WF_order'] = this.wFOrder.toJson(); } - data['serviceText'] = this.serviceText; + data['ServiceText'] = this.serviceText; data['isSentForApproval'] = this.isSentForApproval; - data['exaCart_OrderId'] = this.exaCartOrderId; + data['ExaCart_OrderId'] = this.exaCartOrderId; + data['ExaCart_GUID'] = this.exaCartGUID; data['isTimer'] = this.isTimer; - data['timeSeconds'] = this.timeSeconds; - data['totalPendingSeconds'] = this.totalPendingSeconds; - data['timeMinute'] = this.timeMinute; - data['timeHour'] = this.timeHour; - data['timeTotalSeconds'] = this.timeTotalSeconds; - data['timeTotalMinute'] = this.timeTotalMinute; - data['timeTotalHour'] = this.timeTotalHour; - data['approvalStatus'] = this.approvalStatus; + data['TimeSeconds'] = this.timeSeconds; + data['TotalPendingSeconds'] = this.totalPendingSeconds; + data['TimeMinute'] = this.timeMinute; + data['TimeHour'] = this.timeHour; + data['TimeTotalSeconds'] = this.timeTotalSeconds; + data['TimeTotalMinute'] = this.timeTotalMinute; + data['TimeTotalHour'] = this.timeTotalHour; + data['ApprovalStatus'] = this.approvalStatus; data['isActive'] = this.isActive; - data['clickButton'] = this.clickButton; - data['orderHistory'] = this.orderHistory; - data['pickupLocation'] = this.pickupLocation; - data['dropOffLocation'] = this.dropOffLocation; + data['ClickButton'] = this.clickButton; + data['OrderHistory'] = this.orderHistory; + data['PickupLocation'] = this.pickupLocation; + data['DropOffLocation'] = this.dropOffLocation; data['clinicName'] = this.clinicName; - data['doctorName'] = this.doctorName; - data['branch'] = this.branch; - data['time'] = this.time; - data['notes'] = this.notes; - data['id'] = this.id; - data['patientId'] = this.patientId; - data['patientOutSa'] = this.patientOutSa; - data['isOutPatient'] = this.isOutPatient; - data['projectId'] = this.projectId; - data['nearestProjectId'] = this.nearestProjectId; - data['longitude'] = this.longitude; - data['latitude'] = this.latitude; - data['appointmentNo'] = this.appointmentNo; - data['dischargeId'] = this.dischargeId; - data['statusId'] = this.statusId; - data['serviceId'] = this.serviceId; - data['channel'] = this.channel; + data['DoctorName'] = this.doctorName; + data['Branch'] = this.branch; + data['Time'] = this.time; + data['Notes'] = this.notes; + data['ID'] = this.iD; + data['PatientId'] = this.patientId; + data['PatientOutSa'] = this.patientOutSa; + data['IsOutPatient'] = this.isOutPatient; + data['ProjectId'] = this.projectId; + data['NearestProjectId'] = this.nearestProjectId; + data['Longitude'] = this.longitude; + data['Latitude'] = this.latitude; + data['AppointmentNo'] = this.appointmentNo; + data['DischargeId'] = this.dischargeId; + data['StatusId'] = this.statusId; + data['ServiceId'] = this.serviceId; + data['Channel'] = this.channel; if (this.orderpayment != null) { data['orderpayment'] = this.orderpayment.toJson(); } - data['orderselectedservice'] = this.orderselectedservice; data['wforder'] = this.wforder; data['orderapprovalobj'] = this.orderapprovalobj; - data['created'] = this.created; - data['createdBy'] = this.createdBy; - data['modified'] = this.modified; - data['modifiedBy'] = this.modifiedBy; - data['isDeleted'] = this.isDeleted; + data['Created'] = this.created; + data['CreatedBy'] = this.createdBy; + data['Modified'] = this.modified; + data['ModifiedBy'] = this.modifiedBy; + data['IsDeleted'] = this.isDeleted; return data; } } class WFOrder { - dynamic wfButtonsDTO; - int id; - int orderId; - int previousStep; - int nextStep; - int serviceId; - dynamic order; + Null wfButtonsDTO; + num iD; + num orderId; + num previousStep; + num nextStep; + num serviceId; + Null order; String created; - dynamic createdBy; - dynamic modified; - dynamic modifiedBy; + Null createdBy; + Null modified; + Null modifiedBy; bool isDeleted; - WFOrder({this.wfButtonsDTO, this.id, this.orderId, this.previousStep, this.nextStep, this.serviceId, this.order, this.created, this.createdBy, this.modified, this.modifiedBy, this.isDeleted}); + WFOrder( + {this.wfButtonsDTO, + this.iD, + this.orderId, + this.previousStep, + this.nextStep, + this.serviceId, + this.order, + this.created, + this.createdBy, + this.modified, + this.modifiedBy, + this.isDeleted}); WFOrder.fromJson(Map json) { wfButtonsDTO = json['wf_ButtonsDTO']; - id = json['id']; - orderId = json['orderId']; - previousStep = json['previousStep']; - nextStep = json['nextStep']; - serviceId = json['serviceId']; - order = json['order']; - created = json['created']; - createdBy = json['createdBy']; - modified = json['modified']; - modifiedBy = json['modifiedBy']; - isDeleted = json['isDeleted']; + iD = json['ID']; + orderId = json['OrderId']; + previousStep = json['PreviousStep']; + nextStep = json['NextStep']; + serviceId = json['ServiceId']; + order = json['Order']; + created = json['Created']; + createdBy = json['CreatedBy']; + modified = json['Modified']; + modifiedBy = json['ModifiedBy']; + isDeleted = json['IsDeleted']; } Map toJson() { final Map data = new Map(); data['wf_ButtonsDTO'] = this.wfButtonsDTO; - data['id'] = this.id; - data['orderId'] = this.orderId; - data['previousStep'] = this.previousStep; - data['nextStep'] = this.nextStep; - data['serviceId'] = this.serviceId; - data['order'] = this.order; - data['created'] = this.created; - data['createdBy'] = this.createdBy; - data['modified'] = this.modified; - data['modifiedBy'] = this.modifiedBy; - data['isDeleted'] = this.isDeleted; + data['ID'] = this.iD; + data['OrderId'] = this.orderId; + data['PreviousStep'] = this.previousStep; + data['NextStep'] = this.nextStep; + data['ServiceId'] = this.serviceId; + data['Order'] = this.order; + data['Created'] = this.created; + data['CreatedBy'] = this.createdBy; + data['Modified'] = this.modified; + data['ModifiedBy'] = this.modifiedBy; + data['IsDeleted'] = this.isDeleted; return data; } } class Orderpayment { - int id; - int orderId; - dynamic clientRequestId; - double totalAmount; - int paymentStatus; - dynamic order; + num iD; + num orderId; + Null clientRequestId; + num totalAmount; + num paymentStatus; + Null order; String created; - dynamic createdBy; - dynamic modified; - dynamic modifiedBy; + Null createdBy; + Null modified; + Null modifiedBy; bool isDeleted; - Orderpayment({this.id, this.orderId, this.clientRequestId, this.totalAmount, this.paymentStatus, this.order, this.created, this.createdBy, this.modified, this.modifiedBy, this.isDeleted}); + Orderpayment( + {this.iD, + this.orderId, + this.clientRequestId, + this.totalAmount, + this.paymentStatus, + this.order, + this.created, + this.createdBy, + this.modified, + this.modifiedBy, + this.isDeleted}); Orderpayment.fromJson(Map json) { - id = json['id']; - orderId = json['orderId']; - clientRequestId = json['clientRequestId']; - totalAmount = json['totalAmount']; - paymentStatus = json['paymentStatus']; - order = json['order']; - created = json['created']; - createdBy = json['createdBy']; - modified = json['modified']; - modifiedBy = json['modifiedBy']; - isDeleted = json['isDeleted']; + iD = json['ID']; + orderId = json['OrderId']; + clientRequestId = json['ClientRequestId']; + totalAmount = json['TotalAmount']; + paymentStatus = json['PaymentStatus']; + order = json['Order']; + created = json['Created']; + createdBy = json['CreatedBy']; + modified = json['Modified']; + modifiedBy = json['ModifiedBy']; + isDeleted = json['IsDeleted']; } Map toJson() { final Map data = new Map(); - data['id'] = this.id; - data['orderId'] = this.orderId; - data['clientRequestId'] = this.clientRequestId; - data['totalAmount'] = this.totalAmount; - data['paymentStatus'] = this.paymentStatus; - data['order'] = this.order; - data['created'] = this.created; - data['createdBy'] = this.createdBy; - data['modified'] = this.modified; - data['modifiedBy'] = this.modifiedBy; - data['isDeleted'] = this.isDeleted; + data['ID'] = this.iD; + data['OrderId'] = this.orderId; + data['ClientRequestId'] = this.clientRequestId; + data['TotalAmount'] = this.totalAmount; + data['PaymentStatus'] = this.paymentStatus; + data['Order'] = this.order; + data['Created'] = this.created; + data['CreatedBy'] = this.createdBy; + data['Modified'] = this.modified; + data['ModifiedBy'] = this.modifiedBy; + data['IsDeleted'] = this.isDeleted; return data; } } diff --git a/lib/core/model/er/PatientER_RC.dart b/lib/core/model/er/PatientER_RC.dart index ec564128..6abec2d6 100644 --- a/lib/core/model/er/PatientER_RC.dart +++ b/lib/core/model/er/PatientER_RC.dart @@ -10,7 +10,7 @@ class PatientER_RC { String sessionID; bool isDentalAllowedBackend; int deviceTypeID; - String patientID; + int patientID; String tokenID; int patientTypeID; int patientType; diff --git a/lib/core/model/er/get_all_transportation_method_list_model.dart b/lib/core/model/er/get_all_transportation_method_list_model.dart index 1f0a91c3..530b4f25 100644 --- a/lib/core/model/er/get_all_transportation_method_list_model.dart +++ b/lib/core/model/er/get_all_transportation_method_list_model.dart @@ -1,5 +1,5 @@ class PatientERTransportationMethod { - int id; + int iD; String serviceID; int orderServiceID; String text; @@ -12,7 +12,7 @@ class PatientERTransportationMethod { int quantity; PatientERTransportationMethod( - {this.id, + {this.iD, this.serviceID, this.orderServiceID, this.text, @@ -25,32 +25,32 @@ class PatientERTransportationMethod { this.quantity}); PatientERTransportationMethod.fromJson(Map json) { - id = json['id']; - serviceID = json['serviceID']; - orderServiceID = json['orderServiceID']; - text = json['text']; - textN = json['textN']; - price = json['price']; - priceVAT = json['priceVAT']; - priceTotal = json['priceTotal']; - isEnabled = json['isEnabled']; - orderId = json['orderId']; - quantity = json['quantity']; + iD = json['ID']; + serviceID = json['ServiceID']; + orderServiceID = json['OrderServiceID']; + text = json['Text']; + textN = json['TextN']; + price = json['Price']; + priceVAT = json['PriceVAT']; + priceTotal = json['PriceTotal']; + isEnabled = json['IsEnabled']; + orderId = json['OrderId']; + quantity = json['Quantity']; } Map toJson() { final Map data = new Map(); - data['id'] = this.id; - data['serviceID'] = this.serviceID; - data['orderServiceID'] = this.orderServiceID; - data['text'] = this.text; - data['textN'] = this.textN; - data['price'] = this.price; - data['priceVAT'] = this.priceVAT; - data['priceTotal'] = this.priceTotal; - data['isEnabled'] = this.isEnabled; - data['orderId'] = this.orderId; - data['quantity'] = this.quantity; + data['ID'] = this.iD; + data['ServiceID'] = this.serviceID; + data['OrderServiceID'] = this.orderServiceID; + data['Text'] = this.text; + data['TextN'] = this.textN; + data['Price'] = this.price; + data['PriceVAT'] = this.priceVAT; + data['PriceTotal'] = this.priceTotal; + data['IsEnabled'] = this.isEnabled; + data['OrderId'] = this.orderId; + data['Quantity'] = this.quantity; return data; } } diff --git a/lib/core/model/prescriptions/prescription_info_rc_model.dart b/lib/core/model/prescriptions/prescription_info_rc_model.dart new file mode 100644 index 00000000..23c4ad55 --- /dev/null +++ b/lib/core/model/prescriptions/prescription_info_rc_model.dart @@ -0,0 +1,52 @@ +class PrescriptionInfoRCModel { + String itemDescription; + String image; + String sKU; + dynamic productId; + dynamic productName; + int quantity; + int orderId; + int totalPrice; + int dispenseQuantity; + dynamic itemhand; + + PrescriptionInfoRCModel( + {this.itemDescription, + this.image, + this.sKU, + this.productId, + this.productName, + this.quantity, + this.orderId, + this.totalPrice, + this.dispenseQuantity, + this.itemhand}); + + PrescriptionInfoRCModel.fromJson(Map json) { + itemDescription = json['ItemDescription']; + image = json['image']; + sKU = json['SKU']; + productId = json['ProductId']; + productName = json['ProductName']; + quantity = json['Quantity']; + orderId = json['OrderId']; + totalPrice = json['TotalPrice']; + dispenseQuantity = json['DispenseQuantity']; + itemhand = json['itemhand']; + } + + Map toJson() { + final Map data = new Map(); + data['ItemDescription'] = this.itemDescription; + data['image'] = this.image; + data['SKU'] = this.sKU; + data['ProductId'] = this.productId; + data['ProductName'] = this.productName; + data['Quantity'] = this.quantity; + data['OrderId'] = this.orderId; + data['TotalPrice'] = this.totalPrice; + data['DispenseQuantity'] = this.dispenseQuantity; + data['itemhand'] = this.itemhand; + return data; + } +} diff --git a/lib/core/service/AlHabibMedicalService/cmc_service.dart b/lib/core/service/AlHabibMedicalService/cmc_service.dart index 7fc23cc9..c6c2d82f 100644 --- a/lib/core/service/AlHabibMedicalService/cmc_service.dart +++ b/lib/core/service/AlHabibMedicalService/cmc_service.dart @@ -28,7 +28,7 @@ class CMCService extends BaseService { hasError = false; // RC IMPLEMENTATION - await baseAppClient.post(GET_ALL_CMC_SERVICES_RC + "?patientID=" + user.patientID.toString(), isAllowAny: true, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(GET_ALL_CMC_SERVICES_RC + "?patientID=" + user.patientID.toString(), isRCService: true, isAllowAny: true, onSuccess: (dynamic response, int statusCode) { cmcAllServicesList.clear(); response['response'].forEach((data) { cmcAllServicesList.add(GetCMCServicesResponseModel.fromJson(data)); @@ -67,7 +67,7 @@ class CMCService extends BaseService { Future getCmcAllPresOrdersRC() async { GetHHCAllPresOrdersRequestModel getHHCAllPresOrdersRequestModel = GetHHCAllPresOrdersRequestModel(); hasError = false; - await baseAppClient.post(GET_ALL_CMC_ORDERS_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(GET_ALL_CMC_ORDERS_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { cmcAllPresOrdersList.clear(); cmcAllOrderDetail.clear(); @@ -122,7 +122,7 @@ class CMCService extends BaseService { Future updateCmcPresOrderRC(UpdatePresOrderRequestModel updatePresOrderRequestModel) async { hasError = false; - await baseAppClient.post(UPDATE_CMC_ORDER_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(UPDATE_CMC_ORDER_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { isOrderUpdated = true; }, onFailure: (String error, int statusCode) { hasError = true; @@ -133,7 +133,7 @@ class CMCService extends BaseService { Future insertCMCOrderRC({CMCInsertPresOrderRequestModel order}) async { hasError = false; String reqId = ""; - await baseAppClient.post(ADD_CMC_ORDER_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(ADD_CMC_ORDER_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { isOrderUpdated = true; reqId = response['response'].toString(); }, onFailure: (String error, int statusCode) { diff --git a/lib/core/service/AlHabibMedicalService/home_health_care_service.dart b/lib/core/service/AlHabibMedicalService/home_health_care_service.dart index cd90dae5..99220b07 100644 --- a/lib/core/service/AlHabibMedicalService/home_health_care_service.dart +++ b/lib/core/service/AlHabibMedicalService/home_health_care_service.dart @@ -38,7 +38,7 @@ class HomeHealthCareService extends BaseService { Future getHHCAllServicesRC(HHCGetAllServicesRequestModel hHCGetAllServicesRequestModel) async { hasError = false; - await baseAppClient.post(HHC_GET_ALL_SERVICES_RC + "?PatientID=" + user.patientID.toString(), onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(HHC_GET_ALL_SERVICES_RC + "?PatientID=" + user.patientID.toString(), isRCService: true, onSuccess: (dynamic response, int statusCode) { hhcAllServicesList.clear(); response['response'].forEach((data) { hhcAllServicesList.add(HHCGetAllServicesResponseModel.fromJson(data)); @@ -52,7 +52,7 @@ class HomeHealthCareService extends BaseService { Future getHHCAllPresOrdersRC() async { GetHHCAllPresOrdersRequestModel getHHCAllPresOrdersRequestModel = GetHHCAllPresOrdersRequestModel(); hasError = false; - await baseAppClient.post(GET_ALL_HHC_ORDERS_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(GET_ALL_HHC_ORDERS_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { hhcAllPresOrdersList.clear(); hhcAllOrderDetail.clear(); response['response'].forEach((data) { @@ -106,7 +106,7 @@ class HomeHealthCareService extends BaseService { Future updateHHCPresOrderRC(UpdatePresOrderRequestModel updatePresOrderRequestModel) async { hasError = false; - await baseAppClient.post(UPDATE_HHC_ORDER_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(UPDATE_HHC_ORDER_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { isOrderUpdated = true; }, onFailure: (String error, int statusCode) { hasError = true; @@ -127,7 +127,7 @@ class HomeHealthCareService extends BaseService { Future insertHHCOrderRC({PatientERInsertPresOrderRequestModel order}) async { hasError = false; - await baseAppClient.post(ADD_HHC_ORDER_RC, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(ADD_HHC_ORDER_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) { hhcResponse = response; requestNo = response["response"]; }, onFailure: (String error, int statusCode) { diff --git a/lib/core/service/client/base_app_client.dart b/lib/core/service/client/base_app_client.dart index 19c8eac2..696cda28 100644 --- a/lib/core/service/client/base_app_client.dart +++ b/lib/core/service/client/base_app_client.dart @@ -35,12 +35,20 @@ VitalSignService _vitalSignService = locator(); class BaseAppClient { post(String endPoint, - {Map body, Function(dynamic response, int statusCode) onSuccess, Function(String error, int statusCode) onFailure, bool isAllowAny = false, bool isExternal = false}) async { + {Map body, + Function(dynamic response, int statusCode) onSuccess, + Function(String error, int statusCode) onFailure, + bool isAllowAny = false, + bool isExternal = false, + bool isRCService = false}) async { String url; if (isExternal) { url = endPoint; } else { - url = BASE_URL + endPoint; + if (isRCService) + url = RC_BASE_URL + endPoint; + else + url = BASE_URL + endPoint; } try { //Map profile = await sharedPref.getObj(DOCTOR_PROFILE); @@ -376,12 +384,20 @@ class BaseAppClient { Navigator.pushReplacement(context, FadePage(page: AppUpdatePage(appUpdateText: text))); } - get(String endPoint, {Function(dynamic response, int statusCode) onSuccess, Function(String error, int statusCode) onFailure, Map queryParams, bool isExternal = false}) async { + get(String endPoint, + {Function(dynamic response, int statusCode) onSuccess, + Function(String error, int statusCode) onFailure, + Map queryParams, + bool isExternal = false, + bool isRCService = false}) async { String url; if (isExternal) { url = endPoint; } else { - url = BASE_URL + endPoint; + if (isRCService) + url = RC_BASE_URL + endPoint; + else + url = BASE_URL + endPoint; } if (queryParams != null) { String queryString = Uri(queryParameters: queryParams).query; diff --git a/lib/core/service/er/am_service.dart b/lib/core/service/er/am_service.dart index 9c66d373..a76ae73a 100644 --- a/lib/core/service/er/am_service.dart +++ b/lib/core/service/er/am_service.dart @@ -28,9 +28,9 @@ class AmService extends BaseService { Map body = Map(); body['isDentalAllowedBackend'] = false; body['IdentificationNo'] = user.patientIdentificationNo; - await baseAppClient.get(GET_ALL_TRANSPORTATIONS_RC + "?patientID=" + user.patientID.toString(), isExternal: false, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.get(GET_ALL_TRANSPORTATIONS_RC + "?patientID=" + user.patientID.toString(), isRCService: true, isExternal: false, onSuccess: (dynamic response, int statusCode) { amModelList.clear(); - response['data']['transportationservices'].forEach((item) { + response['response']['transportationservices'].forEach((item) { amModelList.add(PatientERTransportationMethod.fromJson(item)); }); }, onFailure: (String error, int statusCode) { @@ -69,18 +69,18 @@ class AmService extends BaseService { pickUpRequestPresOrder = null; Map body = Map(); - body['patientId'] = patientID.toString(); - body['PatientID'] = patientID.toString(); + body['patientId'] = patientID; + body['PatientID'] = patientID; - await baseAppClient.post(GET_ALL_TRANSPORTATIONS_ORDERS, onSuccess: (dynamic response, int statusCode) { + await baseAppClient.post(GET_ALL_TRANSPORTATIONS_ORDERS, isRCService: true, onSuccess: (dynamic response, int statusCode) { patientAmbulanceRequestOrdersList.clear(); hasPendingOrder = false; pendingOrderID = 0; pendingAmbulanceRequestOrder = null; - response['data'].forEach((item) { + response['response'].forEach((item) { patientAmbulanceRequestOrdersList.add(AmbulanceRequestOrdersModel.fromJson(item)); - if (item['statusId'] == 1) { + if (item['StatusId'] == 1) { hasPendingOrder = true; pendingOrderID = item['orderpayment']['id']; pendingOrderStatus = item['statusText']; @@ -127,14 +127,14 @@ class AmService extends BaseService { }, body: body); } - Future updatePressOrderRC({@required int presOrderID, @required String patientID}) async { + Future updatePressOrderRC({@required int presOrderID, @required int patientID}) async { hasError = false; Map body = Map(); body['Id'] = presOrderID; body['StatusId'] = 6; body['ClickButton'] = 14; body['PatientID'] = patientID; - await baseAppClient.post(CANCEL_AMBULANCE_REQUEST, onSuccess: (dynamic response, int statusCode) {}, onFailure: (String error, int statusCode) { + await baseAppClient.post(CANCEL_AMBULANCE_REQUEST, isRCService: true, onSuccess: (dynamic response, int statusCode) {}, onFailure: (String error, int statusCode) { hasError = true; super.error = error; }, body: body); @@ -146,7 +146,7 @@ class AmService extends BaseService { var body = patientER.toJson(); print(body); - await baseAppClient.post(INSERT_TRANSPORTATION_ORDER_RC, onSuccess: (dynamic response, int statusCode) {}, onFailure: (String error, int statusCode) { + await baseAppClient.post(INSERT_TRANSPORTATION_ORDER_RC, isRCService: true, onSuccess: (dynamic response, int statusCode) {}, onFailure: (String error, int statusCode) { hasError = true; super.error = error; }, body: body); diff --git a/lib/core/service/medical/prescriptions_service.dart b/lib/core/service/medical/prescriptions_service.dart index 48c4f1bf..4349f218 100644 --- a/lib/core/service/medical/prescriptions_service.dart +++ b/lib/core/service/medical/prescriptions_service.dart @@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/GetCMCAllOrdersResponseModel.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/Prescriptions.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/perscription_pharmacy.dart'; +import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_info_rc_model.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_enh.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_inp.dart'; @@ -18,6 +19,7 @@ class PrescriptionsService extends BaseService { List prescriptionsList = List(); List prescriptionReportListINP = List(); List prescriptionsOrderList = List(); + List prescriptionsOrderListRC = List(); var isMedDeliveryAllowed; Future getPrescriptions() async { @@ -49,6 +51,20 @@ class PrescriptionsService extends BaseService { }, body: body); } + Future getPrescriptionsInfoRC(int orderID, dynamic patientID) async { + prescriptionsOrderListRC.clear(); + Map body = Map(); + body['ID'] = orderID; + await baseAppClient.post(GET_ALL_PRESCRIPTION_INFO_RC + "?PatientId=" + patientID.toString(), onSuccess: (dynamic response, int statusCode) { + response['response']['report'].forEach((prescriptionsOrder) { + prescriptionsOrderListRC.add(PrescriptionInfoRCModel.fromJson(prescriptionsOrder)); + }); + }, onFailure: (String error, int statusCode) { + hasError = true; + super.error = error; + }, body: body); + } + Future getPrescriptionsOrdersRC() async { prescriptionsOrderList.clear(); Map body = Map(); @@ -162,7 +178,6 @@ class PrescriptionsService extends BaseService { List prescriptionReportEnhList = List(); Future getPrescriptionReportEnh({PrescriptionsOrder prescriptionsOrder}) async { - ///This logic copy from the old app from class [order-history.component.ts] in line 45 bool isInPatient = false; prescriptionsList.forEach((element) { if (prescriptionsOrder.appointmentNo == "0") { @@ -184,8 +199,6 @@ class PrescriptionsService extends BaseService { _requestPrescriptionReportEnh.setupID = element.setupID; _requestPrescriptionReportEnh.dischargeNo = element.dischargeNo; isInPatient = element.isInOutPatient; - - ///call inpGetPrescriptionReport } } }); @@ -212,6 +225,19 @@ class PrescriptionsService extends BaseService { }, body: _requestPrescriptionReportEnh.toJson()); } + Future updatePressOrderRC({@required int presOrderID, @required String patientID}) async { + hasError = false; + Map body = Map(); + body['Id'] = presOrderID; + body['StatusId'] = 6; + body['ClickButton'] = 14; + body['PatientID'] = patientID; + await baseAppClient.post(UPDATE_PRESCRIPTION_ORDER_RC, onSuccess: (dynamic response, int statusCode) {}, onFailure: (String error, int statusCode) { + hasError = true; + super.error = error; + }, body: body); + } + Future updatePressOrder({@required int presOrderID}) async { hasError = false; Map body = Map(); diff --git a/lib/core/viewModels/er/am_request_view_model.dart b/lib/core/viewModels/er/am_request_view_model.dart index ac1b934e..aff532d7 100644 --- a/lib/core/viewModels/er/am_request_view_model.dart +++ b/lib/core/viewModels/er/am_request_view_model.dart @@ -106,7 +106,7 @@ class AmRequestViewModel extends BaseViewModel { Future updatePressOrder({@required int presOrderID}) async { setState(ViewState.Busy); // await _amService.updatePressOrder(presOrderID: presOrderID); - await _amService.updatePressOrderRC(presOrderID: presOrderID, patientID: authenticatedUserObject.user.patientID.toString()); + await _amService.updatePressOrderRC(presOrderID: presOrderID, patientID: authenticatedUserObject.user.patientID); if (_amService.hasError) { error = _amService.error; setState(ViewState.Error); diff --git a/lib/core/viewModels/er/rrt-view-model.dart b/lib/core/viewModels/er/rrt-view-model.dart index 60411fab..093c29b6 100644 --- a/lib/core/viewModels/er/rrt-view-model.dart +++ b/lib/core/viewModels/er/rrt-view-model.dart @@ -62,7 +62,7 @@ class RRTViewModel extends BaseViewModel { // body['OrderServiceID'] = 5; var localRes; int requestNo; - await _service.baseAppClient.post(ADD_RRT_ORDER_RC, body: body, onSuccess: (response, statusCode) { + await _service.baseAppClient.post(ADD_RRT_ORDER_RC, isRCService: true, body: body, onSuccess: (response, statusCode) { requestNo = response['response']; }, onFailure: (error, statusCode) { AppToast.showErrorToast(message: error); @@ -94,7 +94,7 @@ class RRTViewModel extends BaseViewModel { } Future<_RRTServiceData> getAllOrdersRC() async { - await _service.baseAppClient.post(GET_ALL_RRT_ORDERS_RC, body: {}, onSuccess: (response, statusCode) { + await _service.baseAppClient.post(GET_ALL_RRT_ORDERS_RC, isRCService: true, body: {}, onSuccess: (response, statusCode) { var data = response["response"]; rrtServiceData.completedOrders.clear(); rrtServiceData.pendingOrders.clear(); @@ -161,7 +161,7 @@ class RRTViewModel extends BaseViewModel { Future cancelOrderRC(GetCMCAllOrdersResponseModel order, {String reason = ""}) async { Map body = {"Id": order.iD, "ClickButton": 16}; var success = false; - await _service.baseAppClient.post(UPDATE_RRT_ORDER_RC, body: body, onSuccess: (response, statusCode) { + await _service.baseAppClient.post(UPDATE_RRT_ORDER_RC, isRCService: true, body: body, onSuccess: (response, statusCode) { success = true; rrtServiceData.pendingOrders.remove(order); }, onFailure: (error, statusCode) { diff --git a/lib/core/viewModels/medical/prescriptions_view_model.dart b/lib/core/viewModels/medical/prescriptions_view_model.dart index be6153bd..f480fb56 100644 --- a/lib/core/viewModels/medical/prescriptions_view_model.dart +++ b/lib/core/viewModels/medical/prescriptions_view_model.dart @@ -1,5 +1,6 @@ import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/GetCMCAllOrdersResponseModel.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/perscription_pharmacy.dart'; +import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_info_rc_model.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_enh.dart'; import 'package:diplomaticquarterapp/core/model/prescriptions/prescription_report_inp.dart'; @@ -31,6 +32,10 @@ class PrescriptionsViewModel extends BaseViewModel { List get pharmacyPrescriptionsList => _prescriptionsService.pharmacyPrescriptionsList; + List get prescriptionReportEnhList => _prescriptionsService.prescriptionReportEnhList; + + List get prescriptionsOrderListRC => _prescriptionsService.prescriptionsOrderListRC; + List get prescriptionsOrderList => filterType == FilterType.Clinic ? _prescriptionsOrderListClinic : _prescriptionsOrderListHospital; List prescriptionsOrderListByValue(filterValue) { @@ -131,8 +136,6 @@ class PrescriptionsViewModel extends BaseViewModel { } } - List get prescriptionReportEnhList => _prescriptionsService.prescriptionReportEnhList; - getPrescriptionReportEnh({PrescriptionsOrder prescriptionsOrder}) async { setState(ViewState.Busy); await _prescriptionsService.getPrescriptionReportEnh(prescriptionsOrder: prescriptionsOrder); @@ -144,9 +147,21 @@ class PrescriptionsViewModel extends BaseViewModel { } } + getPrescriptionReportDetailsRC() async { + setState(ViewState.Busy); + await _prescriptionsService.getPrescriptionsInfoRC(4, 2001273); + if (_prescriptionsService.hasError) { + error = _prescriptionsService.error; + setState(ViewState.Error); + } else { + setState(ViewState.Idle); + } + } + Future updatePressOrder({@required int presOrderID}) async { setState(ViewState.Busy); - await _prescriptionsService.updatePressOrder(presOrderID: presOrderID); + // await _prescriptionsService.updatePressOrder(presOrderID: presOrderID); + await _prescriptionsService.updatePressOrderRC(presOrderID: presOrderID); if (_prescriptionsService.hasError) { error = _prescriptionsService.error; setState(ViewState.Error); diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart index d3c7f970..48b904aa 100644 --- a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart +++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart @@ -56,7 +56,7 @@ class OrdersLogDetailsPage extends StatelessWidget { return AppScaffold( isShowAppBar: false, baseViewModel: model, - body: ListView.separated( + body: model.cmcAllPresOrders.length > 0 ? ListView.separated( padding: EdgeInsets.all(21), physics: BouncingScrollPhysics(), itemBuilder: (context, index) { @@ -178,7 +178,7 @@ class OrdersLogDetailsPage extends StatelessWidget { ); }, separatorBuilder: (context, index) => SizedBox(height: 12), - itemCount: model.cmcAllPresOrders.length), + itemCount: model.cmcAllPresOrders.length) : getNoDataWidget(context), ); } } diff --git a/lib/pages/Blood/blood_donation.dart b/lib/pages/Blood/blood_donation.dart index db96a5a1..d9dbcf4b 100644 --- a/lib/pages/Blood/blood_donation.dart +++ b/lib/pages/Blood/blood_donation.dart @@ -3,7 +3,6 @@ import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart'; import 'package:diplomaticquarterapp/core/model/blooddonation/blood_groub_details.dart'; import 'package:diplomaticquarterapp/core/model/blooddonation/get_all_cities.dart'; import 'package:diplomaticquarterapp/core/model/my_balance/AdvanceModel.dart'; -import 'package:diplomaticquarterapp/core/model/my_balance/patient_info.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; @@ -34,8 +33,6 @@ class BloodDonationPage extends StatefulWidget { } class _BloodDonationPageState extends State { - TextEditingController _fileTextController = TextEditingController(); - TextEditingController _notesTextController = TextEditingController(); BeneficiaryType beneficiaryType = BeneficiaryType.NON; CitiesModel _selectedHospital; @@ -43,10 +40,10 @@ class _BloodDonationPageState extends State { int _selectedHospitalIndex = 0; int _selectedGenderIndex = 1; int _selectedBloodTypeIndex = 0; + String _selectedBloodType = "O+"; String amount = ""; String email; - PatientInfo _selectedPatientInfo; AuthenticatedUser authenticatedUser; GetAllSharedRecordsByStatusList selectedPatientFamily; AdvanceModel advanceModel = AdvanceModel(); @@ -71,7 +68,6 @@ class _BloodDonationPageState extends State { int getSelectedCityID(MyBalanceViewModel model) { int cityID = 1; - model.CitiesModelList.forEach((element) { if (element.description == model.bloodModelList[0].city) { cityID = element.iD; @@ -96,6 +92,8 @@ class _BloodDonationPageState extends State { citiesModel.description = model.CitiesModelList[_selectedHospitalIndex].description; citiesModel.descriptionN = model.CitiesModelList[_selectedHospitalIndex].descriptionN; _selectedHospital = citiesModel; + _selectedBloodType = model.bloodModelList[0].bloodGroup; + _selectedBloodTypeIndex = getBloodIndex(_selectedBloodType); } else { _selectedHospital = model.CitiesModelList[0]; } @@ -168,7 +166,7 @@ class _BloodDonationPageState extends State { ); }).withBorderedContainer, SizedBox(height: 12), - CommonDropDownView(TranslationBase.of(context).bloodType, model.bloodModelList.isNotEmpty ? model.bloodModelList[0].bloodGroup : getBlood(_selectedBloodTypeIndex), () { + CommonDropDownView(TranslationBase.of(context).bloodType, _selectedBloodType, () { List list = [ RadioSelectionDialogModel("O+", 0), RadioSelectionDialogModel("O-", 1), @@ -188,6 +186,7 @@ class _BloodDonationPageState extends State { isScrollable: true, onValueSelected: (index) { _selectedBloodTypeIndex = index; + _selectedBloodType = getBlood(index); setState(() {}); }, ), @@ -321,6 +320,41 @@ class _BloodDonationPageState extends State { } } + int getBloodIndex(String type) { + switch (type) { + case "O+": + return 0; + break; + case "O-": + return 1; + break; + case "AB+": + return 2; + break; + case "AB-": + return 3; + break; + case "A+": + return 4; + break; + case "A-": + return 5; + break; + case "B-": + return 6; + break; + case "B-": + return 7; + break; + case "B+": + return 8; + break; + + default: + return 0; + } + } + String getHospitalName(ProjectViewModel projectProvider, BuildContext context) { if (_selectedHospital != null) return projectProvider.isArabic ? _selectedHospital.descriptionN : _selectedHospital.description; diff --git a/lib/pages/DrawerPages/family/add-family-member.dart b/lib/pages/DrawerPages/family/add-family-member.dart index 320ca8d1..9fb20630 100644 --- a/lib/pages/DrawerPages/family/add-family-member.dart +++ b/lib/pages/DrawerPages/family/add-family-member.dart @@ -168,7 +168,10 @@ class _AddMember extends State { request.regionID = 1; } loading(true); - familyFileProvider.insertNewMember(request).then((value) => sendActivationCode(value)); + familyFileProvider.insertNewMember(request).then((value) => sendActivationCode(value)).catchError((err){ + loading(false); + AppToast.showErrorToast(message: err); + }); } sendActivationCode(result) { diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart index bf8cc676..bbae70a5 100644 --- a/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart +++ b/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart @@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/core/model/er/PatientER.dart'; import 'package:diplomaticquarterapp/core/model/er/PatientER_RC.dart'; import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart'; import 'package:diplomaticquarterapp/pages/ErService/widgets/StepsWidget.dart'; +import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart'; import 'package:diplomaticquarterapp/widgets/others/OrderLogItem.dart'; @@ -20,8 +21,7 @@ class AmbulanceRequestIndexPage extends StatefulWidget { AmbulanceRequestIndexPage({Key key, this.amRequestViewModel}); @override - _AmbulanceRequestIndexPageState createState() => - _AmbulanceRequestIndexPageState(); + _AmbulanceRequestIndexPageState createState() => _AmbulanceRequestIndexPageState(); } class _AmbulanceRequestIndexPageState extends State { @@ -37,8 +37,7 @@ class _AmbulanceRequestIndexPageState extends State { setState(() { currentIndex = tab; }); - pageController.animateToPage(tab, - duration: Duration(milliseconds: 800), curve: Curves.easeOutQuart); + pageController.animateToPage(tab, duration: Duration(milliseconds: 800), curve: Curves.easeOutQuart); } @override @@ -53,7 +52,7 @@ class _AmbulanceRequestIndexPageState extends State { return AppScaffold( body: widget.amRequestViewModel.pendingAmbulanceRequestOrder != null ? SingleChildScrollView( - child: Column( + child: Column( children: [ SizedBox( height: 10, @@ -69,9 +68,7 @@ class _AmbulanceRequestIndexPageState extends State { children: [ OrderLogItem( title: TranslationBase.of(context).reqId, - value: widget.amRequestViewModel.pendingAmbulanceRequestOrder - .id - .toString(), + value: widget.amRequestViewModel.pendingAmbulanceRequestOrder.iD.toString(), ), OrderLogItem( title: TranslationBase.of(context).status, @@ -79,22 +76,19 @@ class _AmbulanceRequestIndexPageState extends State { ), OrderLogItem( title: TranslationBase.of(context).pickupDate, - value: getDate(widget.amRequestViewModel.pendingAmbulanceRequestOrder.created), + value: DateUtil.getDayMonthYearDateFormatted(DateTime.tryParse(widget.amRequestViewModel.pendingAmbulanceRequestOrder.created)), ), OrderLogItem( title: TranslationBase.of(context).pickupLocation, - value: widget.amRequestViewModel.pendingAmbulanceRequestOrder - .pickupLocation, + value: widget.amRequestViewModel.pendingAmbulanceRequestOrder.pickupLocation, ), OrderLogItem( title: TranslationBase.of(context).dropoffLocation, - value: widget.amRequestViewModel.pendingAmbulanceRequestOrder - .dropOffLocation, + value: widget.amRequestViewModel.pendingAmbulanceRequestOrder.dropOffLocation, ), OrderLogItem( title: TranslationBase.of(context).transportMethod, - value: widget - .amRequestViewModel.pendingAmbulanceRequestOrder.serviceText, + value: widget.amRequestViewModel.pendingAmbulanceRequestOrder.serviceText, ), Container( padding: EdgeInsets.all(10), @@ -111,9 +105,7 @@ class _AmbulanceRequestIndexPageState extends State { textColor: Colors.white, label: TranslationBase.of(context).cancel, onTap: () { - widget.amRequestViewModel.updatePressOrder( - presOrderID: widget.amRequestViewModel - .pendingAmbulanceRequestOrder.id); + widget.amRequestViewModel.updatePressOrder(presOrderID: widget.amRequestViewModel.pendingAmbulanceRequestOrder.iD); }, ), ) @@ -122,7 +114,7 @@ class _AmbulanceRequestIndexPageState extends State { ), ], ), - ) + ) : Column( children: [ SizedBox( @@ -172,9 +164,4 @@ class _AmbulanceRequestIndexPageState extends State { ), ); } - - String getDate(String date) { - return date.split("T")[0]; - } - } diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart index d05fae2f..850d308a 100644 --- a/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart +++ b/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart @@ -411,7 +411,7 @@ class _PickupLocationState extends State { widget.patientER_RC.transportationDetails.pickupDateTime = DateUtil.convertDateToStringLocation(DateTime.now()); widget.patientER_RC.transportationDetails.pickupLocationName = widget.patientER.direction == 0 ? _selectedHospital.name : _result.formattedAddress; widget.patientER_RC.projectID = widget.amRequestViewModel.user.projectID; - widget.patientER_RC.patientID = widget.amRequestViewModel.user.patientID.toString(); + widget.patientER_RC.patientID = widget.amRequestViewModel.user.patientID; widget.patientER_RC.transportationDetails.requesterIsOutSA = false; // widget.patientER.lineItemNo = 0; widget.patientER_RC.transportationDetails.requesterMobileNo = widget.amRequestViewModel.user.mobileNumber; diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart index d2a74505..0a187918 100644 --- a/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart +++ b/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart @@ -302,7 +302,7 @@ class _SelectTransportationMethodState extends State widget.patientER_RC.transportationDetails.direction = _direction == Direction.ToHospital ? 1 : 0; widget.patientER_RC.transportationDetails.tripType = _way == Way.TwoWays ? 0 : 1; widget.patientER_RC.transportationDetails.ambulate = (widget.amRequestViewModel.amRequestModeList.indexOf(_erTransportationMethod) + 1); - widget.patientER_RC.transportationDetails.transportationType = _erTransportationMethod.id.toString(); + widget.patientER_RC.transportationDetails.transportationType = _erTransportationMethod.iD.toString(); widget.patientER_RC.patientERTransportationMethod = _erTransportationMethod; widget.patientER_RC.transportationDetails.pickupUrgency = 1; // widget.patientER.orderServiceID = _orderService.getIdOrderService(); diff --git a/lib/pages/ErService/OrderLogPage.dart b/lib/pages/ErService/OrderLogPage.dart index 3d492c83..4ecde680 100644 --- a/lib/pages/ErService/OrderLogPage.dart +++ b/lib/pages/ErService/OrderLogPage.dart @@ -28,7 +28,7 @@ class OrderLogPage extends StatelessWidget { children: [ OrderLogItem( title: TranslationBase.of(context).reqId, - value: amRequestViewModel.patientAmbulanceRequestOrdersList[index].id.toString(), + value: amRequestViewModel.patientAmbulanceRequestOrdersList[index].iD.toString(), ), OrderLogItem( title: TranslationBase.of(context).orderStatus, @@ -62,7 +62,7 @@ class OrderLogPage extends StatelessWidget { textColor: Colors.white, label: TranslationBase.of(context).cancel, onTap: () { - amRequestViewModel.updatePressOrder(presOrderID: amRequestViewModel.pendingAmbulanceRequestOrder.id); + amRequestViewModel.updatePressOrder(presOrderID: amRequestViewModel.pendingAmbulanceRequestOrder.iD); }, ), ) diff --git a/lib/pages/ErService/rapid-response-team/rrt-logs-page.dart b/lib/pages/ErService/rapid-response-team/rrt-logs-page.dart index 2a1dd3c9..5f0506f3 100644 --- a/lib/pages/ErService/rapid-response-team/rrt-logs-page.dart +++ b/lib/pages/ErService/rapid-response-team/rrt-logs-page.dart @@ -1,15 +1,15 @@ +import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/GetCMCAllOrdersResponseModel.dart'; -import 'package:diplomaticquarterapp/core/model/prescriptions/prescriptions_order.dart'; import 'package:diplomaticquarterapp/core/viewModels/er/rrt-view-model.dart'; +import 'package:diplomaticquarterapp/pages/ErService/rapid-response-team/rrt-main-screen.dart'; import 'package:diplomaticquarterapp/pages/ErService/rapid-response-team/rrt-order-list-item.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; +import 'package:diplomaticquarterapp/uitl/utils.dart'; +import 'package:diplomaticquarterapp/uitl/utils_new.dart'; +import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; -import 'package:diplomaticquarterapp/pages/ErService/rapid-response-team/rrt-main-screen.dart'; -import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; -import 'package:diplomaticquarterapp/uitl/utils.dart'; class RRTLogPage extends StatefulWidget { final List orders; @@ -36,13 +36,15 @@ class RRTLogPageState extends State { viewModel = vm, }, builder: (ctx, vm, widgetState) { - return ListView.builder( - itemCount: widget.orders.length, - padding: EdgeInsets.all(21), - itemBuilder: (ctx, idx) { - var order = widget.orders[idx]; - return RRTLogListItem(order, onCancel: deleteOrder); - }); + return widget.orders.length > 0 + ? ListView.builder( + itemCount: widget.orders.length, + padding: EdgeInsets.all(21), + itemBuilder: (ctx, idx) { + var order = widget.orders[idx]; + return RRTLogListItem(order, onCancel: deleteOrder); + }) + : getNoDataWidget(context); }); } @@ -58,4 +60,4 @@ class RRTLogPageState extends State { Navigator.push(context, FadePage(page: RRTMainScreen())); } } -} +} \ No newline at end of file diff --git a/lib/pages/medical/prescriptions/prescriptions_history_details_page.dart b/lib/pages/medical/prescriptions/prescriptions_history_details_page.dart index c024b575..e9b1dfb6 100644 --- a/lib/pages/medical/prescriptions/prescriptions_history_details_page.dart +++ b/lib/pages/medical/prescriptions/prescriptions_history_details_page.dart @@ -1,12 +1,11 @@ -import 'package:diplomaticquarterapp/core/model/prescriptions/prescriptions_order.dart'; +import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/GetCMCAllOrdersResponseModel.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; +import 'package:diplomaticquarterapp/extensions/string_extensions.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; -import 'package:diplomaticquarterapp/extensions/string_extensions.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; -import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:flutter/cupertino.dart'; @@ -14,7 +13,7 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class PrescriptionsHistoryDetailsPage extends StatelessWidget { - final PrescriptionsOrder prescriptionsOrder; + final GetCMCAllOrdersResponseModel prescriptionsOrder; PrescriptionsHistoryDetailsPage({Key key, this.prescriptionsOrder}); @@ -22,10 +21,10 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { Widget build(BuildContext context) { ProjectViewModel projectViewModel = Provider.of(context); return BaseView( - onModelReady: (model) => model.getPrescriptionReportEnh(prescriptionsOrder: prescriptionsOrder), + onModelReady: (model) => model.getPrescriptionReportDetailsRC(), builder: (_, model, widget) { - int status = prescriptionsOrder.status; - String _statusDisp = projectViewModel.isArabic ? prescriptionsOrder.descriptionN : prescriptionsOrder.description; + int status = prescriptionsOrder.statusId; + String _statusDisp = prescriptionsOrder.statusText; Color _color; if (status == 1) { //pending @@ -36,7 +35,7 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { } else if (status == 3) { //completed _color = Color(0xff359846); - } else if (status == 4) { + } else if (status == 4 || status == 6 || status == 7) { //cancel // Rejected _color = Color(0xffD02127); } @@ -109,13 +108,9 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.end, children: [ Text( - DateUtil.getDayMonthYearDateFormatted(prescriptionsOrder.createdOn), + DateUtil.getDayMonthYearDateFormatted(DateTime.tryParse(prescriptionsOrder.created)), style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.4, height: 16 / 10), ), - Text( - DateUtil.formatDateToTimeLang(prescriptionsOrder.createdOn, false), - style: TextStyle(fontSize: 12, fontWeight: FontWeight.w600, color: Color(0xff575757), letterSpacing: -0.4, height: 16 / 10), - ), ], ) ], @@ -134,7 +129,7 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { child: ClipRRect( borderRadius: BorderRadius.all(Radius.circular(30)), child: Image.network( - model.prescriptionReportEnhList[index].imageSRCUrl, + model.prescriptionsOrderListRC[index].image, fit: BoxFit.cover, width: 48, height: 48, @@ -144,9 +139,9 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { SizedBox(width: 14), Expanded( child: Text( - (model.prescriptionReportEnhList[index].itemDescription.isNotEmpty - ? model.prescriptionReportEnhList[index].itemDescription - : model.prescriptionReportEnhList[index].itemDescriptionN ?? '') + (model.prescriptionsOrderListRC[index].itemDescription.isNotEmpty + ? model.prescriptionsOrderListRC[index].itemDescription + : model.prescriptionsOrderListRC[index].itemDescription ?? '') .toLowerCase() .capitalizeFirstofEach, style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2E303A), letterSpacing: -0.64), @@ -155,7 +150,7 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { ], ), separatorBuilder: (context, index) => SizedBox(height: 12), - itemCount: model.prescriptionReportEnhList.length) + itemCount: model.prescriptionsOrderListRC.length) ], ), ), @@ -168,9 +163,10 @@ class PrescriptionsHistoryDetailsPage extends StatelessWidget { padding: EdgeInsets.only(top: 16, bottom: 16, right: 21, left: 21), child: DefaultButton( TranslationBase.of(context).cancelOrder, - prescriptionsOrder.status != 1 - ? null - : () { + // prescriptionsOrder.statusId != 1 + // ? null + // : + () { showCDialog(model, context); }, disabledColor: Color(0xff575757), diff --git a/lib/pages/medical/prescriptions/prescriptions_history_page.dart b/lib/pages/medical/prescriptions/prescriptions_history_page.dart index adce13bb..1de0ae1d 100644 --- a/lib/pages/medical/prescriptions/prescriptions_history_page.dart +++ b/lib/pages/medical/prescriptions/prescriptions_history_page.dart @@ -2,10 +2,12 @@ import 'package:diplomaticquarterapp/core/enum/viewstate.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart'; +import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_details_page.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/utils_new.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; +import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; @@ -52,17 +54,17 @@ class PrescriptionsHistoryPage extends StatelessWidget { return InkWell( onTap: () async { - // final result = await Navigator.push( - // context, - // FadePage( - // page: PrescriptionsHistoryDetailsPage( - // prescriptionsOrder: prescriptionsViewModel.prescriptionsHistory[index], - // ), - // ), - // ); - // if (result != null) { - // showOrderLog(); - // } + final result = await Navigator.push( + context, + FadePage( + page: PrescriptionsHistoryDetailsPage( + prescriptionsOrder: prescriptionsViewModel.prescriptionsHistory[index], + ), + ), + ); + if (result != null) { + showOrderLog(); + } }, child: Container( height: 65, diff --git a/lib/pages/pharmacies/screens/lakum-main-page.dart b/lib/pages/pharmacies/screens/lakum-main-page.dart index 1547b929..c4415852 100644 --- a/lib/pages/pharmacies/screens/lakum-main-page.dart +++ b/lib/pages/pharmacies/screens/lakum-main-page.dart @@ -26,11 +26,21 @@ class LakumMainPage extends StatelessWidget { projectViewModel = Provider.of(context); return BaseView( - onModelReady: (model) => model.getLacumData(), + onModelReady: (model) async { + await model.getLacumData(); + if (model.lacumInformation.yahalaAccountNo == 0 || model.lacumInformation.yahalaAccountNo == null) { + navigateToLakumRegister(context); + } else { + if (model.lacumInformation.status == "Hold") { + Navigator.pushReplacement(context, FadePage(page: LakumActivationVidaPage())); + } + } + }, builder: (_, model, wi) => AppScaffold( appBarTitle: TranslationBase.of(context).lakum, isShowAppBar: true, isPharmacy: true, + showPharmacyCart: false, isShowDecPage: false, backgroundColor: Colors.white, baseViewModel: model,