Merge branch 'elham' into 'master'

handelCatcherrorCase

See merge request Cloud_Solution/doctor_app_flutter!59
merge-requests/60/head
Elham 6 years ago
commit 37f709b24b

@ -38,7 +38,7 @@ class PrescriptionResModel {
String nationalityFlagURL; String nationalityFlagURL;
int noOfPatientsRate; int noOfPatientsRate;
String qR; String qR;
List<String> speciality; List<dynamic> speciality;
PrescriptionResModel( PrescriptionResModel(
{this.setupID, {this.setupID,
@ -108,7 +108,7 @@ class PrescriptionResModel {
nationalityFlagURL = json['NationalityFlagURL']; nationalityFlagURL = json['NationalityFlagURL'];
noOfPatientsRate = json['NoOfPatientsRate']; noOfPatientsRate = json['NoOfPatientsRate'];
qR = json['QR']; qR = json['QR'];
speciality = json['Speciality'].cast<String>(); speciality = json['Speciality'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {

@ -5,6 +5,7 @@ import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/models/patient/prescription_req_model.dart'; import 'package:doctor_app_flutter/models/patient/prescription_req_model.dart';
import 'package:doctor_app_flutter/models/patient/prescription_res_model.dart'; import 'package:doctor_app_flutter/models/patient/prescription_res_model.dart';
import 'package:doctor_app_flutter/models/patient/radiology_res_model.dart'; import 'package:doctor_app_flutter/models/patient/radiology_res_model.dart';
import 'package:doctor_app_flutter/widgets/auth/login_form.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:http/http.dart'; import 'package:http/http.dart';
import 'package:http_interceptor/http_client_with_interceptor.dart'; import 'package:http_interceptor/http_client_with_interceptor.dart';
@ -23,6 +24,7 @@ const GET_PATIENT_LAB_OREDERS =
const GET_PRESCRIPTION = BASE_URL + 'Patients.svc/REST/GetPrescriptionApptList'; const GET_PRESCRIPTION = BASE_URL + 'Patients.svc/REST/GetPrescriptionApptList';
const GET_RADIOLOGY = const GET_RADIOLOGY =
BASE_URL + 'DoctorApplication.svc/REST/GetPatientRadResult'; BASE_URL + 'DoctorApplication.svc/REST/GetPatientRadResult';
Helpers helpers = Helpers();
class PatientsProvider with ChangeNotifier { class PatientsProvider with ChangeNotifier {
bool isLoading = false; bool isLoading = false;
@ -77,8 +79,8 @@ class PatientsProvider with ChangeNotifier {
//*********************** //***********************
return Future.value(json.decode(response.body)); return Future.value(json.decode(response.body));
} catch (error) { } catch (err) {
throw error; throw err;
} }
} }
@ -129,8 +131,8 @@ class PatientsProvider with ChangeNotifier {
error = 'Please Check The Internet Connection'; error = 'Please Check The Internet Connection';
} }
notifyListeners(); notifyListeners();
} catch (error) { } catch (err) {
throw error; handelCatchErrorCase(err);
} }
} }
@ -183,8 +185,8 @@ class PatientsProvider with ChangeNotifier {
error = 'Please Check The Internet Connection'; error = 'Please Check The Internet Connection';
} }
notifyListeners(); notifyListeners();
} catch (error) { } catch (err) {
throw error; handelCatchErrorCase(err);
} }
} }
@ -229,11 +231,25 @@ class PatientsProvider with ChangeNotifier {
error = 'Please Check The Internet Connection'; error = 'Please Check The Internet Connection';
} }
notifyListeners(); notifyListeners();
} catch (error) { } catch (err) {
throw error; handelCatchErrorCase(err);
} }
} }
/*@author: Elham Rababah
*@Date:12/5/2020
*@param: patient
*@return:
*@desc: getPatientRadiology
*/
handelCatchErrorCase(err) {
isLoading = false;
isError = true;
error = helpers.generateContactAdminMsg(err);
notifyListeners();
throw err;
}
/*@author: Elham Rababah /*@author: Elham Rababah
*@Date:3/5/2020 *@Date:3/5/2020
*@param: patient *@param: patient
@ -273,8 +289,8 @@ class PatientsProvider with ChangeNotifier {
error = 'Please Check The Internet Connection'; error = 'Please Check The Internet Connection';
} }
notifyListeners(); notifyListeners();
} catch (error) { } catch (err) {
throw error; handelCatchErrorCase(err);
} }
} }
} }

@ -1,3 +1,4 @@
import 'package:doctor_app_flutter/widgets/shared/errors/dr_app_embedded_error.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -78,19 +79,9 @@ class _LabOrdersScreenState extends State<LabOrdersScreen> {
body: patientsProv.isLoading body: patientsProv.isLoading
? DrAppCircularProgressIndeicator() ? DrAppCircularProgressIndeicator()
: patientsProv.isError : patientsProv.isError
? Center( ? DrAppEmbeddedError(error: patientsProv.error)
child: Text(
patientsProv.error,
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: patientsProv.patientLabResultOrdersList.length == 0 : patientsProv.patientLabResultOrdersList.length == 0
? Center( ? DrAppEmbeddedError(error: 'You don\'t have any Orders')
child: Text(
'You don\'t have any Orders',
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: Container( : Container(
margin: EdgeInsets.fromLTRB( margin: EdgeInsets.fromLTRB(
SizeConfig.realScreenWidth * 0.05, SizeConfig.realScreenWidth * 0.05,

@ -12,6 +12,7 @@ import '../../../../widgets/shared/app_texts_widget.dart';
import '../../../../widgets/shared/card_with_bg_widget.dart'; import '../../../../widgets/shared/card_with_bg_widget.dart';
import '../../../../widgets/shared/dr_app_circular_progress_Indeicator.dart'; import '../../../../widgets/shared/dr_app_circular_progress_Indeicator.dart';
import '../../../../widgets/shared/profile_image_widget.dart'; import '../../../../widgets/shared/profile_image_widget.dart';
import '../../../../widgets/shared/errors/dr_app_embedded_error.dart';
DrAppSharedPreferances sharedPref = new DrAppSharedPreferances(); DrAppSharedPreferances sharedPref = new DrAppSharedPreferances();
@ -78,19 +79,10 @@ class _PrescriptionScreenState extends State<PrescriptionScreen> {
body: patientsProv.isLoading body: patientsProv.isLoading
? DrAppCircularProgressIndeicator() ? DrAppCircularProgressIndeicator()
: patientsProv.isError : patientsProv.isError
? Center( ? DrAppEmbeddedError(error: patientsProv.error)
child: Text(
patientsProv.error,
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: patientsProv.patientPrescriptionsList.length == 0 : patientsProv.patientPrescriptionsList.length == 0
? Center( ? DrAppEmbeddedError(
child: Text( error: 'You don\'t have any Prescriptions')
'You don\'t have any Prescriptions',
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: Container( : Container(
margin: EdgeInsets.fromLTRB( margin: EdgeInsets.fromLTRB(
SizeConfig.realScreenWidth * 0.05, SizeConfig.realScreenWidth * 0.05,

@ -1,3 +1,4 @@
import 'package:doctor_app_flutter/widgets/shared/errors/dr_app_embedded_error.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -78,19 +79,9 @@ class _RadiologyScreenState extends State<RadiologyScreen> {
body: patientsProv.isLoading body: patientsProv.isLoading
? DrAppCircularProgressIndeicator() ? DrAppCircularProgressIndeicator()
: patientsProv.isError : patientsProv.isError
? Center( ? DrAppEmbeddedError(error: patientsProv.error)
child: Text(
patientsProv.error,
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: patientsProv.patientRadiologyList.length == 0 : patientsProv.patientRadiologyList.length == 0
? Center( ? DrAppEmbeddedError(error: 'You don\'t have any Vital Sign')
child: Text(
'You don\'t have any Vital Sign',
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: Container( : Container(
margin: EdgeInsets.fromLTRB( margin: EdgeInsets.fromLTRB(
SizeConfig.realScreenWidth * 0.05, SizeConfig.realScreenWidth * 0.05,
@ -120,11 +111,12 @@ class _RadiologyScreenState extends State<RadiologyScreen> {
CrossAxisAlignment.start, CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
AppText( AppText(
'${patientsProv.patientRadiologyList[index].doctorName}', '${patientsProv.patientRadiologyList[index].doctorName}',
fontSize: 2.5 * fontSize: 2.5 *
SizeConfig.textMultiplier, SizeConfig
fontWeight: FontWeight.bold .textMultiplier,
), fontWeight:
FontWeight.bold),
SizedBox( SizedBox(
height: 8, height: 8,
), ),
@ -132,7 +124,6 @@ class _RadiologyScreenState extends State<RadiologyScreen> {
'Invoice No:${patientsProv.patientRadiologyList[index].invoiceNo}', 'Invoice No:${patientsProv.patientRadiologyList[index].invoiceNo}',
fontSize: 2 * fontSize: 2 *
SizeConfig.textMultiplier, SizeConfig.textMultiplier,
), ),
SizedBox( SizedBox(
height: 8, height: 8,

@ -1,4 +1,5 @@
import 'package:doctor_app_flutter/routes.dart'; import 'package:doctor_app_flutter/routes.dart';
import 'package:doctor_app_flutter/widgets/shared/errors/dr_app_embedded_error.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -81,19 +82,9 @@ class _VitalSignScreenState extends State<VitalSignScreen> {
body: patientsProv.isLoading body: patientsProv.isLoading
? DrAppCircularProgressIndeicator() ? DrAppCircularProgressIndeicator()
: patientsProv.isError : patientsProv.isError
? Center( ? DrAppEmbeddedError(error: patientsProv.error)
child: Text(
patientsProv.error,
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: patientsProv.patientVitalSignList.length == 0 : patientsProv.patientVitalSignList.length == 0
? Center( ? DrAppEmbeddedError(error: 'You don\'t have any Vital Sign')
child: Text(
'You don\'t have any Vital Sign',
style: TextStyle(color: Theme.of(context).errorColor),
),
)
: Container( : Container(
margin: EdgeInsets.fromLTRB( margin: EdgeInsets.fromLTRB(
SizeConfig.realScreenWidth * 0.05, SizeConfig.realScreenWidth * 0.05,
@ -151,7 +142,11 @@ class _VitalSignScreenState extends State<VitalSignScreen> {
), ),
), ),
onTap: () { onTap: () {
Navigator.of(context).pushNamed(VITAL_SIGN_DETAILS,arguments: {'vitalSing':patientsProv.patientVitalSignList[index]}); Navigator.of(context)
.pushNamed(VITAL_SIGN_DETAILS, arguments: {
'vitalSing':
patientsProv.patientVitalSignList[index]
});
}, },
); );
}), }),

@ -70,7 +70,7 @@ class Helpers {
*@desc: showErrorToast *@desc: showErrorToast
*/ */
showErrorToast([msg = null]) { showErrorToast([msg = null]) {
String localMsg = 'Something wrong happened, please contact the admin'; String localMsg = generateContactAdminMsg();
if (msg != null) { if (msg != null) {
localMsg = msg.toString(); localMsg = msg.toString();
@ -96,4 +96,22 @@ class Helpers {
return false; return false;
} }
} }
/*
*@author: Elham Rababah
*@Date:12/5/2020
*@param:
*@return: String
*@desc: generate Contact Admin Msg
*/
generateContactAdminMsg([err = null]) {
String localMsg = 'Something wrong happened, please contact the admin';
if (err != null) {
localMsg = localMsg +'\n \n'+ err.toString();
}
return localMsg;
} }
}

@ -0,0 +1,28 @@
import 'package:flutter/material.dart';
/*
*@author: Elham Rababah
*@Date:12/5/2020
*@param: error
*@return: StatelessWidget
*@desc: DrAppEmbeddedError class
*/
class DrAppEmbeddedError extends StatelessWidget {
const DrAppEmbeddedError({
Key key,
@required this.error,
}) : super(key: key);
final String error;
@override
Widget build(BuildContext context) {
return Center(
child: Text(
error,
style: TextStyle(color: Theme.of(context).errorColor),
textAlign: TextAlign.center,
),
);
}
}
Loading…
Cancel
Save