You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
5.6 KiB
Dart
109 lines
5.6 KiB
Dart
import 'package:doctor_app_flutter/config/config.dart';
|
|
import 'package:doctor_app_flutter/core/model/Prescription_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/search_drug_model.dart';
|
|
import 'package:doctor_app_flutter/core/model/search_drug_request_model.dart';
|
|
import 'package:doctor_app_flutter/core/service/base/base_service.dart';
|
|
import 'package:doctor_app_flutter/models/SOAP/GetAllergiesResModel.dart';
|
|
import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart';
|
|
import 'package:doctor_app_flutter/models/patient/vital_sign/patient-vital-sign-data.dart';
|
|
|
|
class PrescriptionService extends BaseService {
|
|
List<PrescriptionModel> _prescriptionList = List();
|
|
List<PrescriptionModel> get prescriptionList => _prescriptionList;
|
|
List<SearchDrugModel> _drugsList = List();
|
|
List<SearchDrugModel> get drugsList => _drugsList;
|
|
List<dynamic> doctorsList = [];
|
|
List<dynamic> specialityList = [];
|
|
List<dynamic> drugToDrug = [];
|
|
|
|
PrescriptionReqModel _prescriptionReqModel = PrescriptionReqModel();
|
|
SearchDrugRequestModel _drugRequestModel = SearchDrugRequestModel(
|
|
//search: ["Acetaminophen"],
|
|
// vidaAuthTokenID:
|
|
// "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMDAyIiwianRpIjoiY2QwOWU3MTEtZDEwYy00NjZhLWEwNDctMjc4MDBmNmRkMTYxIiwiZW1haWwiOiIiLCJpZCI6IjEwMDIiLCJOYW1lIjoiVEVNUCAtIERPQ1RPUiIsIkVtcGxveWVlSWQiOiI0NzA5IiwiRmFjaWxpdHlHcm91cElkIjoiMDEwMjY2IiwiRmFjaWxpdHlJZCI6IjE1IiwiUGhhcmFtY3lGYWNpbGl0eUlkIjoiNTUiLCJJU19QSEFSTUFDWV9DT05ORUNURUQiOiJUcnVlIiwiRG9jdG9ySWQiOiI0NzA5IiwiU0VTU0lPTklEIjoiMjE1OTYyMDMiLCJDbGluaWNJZCI6IjEiLCJyb2xlIjpbIkhFQUQgTlVSU0VTIiwiRE9DVE9SUyIsIkhFQUQgRE9DVE9SUyIsIkFETUlOSVNUUkFUT1JTIiwiUkVDRVBUSU9OSVNUIiwiRVIgTlVSU0UiLCJJVkYgUkVDRVBUSU9OSVNUIiwiRVIgUkVDRVBUSU9OSVNUIiwiUEhBUk1BQ1kgQUNDT1VOVCBTVEFGRiIsIlBIQVJNQUNZIE5VUlNFIiwiSU5QQVRJRU5UIFBIQVJNQUNJU1QiLCJBRE1JU1NJT04gU1RBRkYiLCJBUFBST1ZBTCBTVEFGRiIsIklWRiBET0NUT1IiLCJJVkYgTlVSU0UiLCJJVkYgQ09PUkRJTkFUT1IiLCJJVkYgTEFCIFNUQUZGIiwiQ09OU0VOVCAiLCJNRURJQ0FMIFJFUE9SVCAtIFNJQ0sgTEVBVkUgTUFOQUdFUiJdLCJuYmYiOjE2MDkyNjQ2MTQsImV4cCI6MTYxMDEyODYxNCwiaWF0IjoxNjA5MjY0NjE0fQ.xCJ0jGtSFf36G8uZpdmHVoLfXDyP6e9mBpuOPSlzuio",
|
|
search: ["Amoxicillin"],
|
|
//vidaAuthTokenID:
|
|
// "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMDAyIiwianRpIjoiY2QwOWU3MTEtZDEwYy00NjZhLWEwNDctMjc4MDBmNmRkMTYxIiwiZW1haWwiOiIiLCJpZCI6IjEwMDIiLCJOYW1lIjoiVEVNUCAtIERPQ1RPUiIsIkVtcGxveWVlSWQiOiI0NzA5IiwiRmFjaWxpdHlHcm91cElkIjoiMDEwMjY2IiwiRmFjaWxpdHlJZCI6IjE1IiwiUGhhcmFtY3lGYWNpbGl0eUlkIjoiNTUiLCJJU19QSEFSTUFDWV9DT05ORUNURUQiOiJUcnVlIiwiRG9jdG9ySWQiOiI0NzA5IiwiU0VTU0lPTklEIjoiMjE1OTYyMDMiLCJDbGluaWNJZCI6IjEiLCJyb2xlIjpbIkhFQUQgTlVSU0VTIiwiRE9DVE9SUyIsIkhFQUQgRE9DVE9SUyIsIkFETUlOSVNUUkFUT1JTIiwiUkVDRVBUSU9OSVNUIiwiRVIgTlVSU0UiLCJJVkYgUkVDRVBUSU9OSVNUIiwiRVIgUkVDRVBUSU9OSVNUIiwiUEhBUk1BQ1kgQUNDT1VOVCBTVEFGRiIsIlBIQVJNQUNZIE5VUlNFIiwiSU5QQVRJRU5UIFBIQVJNQUNJU1QiLCJBRE1JU1NJT04gU1RBRkYiLCJBUFBST1ZBTCBTVEFGRiIsIklWRiBET0NUT1IiLCJJVkYgTlVSU0UiLCJJVkYgQ09PUkRJTkFUT1IiLCJJVkYgTEFCIFNUQUZGIiwiQ09OU0VOVCAiLCJNRURJQ0FMIFJFUE9SVCAtIFNJQ0sgTEVBVkUgTUFOQUdFUiJdLCJuYmYiOjE2MDkyNjQ2MTQsImV4cCI6MTYxMDEyODYxNCwiaWF0IjoxNjA5MjY0NjE0fQ.xCJ0jGtSFf36G8uZpdmHVoLfXDyP6e9mBpuOPSlzuio",
|
|
);
|
|
|
|
PostPrescriptionReqModel _postPrescriptionReqModel =
|
|
PostPrescriptionReqModel();
|
|
|
|
Future getPrescription({int mrn}) async {
|
|
_prescriptionReqModel = PrescriptionReqModel(patientMRN: mrn);
|
|
hasError = false;
|
|
_prescriptionList.clear();
|
|
await baseAppClient.post(GET_PRESCRIPTION_LIST,
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
_prescriptionList
|
|
.add(PrescriptionModel.fromJson(response['PrescriptionList']));
|
|
}, onFailure: (String error, int statusCode) {
|
|
hasError = true;
|
|
super.error = error;
|
|
}, body: _prescriptionReqModel.toJson());
|
|
}
|
|
|
|
Future getDrugs() async {
|
|
hasError = false;
|
|
|
|
await baseAppClient.post(SEARCH_DRUG,
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
doctorsList = [];
|
|
doctorsList = response['MedicationList']['entityList'];
|
|
}, onFailure: (String error, int statusCode) {
|
|
hasError = true;
|
|
super.error = error;
|
|
}, body: _drugRequestModel.toJson());
|
|
}
|
|
|
|
Future postPrescription(
|
|
PostPrescriptionReqModel postProcedureReqModel) async {
|
|
hasError = false;
|
|
//_prescriptionList.clear();
|
|
await baseAppClient.post(
|
|
POST_PRESCRIPTION_LIST,
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
print("Success");
|
|
},
|
|
onFailure: (String error, int statusCode) {
|
|
hasError = true;
|
|
super.error = error;
|
|
},
|
|
body: postProcedureReqModel.toJson(),
|
|
);
|
|
}
|
|
|
|
Future updatePrescription(
|
|
PostPrescriptionReqModel updatePrescriptionReqModel) async {
|
|
hasError = false;
|
|
//_prescriptionList.clear();
|
|
await baseAppClient.post(
|
|
UPDATE_PRESCRIPTION,
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
print("Accepted");
|
|
},
|
|
onFailure: (String error, int statusCode) {
|
|
hasError = true;
|
|
super.error = error;
|
|
},
|
|
body: updatePrescriptionReqModel.toJson(),
|
|
);
|
|
}
|
|
|
|
Future getDrugToDrug(
|
|
VitalSignData vital, List<GetAllergiesResModel> allergy) async {
|
|
hasError = false;
|
|
var request = {};
|
|
await baseAppClient.post(DRUG_TO_DRUG,
|
|
onSuccess: (dynamic response, int statusCode) {
|
|
drugToDrug = [];
|
|
//drugToDrug = //response['MedicationList']['entityList'];
|
|
}, onFailure: (String error, int statusCode) {
|
|
hasError = true;
|
|
super.error = error;
|
|
}, body: _drugRequestModel.toJson());
|
|
}
|
|
}
|