merge-requests/111/head
ibrahim albitar 6 years ago
parent 480c64d25a
commit 937f8ecd6a

@ -65,8 +65,7 @@ class PatientsProvider with ChangeNotifier {
STPReferralFrequencyRequest();
ClinicByProjectIdRequest _clinicByProjectIdRequest =
ClinicByProjectIdRequest();
ReferToDoctorRequest _referToDoctorRequest = ReferToDoctorRequest();
ReferToDoctorRequest _referToDoctorRequest ;
Client client =
HttpClientWithInterceptor.build(interceptors: [HttpInterceptor()]);
@ -493,19 +492,22 @@ class PatientsProvider with ChangeNotifier {
final response = await AppClient.post(PATIENT_GET_DOCTOR_BY_CLINIC_URL,
body: json.encode(_doctorsByClinicIdRequest));
final int statusCode = response.statusCode;
isLoading = false;
if (statusCode < 200 || statusCode >= 400 || json == null) {
isError = true;
error = 'Error While Fetching data';
isLoading = false;
} else {
var res = json.decode(response.body);
print('$res');
if (res['MessageStatus'] == 1) {
doctorsList = res['List_Doctors_All'];
isLoading = false;
} else {
isError = true;
error = res['ErrorMessage'] ?? res['ErrorEndUserMessage'];
isLoading = false;
}
}
} else {
@ -516,6 +518,7 @@ class PatientsProvider with ChangeNotifier {
notifyListeners();
} catch (err) {
handelCatchErrorCase(err);
isLoading = false;
}
}
@ -623,7 +626,7 @@ class PatientsProvider with ChangeNotifier {
*@Date:3/6/2020
*@desc: referToDoctor
*/
referToDoctor(
referToDoctor(context,
{String selectedDoctorID,
String selectedClinicID,
int admissionNo,
@ -674,7 +677,8 @@ class PatientsProvider with ChangeNotifier {
var res = json.decode(response.body);
print('$res');
if (res['MessageStatus'] == 1) {
print('Done : /n $res');
print('Done : \n $res');
Navigator.pop(context);
} else {
isError = true;
error = res['ErrorMessage'] ?? res['ErrorEndUserMessage'];

@ -34,8 +34,6 @@ class ReferPatientScreen extends StatefulWidget {
class _ReferPatientState extends State<ReferPatientScreen> {
PatientsProvider patientsProv;
var doctorsList;
var clinicsList;
var referralFrequancyList;
final _remarksController = TextEditingController();
final _extController = TextEditingController();
var _isInit = true;
@ -50,19 +48,15 @@ class _ReferPatientState extends State<ReferPatientScreen> {
List<String> _priorities = ['Very Urgent', 'Urgent', 'Routine'];
int _activePriority = 2;
String _priorityTime;
@override
void didChangeDependencies() {
super.didChangeDependencies();
if (_isInit) {
doctorsList = null;
patientsProv = Provider.of<PatientsProvider>(context);
patientsProv.getClinicsList();
patientsProv.getReferralFrequancyList();
setState(() {
clinicsList = patientsProv.clinicsList;
referralFrequancyList = patientsProv.referalFrequancyList;
});
patientsProv.getReferralFrequancyList();
}
_isInit = false;
}
@ -75,7 +69,7 @@ class _ReferPatientState extends State<ReferPatientScreen> {
? DrAppCircularProgressIndeicator()
: patientsProv.isError
? DrAppEmbeddedError(error: patientsProv.error)
: clinicsList == null
: patientsProv.clinicsList == null
? DrAppEmbeddedError(
error: 'Something Wrong!')
: SingleChildScrollView(
@ -134,13 +128,14 @@ class _ReferPatientState extends State<ReferPatientScreen> {
setState(() {
_selectedDoctor = null;
_selectedClinic = newValue;
var clinicInfo =
clinicsList.singleWhere((i) =>
var clinicInfo = patientsProv.clinicsList.where((i) =>
i['ClinicDescription']
.toString()
.contains(_selectedClinic));
.contains(_selectedClinic)).toList();
clinicId =
clinicInfo['ClinicID'].toString();
clinicInfo[0]['ClinicID'].toString();
patientsProv.getDoctorsList(clinicId);
})
},
@ -213,13 +208,15 @@ class _ReferPatientState extends State<ReferPatientScreen> {
onChanged: (newValue) => {
setState(() {
_selectedDoctor = newValue;
doctorsList = patientsProv.doctorsList;
var doctorInfo =
doctorsList.singleWhere((i) =>
doctorsList.where((i) =>
i['DoctorName']
.toString()
.contains(_selectedDoctor));
doctorId =
doctorInfo['DoctorID'].toString();
.contains(_selectedDoctor)).toList();
doctorId = doctorInfo[0]['DoctorID'].toString();
})
},
items: patientsProv
@ -324,7 +321,7 @@ class _ReferPatientState extends State<ReferPatientScreen> {
setState(() {
_selectedReferralFrequancy = newValue;
var freqInfo =
referralFrequancyList.singleWhere((i) =>
patientsProv.referalFrequancyList.singleWhere((i) =>
i['Description']
.toString()
.contains(_selectedReferralFrequancy));
@ -369,7 +366,7 @@ class _ReferPatientState extends State<ReferPatientScreen> {
Padding(
padding: const EdgeInsets.all(20.0),
child: AppButton(title: "Send", color: Color(PRIMARY_COLOR),onPressed: ()=>{
referToDoctor()
referToDoctor(context)
},),
)
],
@ -459,10 +456,10 @@ class _ReferPatientState extends State<ReferPatientScreen> {
return time;
}
void referToDoctor(){
void referToDoctor(context){
final routeArgs = ModalRoute.of(context).settings.arguments as Map;
PatiantInformtion patient = routeArgs['patient'];
patientsProv.referToDoctor(
patientsProv.referToDoctor(context,
extension: _extController.value.text,
admissionNo:int.parse( patient.admissionNo),
referringDoctorRemarks: _remarksController.value.text,

Loading…
Cancel
Save