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

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

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

Loading…
Cancel
Save