refactor Referred Patient Service
parent
df9d151f46
commit
45cde2cb72
@ -0,0 +1,65 @@
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:doctor_app_flutter/core/service/base/base_service.dart';
|
||||
import 'package:doctor_app_flutter/models/doctor/verify_referral_doctor_remarks.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/my_referral/my_referred_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/request_my_referral_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/util/helpers.dart';
|
||||
|
||||
class ReferredPatientService extends BaseService {
|
||||
List<MyReferredPatientModel> _listMyReferredPatientModel = [];
|
||||
|
||||
List<MyReferredPatientModel> get listMyReferredPatientModel =>
|
||||
_listMyReferredPatientModel;
|
||||
|
||||
Helpers helpers = Helpers();
|
||||
|
||||
RequestMyReferralPatientModel _requestMyReferralPatient =
|
||||
RequestMyReferralPatientModel();
|
||||
VerifyReferralDoctorRemarks _verifyreferraldoctorremarks =
|
||||
VerifyReferralDoctorRemarks();
|
||||
|
||||
Future getMyReferredPatient() async {
|
||||
await baseAppClient.post(
|
||||
GET_MY_REFERRED_PATIENT,
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
_listMyReferredPatientModel.clear();
|
||||
response['List_MyReferredPatient'].forEach((v) {
|
||||
listMyReferredPatientModel.add(MyReferredPatientModel.fromJson(v));
|
||||
});
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
hasError = true;
|
||||
super.error = error;
|
||||
},
|
||||
body: _requestMyReferralPatient.toJson(),
|
||||
);
|
||||
}
|
||||
|
||||
Future verify(MyReferredPatientModel model) async {
|
||||
_verifyreferraldoctorremarks.patientID = model.projectId;
|
||||
_verifyreferraldoctorremarks.admissionNo = model.admissionNo;
|
||||
_verifyreferraldoctorremarks.lineItemNo = model.lineItemNo;
|
||||
_verifyreferraldoctorremarks.referredDoctorRemarks =
|
||||
model.referredDoctorRemarks;
|
||||
_verifyreferraldoctorremarks.referringDoctor = model.referringDoctor;
|
||||
_verifyreferraldoctorremarks.firstName = model.firstName;
|
||||
_verifyreferraldoctorremarks.middleName = model.middleName;
|
||||
_verifyreferraldoctorremarks.lastName = model.lastName;
|
||||
_verifyreferraldoctorremarks.patientMobileNumber = model.mobileNumber;
|
||||
_verifyreferraldoctorremarks.patientIdentificationID =
|
||||
model.patientIdentificationNo;
|
||||
|
||||
await baseAppClient.post(
|
||||
GET_MY_REFERRED_PATIENT,
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
listMyReferredPatientModel[listMyReferredPatientModel.indexOf(model)] =
|
||||
model;
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
hasError = true;
|
||||
super.error = error;
|
||||
},
|
||||
body: _verifyreferraldoctorremarks.toJson(),
|
||||
);
|
||||
}
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
import 'package:doctor_app_flutter/core/enum/viewstate.dart';
|
||||
import 'package:doctor_app_flutter/core/model/hospitals_model.dart';
|
||||
import 'package:doctor_app_flutter/core/service/doctor_reply_service.dart';
|
||||
import 'package:doctor_app_flutter/core/service/hospital/hospitals_service.dart';
|
||||
import 'package:doctor_app_flutter/core/service/referral_patient_service.dart';
|
||||
import 'package:doctor_app_flutter/core/service/referred_patient_service.dart';
|
||||
import 'package:doctor_app_flutter/core/service/schedule_service.dart';
|
||||
import 'package:doctor_app_flutter/models/doctor/list_doctor_working_hours_table_model.dart';
|
||||
import 'package:doctor_app_flutter/models/doctor/list_gt_my_patients_question_model.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/my_referral/my_referral_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/my_referral/my_referred_patient_model.dart';
|
||||
|
||||
import '../../locator.dart';
|
||||
import 'base_view_model.dart';
|
||||
|
||||
class ReferredPatientViewModel extends BaseViewModel {
|
||||
ReferredPatientService _referralPatientService = locator<ReferredPatientService>();
|
||||
|
||||
List<MyReferredPatientModel> get listMyReferredPatientModel => _referralPatientService.listMyReferredPatientModel;
|
||||
|
||||
Future getMyReferredPatient() async {
|
||||
setState(ViewState.Busy);
|
||||
await _referralPatientService.getMyReferredPatient();
|
||||
if (_referralPatientService.hasError) {
|
||||
error = _referralPatientService.error;
|
||||
setState(ViewState.Error);
|
||||
} else
|
||||
setState(ViewState.Idle);
|
||||
}
|
||||
|
||||
Future verify(MyReferredPatientModel model) async {
|
||||
setState(ViewState.BusyLocal);
|
||||
await _referralPatientService.verify(model);
|
||||
if (_referralPatientService.hasError) {
|
||||
error = _referralPatientService.error;
|
||||
setState(ViewState.ErrorLocal);
|
||||
} else
|
||||
setState(ViewState.Idle);
|
||||
}
|
||||
}
|
@ -1,77 +0,0 @@
|
||||
import 'package:doctor_app_flutter/client/base_app_client.dart';
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/my_referral/my_referral_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/models/doctor/request_add_referred_doctor_remarks.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/request_my_referral_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/util/helpers.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
|
||||
|
||||
class MyReferralPatientProvider with ChangeNotifier {
|
||||
List<MyReferralPatientModel> listMyReferralPatientModel = [];
|
||||
|
||||
bool isLoading = true;
|
||||
bool isError = false;
|
||||
String error = '';
|
||||
Helpers helpers = Helpers();
|
||||
BaseAppClient baseAppClient = BaseAppClient();
|
||||
|
||||
|
||||
RequestMyReferralPatientModel _requestMyReferralPatient = RequestMyReferralPatientModel();
|
||||
RequestAddReferredDoctorRemarks _requestAddReferredDoctorRemarks = RequestAddReferredDoctorRemarks();
|
||||
|
||||
MyReferralPatientProvider() {
|
||||
getMyReferralPatient();
|
||||
}
|
||||
|
||||
getMyReferralPatient() async {
|
||||
try {
|
||||
await baseAppClient.post(GET_MY_REFERRAL_PATIENT,
|
||||
body: _requestMyReferralPatient.toJson(),
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
response['List_MyReferralPatient'].forEach((v) {
|
||||
listMyReferralPatientModel.add(MyReferralPatientModel.fromJson(v));
|
||||
});
|
||||
isError = false;
|
||||
isLoading = false;
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
isError = true;
|
||||
isLoading = false;
|
||||
this.error = error;
|
||||
},
|
||||
);
|
||||
notifyListeners();
|
||||
} catch (error) {
|
||||
isLoading = false;
|
||||
isError = true;
|
||||
this.error = 'Something wrong happened, please contact the admin';
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
|
||||
Future replay(
|
||||
String referredDoctorRemarks, MyReferralPatientModel model) async {
|
||||
try {
|
||||
_requestAddReferredDoctorRemarks.admissionNo = model.admissionNo;
|
||||
_requestAddReferredDoctorRemarks.patientID = model.patientID;
|
||||
_requestAddReferredDoctorRemarks.referredDoctorRemarks = referredDoctorRemarks;
|
||||
_requestAddReferredDoctorRemarks.lineItemNo = model.lineItemNo;
|
||||
_requestAddReferredDoctorRemarks.referringDoctor = model.referringDoctor;
|
||||
await baseAppClient.post(ADD_REFERRED_DOCTOR_REMARKS,
|
||||
body: _requestAddReferredDoctorRemarks.toJson(),
|
||||
onSuccess: (dynamic body, int statusCode) {
|
||||
model.referredDoctorRemarks = referredDoctorRemarks;
|
||||
listMyReferralPatientModel[
|
||||
listMyReferralPatientModel.indexOf(model)] = model;
|
||||
notifyListeners();
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
throw (error);
|
||||
},
|
||||
);
|
||||
} catch (error) {
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,83 +0,0 @@
|
||||
import 'package:doctor_app_flutter/client/base_app_client.dart';
|
||||
import 'package:doctor_app_flutter/config/config.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/my_referral/my_referred_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/models/patient/request_my_referral_patient_model.dart';
|
||||
import 'package:doctor_app_flutter/models/doctor/verify_referral_doctor_remarks.dart';
|
||||
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import '../util/helpers.dart';
|
||||
|
||||
|
||||
class MyReferredPatientProvider with ChangeNotifier {
|
||||
List<MyReferredPatientModel> listMyReferredPatientModel = [];
|
||||
|
||||
bool isLoading = true;
|
||||
bool isError = false;
|
||||
String error = '';
|
||||
Helpers helpers = Helpers();
|
||||
RequestMyReferralPatientModel _requestMyReferralPatient = RequestMyReferralPatientModel();
|
||||
VerifyReferralDoctorRemarks _verifyreferraldoctorremarks = VerifyReferralDoctorRemarks();
|
||||
MyReferredPatientProvider() {
|
||||
getMyReferralPatient();
|
||||
}
|
||||
BaseAppClient baseAppClient = BaseAppClient();
|
||||
|
||||
|
||||
getMyReferralPatient() async {
|
||||
try {
|
||||
await baseAppClient.post(GET_MY_REFERRED_PATIENT,
|
||||
body: _requestMyReferralPatient.toJson(),
|
||||
onSuccess: (dynamic response, int statusCode) {
|
||||
response['List_MyReferredPatient'].forEach((v) {
|
||||
listMyReferredPatientModel.add(MyReferredPatientModel.fromJson(v));
|
||||
});
|
||||
isError = false;
|
||||
isLoading = false;
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
isError = true;
|
||||
isLoading = false;
|
||||
this.error = error;
|
||||
},
|
||||
);
|
||||
notifyListeners();
|
||||
} catch (error) {
|
||||
isLoading = false;
|
||||
isError = true;
|
||||
this.error = 'Something wrong happened, please contact the admin';
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Future verify(
|
||||
MyReferredPatientModel model) async {
|
||||
try {
|
||||
_verifyreferraldoctorremarks.patientID=model.projectId;
|
||||
_verifyreferraldoctorremarks.admissionNo =model.admissionNo;
|
||||
_verifyreferraldoctorremarks.lineItemNo = model.lineItemNo;
|
||||
_verifyreferraldoctorremarks.referredDoctorRemarks=model.referredDoctorRemarks;
|
||||
_verifyreferraldoctorremarks.referringDoctor=model.referringDoctor;
|
||||
_verifyreferraldoctorremarks.firstName=model.firstName;
|
||||
_verifyreferraldoctorremarks.middleName=model.middleName;
|
||||
_verifyreferraldoctorremarks.lastName=model.lastName;
|
||||
_verifyreferraldoctorremarks.patientMobileNumber=model.mobileNumber;
|
||||
_verifyreferraldoctorremarks.patientIdentificationID=model.patientIdentificationNo;
|
||||
|
||||
await baseAppClient.post(GET_MY_REFERRED_PATIENT,
|
||||
body: _verifyreferraldoctorremarks.toJson(),
|
||||
onSuccess: (dynamic body, int statusCode) {
|
||||
|
||||
listMyReferredPatientModel[
|
||||
listMyReferredPatientModel.indexOf(model)] = model;
|
||||
notifyListeners();
|
||||
},
|
||||
onFailure: (String error, int statusCode) {
|
||||
throw(error);
|
||||
},
|
||||
);
|
||||
} catch (error) {
|
||||
throw(error);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue