Merge branch 'sultan' into 'development'

Sultan

See merge request Cloud_Solution/doctor_app_flutter!361
merge-requests/363/head
Mohammad Aljammal 5 years ago
commit 770767ebb6

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

@ -748,4 +748,11 @@ const Map<String, Map<String, String>> localizedValues = {
}, },
'appointmentDate': {'en': "Appointment Date", 'ar': "تاريخ الموعد"}, 'appointmentDate': {'en': "Appointment Date", 'ar': "تاريخ الموعد"},
'arrived_p': {'en': "Arrived", 'ar': "وصل"}, 'arrived_p': {'en': "Arrived", 'ar': "وصل"},
'fileNumber': {'en': "File Number: ", 'ar': " :رقم الملف"},
'searchPatient-name': {
'en': 'Search Name, Medical File, Phone Number',
'ar': "اسم البحث ، الملف الطبي ، رقم الهاتف"
},
'reschedule': {'en': 'Reschedule', 'ar': 'إعادة الجدولة'},
'leaves': {'en': 'Leaves', 'ar': 'يغادر'},
}; };

@ -1,5 +1,3 @@
// TODO : it have to be changed. // TODO : it have to be changed.
class PatiantInformtion { class PatiantInformtion {
@ -55,9 +53,10 @@ class PatiantInformtion {
String nursingStationName; String nursingStationName;
String startTime; String startTime;
String visitType; String visitType;
String nationalityFlagURL;
PatiantInformtion({ int patientStatusType;
this.list, PatiantInformtion(
{this.list,
this.projectId, this.projectId,
this.clinicId, this.clinicId,
this.doctorId, this.doctorId,
@ -109,60 +108,74 @@ class PatiantInformtion {
this.nationality, this.nationality,
this.patientMRN, this.patientMRN,
this.visitType, this.visitType,
}); this.nationalityFlagURL,
this.patientStatusType});
factory PatiantInformtion.fromJson(Map<String, dynamic> json) => factory PatiantInformtion.fromJson(Map<String, dynamic> json) =>
PatiantInformtion( PatiantInformtion(
projectId: json["ProjectID"] ?? json["projectID"], projectId: json["ProjectID"] ?? json["projectID"],
clinicId: json["ClinicID"]?? json["clinicID"], clinicId: json["ClinicID"] ?? json["clinicID"],
doctorId: json["DoctorID"]?? json["doctorID"], doctorId: json["DoctorID"] ?? json["doctorID"],
patientId: json["PatientID"]?? json["patientID"]??json['patientMRN'] ?? json['PatientMRN'], patientId: json["PatientID"] ??
doctorName: json["DoctorName"]?? json["doctorName"], json["patientID"] ??
doctorNameN: json["DoctorNameN"]?? json["doctorNameN"], json['patientMRN'] ??
firstName: json["FirstName"]?? json["firstName"], json['PatientMRN'],
middleName: json["MiddleName"]?? json["middleName"], doctorName: json["DoctorName"] ?? json["doctorName"],
lastName: json["LastName"]?? json["lastName"], doctorNameN: json["DoctorNameN"] ?? json["doctorNameN"],
firstNameN: json["FirstNameN"]?? json["firstNameN"], firstName: json["FirstName"] ?? json["firstName"],
middleNameN: json["MiddleNameN"]?? json["middleNameN"], middleName: json["MiddleName"] ?? json["middleName"],
lastNameN: json["LastNameN"]?? json["lastNameN"], lastName: json["LastName"] ?? json["lastName"],
gender: json["Gender"]?? json["gender"], firstNameN: json["FirstNameN"] ?? json["firstNameN"],
dateofBirth: json["DateofBirth"]?? json["dob"], middleNameN: json["MiddleNameN"] ?? json["middleNameN"],
nationalityId: json["NationalityID"]?? json["nationalityID"], lastNameN: json["LastNameN"] ?? json["lastNameN"],
mobileNumber: json["MobileNumber"]?? json["mobileNumber"], gender: json["Gender"] ?? json["gender"],
emailAddress: json["EmailAddress"]?? json["emailAddress"], dateofBirth: json["DateofBirth"] ?? json["dob"],
patientIdentificationNo: json["PatientIdentificationNo"]?? json["patientIdentificationNo"], nationalityId: json["NationalityID"] ?? json["nationalityID"],
patientType: json["PatientType"]?? json["patientType"], mobileNumber: json["MobileNumber"] ?? json["mobileNumber"],
admissionNo: json["AdmissionNo"]?? json["admissionNo"], emailAddress: json["EmailAddress"] ?? json["emailAddress"],
admissionDate: json["AdmissionDate"]?? json["admissionDate"], patientIdentificationNo: json["PatientIdentificationNo"] ??
createdOn: json["CreatedOn"]?? json["CreatedOn"], json["patientIdentificationNo"],
roomId: json["RoomID"]?? json["roomID"], patientType: json["PatientType"] ?? json["patientType"],
bedId: json["BedID"]?? json["bedID"], admissionNo: json["AdmissionNo"] ?? json["admissionNo"],
nursingStationId: json["NursingStationID"]?? json["nursingStationID"], admissionDate: json["AdmissionDate"] ?? json["admissionDate"],
description: json["Description"]?? json["description"], createdOn: json["CreatedOn"] ?? json["CreatedOn"],
clinicDescription: json["ClinicDescription"]?? json["clinicDescription"], roomId: json["RoomID"] ?? json["roomID"],
clinicDescriptionN: json["ClinicDescriptionN"]?? json["clinicDescriptionN"], bedId: json["BedID"] ?? json["bedID"],
nationalityName: json["NationalityName"]?? json["nationalityName"]??json['NationalityName'], nursingStationId:
nationalityNameN: json["NationalityNameN"]?? json["nationalityNameN"]??json['NationalityNameN'], json["NursingStationID"] ?? json["nursingStationID"],
age: json["Age"]?? json["age"], description: json["Description"] ?? json["description"],
clinicDescription:
json["ClinicDescription"] ?? json["clinicDescription"],
clinicDescriptionN:
json["ClinicDescriptionN"] ?? json["clinicDescriptionN"],
nationalityName: json["NationalityName"] ??
json["nationalityName"] ??
json['NationalityName'],
nationalityNameN: json["NationalityNameN"] ??
json["nationalityNameN"] ??
json['NationalityNameN'],
age: json["Age"] ?? json["age"],
genderDescription: json["GenderDescription"], genderDescription: json["GenderDescription"],
nursingStationName: json["NursingStationName"], nursingStationName: json["NursingStationName"],
appointmentDate: json["AppointmentDate"]?? '', appointmentDate: json["AppointmentDate"] ?? '',
startTime: json["StartTime"], startTime: json["startTime"],
appointmentNo :json['appointmentNo'] ?? json['AppointmentNo'], appointmentNo: json['appointmentNo'] ?? json['AppointmentNo'],
appointmentType :json['appointmentType'], appointmentType: json['appointmentType'],
arrivedOn :json['arrivedOn'], arrivedOn: json['arrivedOn'],
clinicGroupId :json['clinicGroupId'], clinicGroupId: json['clinicGroupId'],
companyName :json['companyName'], companyName: json['companyName'],
dischargeStatus :json['dischargeStatus'], dischargeStatus: json['dischargeStatus'],
doctorDetails :json['doctorDetails'], doctorDetails: json['doctorDetails'],
endTime :json['endTime'], endTime: json['endTime'],
episodeNo :json['episodeNo'] ?? json['EpisodeID'], episodeNo: json['episodeNo'] ?? json['EpisodeID'],
fallRiskScore :json['fallRiskScore'], fallRiskScore: json['fallRiskScore'],
isSigned :json['isSigned'], isSigned: json['isSigned'],
medicationOrders :json['medicationOrders'], medicationOrders: json['medicationOrders'],
nationality :json['nationality']??json['NationalityNameN'], nationality: json['nationality'] ?? json['NationalityNameN'],
patientMRN :json['patientMRN'] ?? json['PatientMRN'], patientMRN: json['patientMRN'] ?? json['PatientMRN'],
visitType :json['visitType'] ?? json['visitType'], visitType: json['visitType'] ?? json['visitType'],
); nationalityFlagURL:
json['NationalityFlagURL'] ?? json['NationalityFlagURL'],
patientStatusType:
json['patientStatusType'] ?? json['patientStatusType']);
} }

@ -753,7 +753,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
SizedBox( SizedBox(
height: 15, height: 15,
), ),
sliderActiveIndex == 0 sliderActiveIndex == 1
? Column( ? Column(
children: [ children: [
Row( Row(
@ -793,7 +793,7 @@ class _DashboardScreenState extends State<DashboardScreen> {
}))) })))
], ],
) )
: sliderActiveIndex == 1 : sliderActiveIndex == 0
? Column( ? Column(
children: [ children: [
Row( Row(
@ -988,7 +988,8 @@ class _DashboardScreenState extends State<DashboardScreen> {
Navigator.of(context) Navigator.of(context)
.pushNamed(PATIENTS, arguments: { .pushNamed(PATIENTS, arguments: {
"patientSearchForm": _patientSearchFormValues, "patientSearchForm": _patientSearchFormValues,
"selectedType": "7" "selectedType": "7",
"arrivalType": "1"
}); });
}, },
), ),
@ -1024,12 +1025,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
builder: (context) => builder: (context) =>
SearchMedicinePatientScreen(), SearchMedicinePatientScreen(),
)); ));
// Navigator.of(context)
// .pushNamed(PATIENTS, arguments: {
// "patientSearchForm": _patientSearchFormValues,
// "selectedType": "7"
// });
}, },
) )
], ],
@ -1037,132 +1032,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
SizedBox( SizedBox(
height: 10, height: 10,
), ),
// Row(
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
// crossAxisAlignment: CrossAxisAlignment.start,
// children: <Widget>[
// DashboardItem(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Center(
// child: Icon(
// DoctorApp.search_patient_1,
// size: 50,
// color: Colors.black,
// ),
// ),
// Column(
// children: [
// AppText(
// TranslationBase.of(context).searchAbout,
// color: Colors.black,
// textAlign: TextAlign.center,
// ),
// AppText(
// TranslationBase.of(context).patient,
// color: Colors.black,
// textAlign: TextAlign.center,
// )
// ],
// )
// ],
// ),
// hasBorder: true,
// onTap: () {
// Navigator.of(context).pushNamed(PATIENT_SEARCH);
// },
// ),
// DashboardItem(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Icon(
// DoctorApp.medicine_search,
// size: 50,
// color: Colors.black,
// ),
// AppText(
// TranslationBase.of(context).searchMedicine,
// color: Colors.black,
// textAlign: TextAlign.center,
// )
// ],
// ),
// hasBorder: true,
// onTap: () {
// // Navigator.push(
// // context,
// // MaterialPageRoute(
// // builder: (context) => MedicineSearchScreen(),
// // ),
// // );
// },
// ),
// DashboardItem(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Icon(
// DoctorApp.leaves,
// size: 50,
// ),
// AppText(
// TranslationBase.of(context).rescheduleLeaves,
// color: Colors.black,
// textAlign: TextAlign.center,
// )
// ],
// ),
// hasBorder: true,
// onTap: () {
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) =>
// AddRescheduleLeavScreen(),
// // MyReferredPatient(),
// ),
// );
// },
// ),
// DashboardItem(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Icon(
// DoctorApp.qr_code,
// size: 50,
// color: Colors.black,
// ),
// Column(
// children: [
// AppText(
// projectsProvider.isArabic
// ? TranslationBase.of(context).reader
// : TranslationBase.of(context).qr,
// color: Colors.black,
// textAlign: TextAlign.center,
// ),
// AppText(
// projectsProvider.isArabic
// ? TranslationBase.of(context).qr
// : TranslationBase.of(context).reader,
// color: Colors.black,
// textAlign: TextAlign.center,
// ),
// ],
// )
// ],
// ),
// // imageName: '1.png',
// hasBorder: true,
// onTap: () {
// Navigator.of(context).pushNamed(QR_READER);
// },
// ),
//],
//),
SizedBox( SizedBox(
height: 20, height: 20,
), ),
@ -1173,41 +1042,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
SizedBox( SizedBox(
width: 8, width: 8,
), ),
// DashboardItem(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Icon(
// DoctorApp.mail,
// size: 50,
// color: Colors.black,
// ),
// Column(
// children: [
// AppText(
// TranslationBase.of(context).theDoctor,
// textAlign: TextAlign.center,
// color: Colors.black,
// ),
// AppText(
// TranslationBase.of(context).reply,
// textAlign: TextAlign.center,
// color: Colors.black,
// ),
// ],
// )
// ],
// ),
// hasBorder: true,
// onTap: () {
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) => DoctorReplyScreen(),
// ),
// );
// },
// )
], ],
), ),
SizedBox( SizedBox(
@ -1224,41 +1058,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
); );
} }
// static List<charts.Series<GaugeSegment, String>> _createInpatientData(model) {
// final data = [
// new GaugeSegment(
// model.dashboardItemsList[0].summaryoptions[0].kPIParameter,
// getValue(model.dashboardItemsList[0].summaryoptions[0].value),
// charts.MaterialPalette.blue.shadeDefault),
// new GaugeSegment(
// model.dashboardItemsList[0].summaryoptions[1].kPIParameter,
// getValue(model.dashboardItemsList[0].summaryoptions[1].value),
// charts.MaterialPalette.cyan.shadeDefault),
// new GaugeSegment(
// model.dashboardItemsList[0].summaryoptions[2].kPIParameter,
// getValue(model.dashboardItemsList[0].summaryoptions[2].value),
// charts.MaterialPalette.red.shadeDefault),
// new GaugeSegment(
// model.dashboardItemsList[0].summaryoptions[3].kPIParameter,
// getValue(model.dashboardItemsList[0].summaryoptions[3].value),
// charts.MaterialPalette.deepOrange.shadeDefault.lighter),
// new GaugeSegment(
// model.dashboardItemsList[0].summaryoptions[4].kPIParameter,
// getValue(model.dashboardItemsList[0].summaryoptions[4].value),
// charts.MaterialPalette.green.shadeDefault),
// ];
// return [
// new charts.Series<GaugeSegment, String>(
// id: 'Segments',
// domainFn: (GaugeSegment segment, _) => segment.segment,
// measureFn: (GaugeSegment segment, _) => segment.size,
// data: data,
// colorFn: (GaugeSegment segment, _) => segment.color,
// )
// ];
// }
static List<charts.Series<GaugeSegment, String>> _createReferralData(model) { static List<charts.Series<GaugeSegment, String>> _createReferralData(model) {
final data = [ final data = [
new GaugeSegment( new GaugeSegment(
@ -1290,71 +1089,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
return value == 0 ? 1 : value; return value == 0 ? 1 : value;
} }
// showCupertinoPicker(
// {context, List<ClinicModel> actionList, decKey, onSelectFun}) {
// showModalBottomSheet(
// isDismissible: false,
// isScrollControlled: true,
// context: context,
// builder: (BuildContext builder) {
// return Container(
// // height: 500,
// height: SizeConfig.realScreenHeight * 0.4,
// color: Color(0xfff7f7f7),
// child: Column(
// mainAxisAlignment: MainAxisAlignment.end,
// children: <Widget>[
// Container(
// color: Color(0xfff7f7f7),
// child: Row(
// mainAxisAlignment: MainAxisAlignment.end,
// children: <Widget>[
// CupertinoButton(
// child: AppText(TranslationBase.of(context).cancel
// // style: TextStyle(context)
// ),
// onPressed: () {
// Navigator.pop(context);
// },
// ),
// CupertinoButton(
// child: AppText(TranslationBase.of(context).done
// // style: textStyle(context),
// ),
// onPressed: () {
// Navigator.pop(context);
// // onSelectFun(cupertinoPickerIndex);
// },
// )
// ],
// ),
// ),
// Container(
// height: SizeConfig.realScreenHeight * 0.3,
// color: Color(0xfff7f7f7),
// child: Column(
// children: actionList
// .map((e) => Flexible(
// child: Container(
// height: 50,
// child: InkWell(
// onTap: () => changeClinic(
// e.clinicID, context, model),
// child: AppText(
// e.clinicName,
// fontSize:
// SizeConfig.textMultiplier * 1.9,
// )),
// ),
// ))
// .toList(),
// ))
// ],
// ),
// );
// });
// }
changeClinic(clinicId, BuildContext context, model) async { changeClinic(clinicId, BuildContext context, model) async {
// Navigator.pop(context); // Navigator.pop(context);
changeIsLoading(true); changeIsLoading(true);
@ -1528,80 +1262,13 @@ class _DashboardScreenState extends State<DashboardScreen> {
margin: 5, margin: 5,
child: Padding( child: Padding(
padding: const EdgeInsets.all(5.0), padding: const EdgeInsets.all(5.0),
child: getOutPatientStack(model.dashboardItemsList[0]))), child: getOutPatientStack(model.dashboardItemsList[1]))),
RoundedContainer( RoundedContainer(
height: MediaQuery.of(context).size.height * 0.32, height: MediaQuery.of(context).size.height * 0.32,
margin: 5, margin: 5,
child: Padding( child: Padding(
padding: const EdgeInsets.all(5.0), padding: const EdgeInsets.all(5.0),
child: getOutPatientStack(model.dashboardItemsList[1]))), child: getOutPatientStack(model.dashboardItemsList[0]))),
// Column(
// mainAxisAlignment: MainAxisAlignment.spaceEvenly,
// crossAxisAlignment: CrossAxisAlignment.start,
// children: [
// rowCount(
// model.dashboardItemsList[0]
// .summaryoptions[0].kPIParameter,
// model.dashboardItemsList[0]
// .summaryoptions[0].value,
// Colors.blue),
// rowCount(
// model.dashboardItemsList[0]
// .summaryoptions[1].kPIParameter,
// model.dashboardItemsList[0]
// .summaryoptions[1].value,
// Colors.cyan),
// rowCount(
// model.dashboardItemsList[0]
// .summaryoptions[2].kPIParameter,
// model.dashboardItemsList[0]
// .summaryoptions[2].value,
// Colors.red),
// rowCount(
// model.dashboardItemsList[0]
// .summaryoptions[3].kPIParameter,
// model.dashboardItemsList[0]
// .summaryoptions[3].value,
// Colors.orange),
// rowCount(
// model.dashboardItemsList[0]
// .summaryoptions[4].kPIParameter,
// model.dashboardItemsList[0]
// .summaryoptions[4].value,
// Colors.green),
// ],
// ))),
// Expanded(
// flex: 3,
// child: Stack(children: [
// Container(
// child: GaugeChart(_createInpatientData(model))),
// Positioned(
// child: Center(
// child: Column(
// children: [
// AppText(
// TranslationBase.of(context).inPatient,
// fontSize: 11,
// fontWeight: FontWeight.bold,
// ),
// AppText(
// getPatientCount(model.dashboardItemsList[0])
// .toString(),
// fontSize: 18,
// fontWeight: FontWeight.bold,
// )
// ],
// )),
// top: MediaQuery.of(context).size.height * 0.12,
// left: MediaQuery.of(context).size.width * 0.11)
// ])),
// ],
// )
// ),
//])
//),
RoundedContainer( RoundedContainer(
height: MediaQuery.of(context).size.height * 0.24, height: MediaQuery.of(context).size.height * 0.24,
margin: 5, margin: 5,
@ -1653,18 +1320,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
model.dashboardItemsList[2] model.dashboardItemsList[2]
.summaryoptions[2].value, .summaryoptions[2].value,
Colors.red), Colors.red),
// rowCount(
// model.dashboardItemsList[2]
// .summaryoptions[3].kPIParameter,
// model.dashboardItemsList[2]
// .summaryoptions[3].value,
// Colors.orange),
// rowCount(
// model.dashboardItemsList[2]
// .summaryoptions[4].kPIParameter,
// model.dashboardItemsList[2]
// .summaryoptions[4].value,
// Colors.green),
], ],
), ),
) )
@ -1679,12 +1334,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
// AppText(
// TranslationBase.of(context).,
// fontSize: 11,
// fontWeight: FontWeight.bold,
// textOverflow: TextOverflow.ellipsis,
// ),
AppText( AppText(
getPatientCount(model.dashboardItemsList[2]) getPatientCount(model.dashboardItemsList[2])
.toString(), .toString(),
@ -1701,154 +1350,6 @@ class _DashboardScreenState extends State<DashboardScreen> {
], ],
)), )),
])), ])),
// RoundedContainer(
// height: MediaQuery.of(context).size.height * 0.24,
// margin: 5,
// child: Column(
// crossAxisAlignment: CrossAxisAlignment.start,
// children: [
// Padding(
// padding: EdgeInsets.all(10),
// child: AppText(TranslationBase.of(context).otherStatistic)),
// Row(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// crossAxisAlignment: CrossAxisAlignment.center,
// children: <Widget>[
// DashboardItem(
// width: MediaQuery.of(context).size.width * 0.25,
// height: MediaQuery.of(context).orientation ==
// Orientation.portrait
// ? MediaQuery.of(context).size.height * 0.18
// : MediaQuery.of(context).size.height * 0.36,
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Container(
// margin: EdgeInsets.only(top: 5),
// child: Icon(
// DoctorApp.lab_results,
// size: 40,
// color: Colors.black,
// ),
// ),
// Container(
// // margin: EdgeInsets.only(bottom: 10),
// child: Column(
// children: <Widget>[
// AppText(
// model.dashboardItemsList.length > 0
// ? getPatientCount(
// model.dashboardItemsList[5])
// : "",
// fontSize: SizeConfig.textMultiplier * 6,
// color: Colors.black,
// ),
// AppText(
// TranslationBase.of(context).targetPatient,
// textAlign: TextAlign.center,
// color: Colors.black,
// )
// ],
// ),
// ),
// ],
// ),
// //imageName: '1.png',
// opacity: 0,
// ),
// Container(
// color: Colors.black12,
// height: MediaQuery.of(context).size.height * 0.18,
// width: 1,
// ),
// DashboardItem(
// width: MediaQuery.of(context).size.width * 0.25,
// height: MediaQuery.of(context).orientation ==
// Orientation.portrait
// ? MediaQuery.of(context).size.height * 0.18
// : MediaQuery.of(context).size.height * 0.36,
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Container(
// margin: EdgeInsets.only(top: 5),
// child: Icon(
// DoctorApp.radiology,
// size: 40,
// color: Colors.black,
// ),
// ),
// Container(
// margin: EdgeInsets.only(bottom: 5),
// child: Column(
// children: <Widget>[
// AppText(
// clinicName.length.toString(),
// fontSize: SizeConfig.textMultiplier * 6,
// color: Colors.black,
// ),
// AppText(
// TranslationBase.of(context).clinic,
// color: Colors.black,
// )
// ],
// ),
// ),
// ],
// ),
// //imageName: '2.png',
// opacity: 0,
// ),
// Container(
// color: Colors.black12,
// height: MediaQuery.of(context).size.height * 0.18,
// width: 1,
// ),
// DashboardItem(
// width: MediaQuery.of(context).size.width * 0.25,
// height: MediaQuery.of(context).orientation ==
// Orientation.portrait
// ? MediaQuery.of(context).size.height * 0.18
// : MediaQuery.of(context).size.height * 0.36,
// child: Column(
// mainAxisAlignment: MainAxisAlignment.spaceAround,
// children: <Widget>[
// Container(
// margin: EdgeInsets.only(top: 5),
// child: Icon(
// DoctorApp.referral,
// size: 40,
// color: Colors.black,
// ),
// ),
// Container(
// margin: EdgeInsets.only(bottom: 5),
// child: Column(
// children: <Widget>[
// AppText(
// model.dashboardItemsList.length > 0
// ? getPatientCount(
// model.dashboardItemsList[2])
// : "",
// fontSize: SizeConfig.textMultiplier * 6,
// color: Colors.black,
// ),
// AppText(
// TranslationBase.of(context).referral,
// color: Colors.black,
// )
// ],
// ),
// ),
// ],
// ),
// //imageName: '3.png',
// opacity: 0,
// ),
// ],
// )
// ],
// ))
]; ];
} }
} }

@ -129,20 +129,18 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
widthFactor: 0.97, widthFactor: 0.97,
child: SingleChildScrollView( child: SingleChildScrollView(
child: Container( child: Container(
color: Colors.white,
// height: SizeConfig.screenHeight, // height: SizeConfig.screenHeight,
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.spaceAround, mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[ children: <Widget>[
SizedBox( SizedBox(height: 100),
height: SizeConfig.screenHeight * .16,
),
Column(children: [ Column(children: [
FractionallySizedBox( FractionallySizedBox(
widthFactor: 0.9, widthFactor: 0.9,
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Container( Container(
// height: MediaQuery.of(context).size.height * 0.070,
child: InkWell( child: InkWell(
onTap: model.allMedicationList != null onTap: model.allMedicationList != null
? () { ? () {
@ -209,7 +207,7 @@ class _MedicineSearchState extends State<MedicineSearchScreen> {
) )
]), ]),
SizedBox( SizedBox(
height: SizeConfig.screenHeight * .5, height: SizeConfig.screenHeight * .55,
), ),
Column( Column(
children: [ children: [

@ -52,6 +52,7 @@ class _SearchMedicinePatientScreen extends State<SearchMedicinePatientScreen>
height: 60.0, height: 60.0,
color: Colors.white, color: Colors.white,
margin: EdgeInsets.only(top: 10.0), margin: EdgeInsets.only(top: 10.0),
width: MediaQuery.of(context).size.width, // 0.9, width: MediaQuery.of(context).size.width, // 0.9,
// decoration: BoxDecoration( // decoration: BoxDecoration(
// border: Border( // border: Border(

@ -510,7 +510,7 @@ class _PatientSearchScreenState extends State<PatientSearchScreen> {
), ),
]) ])
: SizedBox( : SizedBox(
height: SizeConfig.screenHeight * .4, height: SizeConfig.screenHeight * .45,
), ),
], ],
), ),

@ -33,8 +33,12 @@ class PatientsScreen extends StatefulWidget {
final patientSearchForm; final patientSearchForm;
final selectedType; final selectedType;
final isAppbar; final isAppbar;
final arrivalType;
PatientsScreen( PatientsScreen(
{this.patientSearchForm, this.selectedType, this.isAppbar = true}); {this.patientSearchForm,
this.selectedType,
this.isAppbar = true,
this.arrivalType});
@override @override
_PatientsScreenState createState() => _PatientsScreenState(); _PatientsScreenState createState() => _PatientsScreenState();
} }
@ -70,6 +74,7 @@ class _PatientsScreenState extends State<PatientsScreen> {
var selectedFilter = 1; var selectedFilter = 1;
bool _isError = false; bool _isError = false;
String error = ""; String error = "";
String arrivalType;
ProjectViewModel projectsProvider; ProjectViewModel projectsProvider;
final _controller = TextEditingController(); final _controller = TextEditingController();
@ -85,8 +90,13 @@ class _PatientsScreenState extends State<PatientsScreen> {
for (var i = 0; i < responseModelList2.length; i++) { for (var i = 0; i < responseModelList2.length; i++) {
String firstName = responseModelList[i].firstName.toUpperCase(); String firstName = responseModelList[i].firstName.toUpperCase();
String lastName = responseModelList[i].lastName.toUpperCase(); String lastName = responseModelList[i].lastName.toUpperCase();
String mobile = responseModelList[i].mobileNumber.toUpperCase();
String patientID = responseModelList[i].patientId.toString();
if (firstName.contains(str.toUpperCase()) || if (firstName.contains(str.toUpperCase()) ||
lastName.contains(str.toUpperCase())) { lastName.contains(str.toUpperCase()) ||
mobile.contains(str) ||
patientID.contains(str)) {
filterData.add(responseModelList[i]); filterData.add(responseModelList[i]);
} }
} }
@ -220,7 +230,9 @@ class _PatientsScreenState extends State<PatientsScreen> {
patientType = widget.selectedType != null patientType = widget.selectedType != null
? widget.selectedType ? widget.selectedType
: routeArgs['selectedType']; : routeArgs['selectedType'];
arrivalType = widget.arrivalType != null
? widget.arrivalType
: routeArgs['arrivalType'];
if (routeArgs != null && routeArgs.containsKey("isSearch")) { if (routeArgs != null && routeArgs.containsKey("isSearch")) {
isSearch = routeArgs['isSearch']; isSearch = routeArgs['isSearch'];
} }
@ -355,7 +367,7 @@ class _PatientsScreenState extends State<PatientsScreen> {
Container( Container(
width: SizeConfig.screenWidth * 0.9, width: SizeConfig.screenWidth * 0.9,
height: height:
SizeConfig.screenHeight * 0.07, SizeConfig.screenHeight * 0.08,
child: TextField( child: TextField(
controller: _controller, controller: _controller,
onChanged: (String str) { onChanged: (String str) {
@ -364,21 +376,30 @@ class _PatientsScreenState extends State<PatientsScreen> {
decoration: buildInputDecoration( decoration: buildInputDecoration(
context, context,
TranslationBase.of(context) TranslationBase.of(context)
.searchPatient), .searchPatientName),
), ),
), ),
SizedBox( SizedBox(
height: 10.0, height: 10.0,
), ),
if (int.parse(patientType) == 7) if (int.parse(patientType) == 7)
ClinicList( Container(
padding: EdgeInsets.all(5),
decoration: BoxDecoration(
color: Colors.white,
border: Border.all(
color: Colors.grey),
borderRadius:
BorderRadius.circular(
10)),
child: ClinicList(
clinicId: clinicId, clinicId: clinicId,
onClinicChange: (newValue) { onClinicChange: (newValue) {
clinicId = newValue; clinicId = newValue;
changeClinic( changeClinic(
newValue, context, model); newValue, context, model);
}, },
), )),
Padding( Padding(
padding: EdgeInsets.only( padding: EdgeInsets.only(
top: MediaQuery.of(context) top: MediaQuery.of(context)
@ -482,6 +503,7 @@ class _PatientsScreenState extends State<PatientsScreen> {
return PatientCard( return PatientCard(
patientInfo: item, patientInfo: item,
patientType: patientType, patientType: patientType,
arrivalType: arrivalType,
onTap: () { onTap: () {
Navigator.of(context) Navigator.of(context)
.pushNamed( .pushNamed(
@ -494,7 +516,6 @@ class _PatientsScreenState extends State<PatientsScreen> {
.getFrom, .getFrom,
"to": "to":
patient.getTo, patient.getTo,
"isSearch":isSearch
}); });
}, },
); );
@ -574,6 +595,11 @@ class _PatientsScreenState extends State<PatientsScreen> {
} }
parsed = lItems; parsed = lItems;
responseModelList = new ModelResponse.fromJson(parsed).list; responseModelList = new ModelResponse.fromJson(parsed).list;
responseModelList.sort((a, b) {
var adate = a.arrivedOn;
var bdate = b.arrivedOn; //before -> var bdate = b.expiry;
return adate.compareTo(bdate);
});
responseModelList2 = responseModelList; responseModelList2 = responseModelList;
_isError = false; _isError = false;
} else { } else {
@ -599,10 +625,10 @@ class _PatientsScreenState extends State<PatientsScreen> {
InputDecoration buildInputDecoration(BuildContext context, hint) { InputDecoration buildInputDecoration(BuildContext context, hint) {
return InputDecoration( return InputDecoration(
suffixIcon: IconButton( suffixIcon: IconButton(
icon: new Image.asset("assets/images/filter-512.png"), icon: Icon(DoctorApp.search_patient),
color: Colors.grey, color: Colors.grey,
onPressed: () {}, onPressed: () {},
iconSize: 20, iconSize: 30,
), ),
filled: true, filled: true,
fillColor: Colors.white, fillColor: Colors.white,

@ -421,4 +421,8 @@ class Helpers {
static hideKeyboard(BuildContext context) { static hideKeyboard(BuildContext context) {
FocusScope.of(context).unfocus(); FocusScope.of(context).unfocus();
} }
static String capitalize(str) {
return "${str[0].toUpperCase()}${str.substring(1).toLowerCase()}";
}
} }

@ -70,6 +70,8 @@ class TranslationBase {
String get searchPatient => String get searchPatient =>
localizedValues['searchPatient'][locale.languageCode]; localizedValues['searchPatient'][locale.languageCode];
String get searchPatientName =>
localizedValues['searchPatient-name'][locale.languageCode];
String get searchAbout => localizedValues['searchAbout'][locale.languageCode]; String get searchAbout => localizedValues['searchAbout'][locale.languageCode];
@ -1136,6 +1138,9 @@ class TranslationBase {
String get appointmentDate => String get appointmentDate =>
localizedValues['appointmentDate'][locale.languageCode]; localizedValues['appointmentDate'][locale.languageCode];
String get arrivedP => localizedValues['arrived_p'][locale.languageCode]; String get arrivedP => localizedValues['arrived_p'][locale.languageCode];
String get fileNumber => localizedValues['fileNumber'][locale.languageCode];
String get reschedule => localizedValues['reschedule'][locale.languageCode];
String get leaves => localizedValues['leaves'][locale.languageCode];
} }
class TranslationBaseDelegate extends LocalizationsDelegate<TranslationBase> { class TranslationBaseDelegate extends LocalizationsDelegate<TranslationBase> {

@ -695,7 +695,7 @@ class _VerificationMethodsState extends State<VerificationMethods> {
this.checkActivationCode(authProv, value: value); this.checkActivationCode(authProv, value: value);
}, },
() => { () => {
//Navigator.pop(context), Navigator.pop(context),
print('Faild..'), print('Faild..'),
}, },
).displayDialog(context); ).displayDialog(context);

@ -3,6 +3,7 @@ import 'package:doctor_app_flutter/config/size_config.dart';
import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart'; import 'package:doctor_app_flutter/icons_app/doctor_app_icons.dart';
import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart'; import 'package:doctor_app_flutter/models/patient/patiant_info_model.dart';
import 'package:doctor_app_flutter/util/date-utils.dart'; import 'package:doctor_app_flutter/util/date-utils.dart';
import 'package:doctor_app_flutter/util/helpers.dart';
import 'package:doctor_app_flutter/util/translations_delegate_base.dart'; import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/shared/Text.dart'; import 'package:doctor_app_flutter/widgets/shared/Text.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart'; import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
@ -15,41 +16,83 @@ class PatientCard extends StatelessWidget {
final PatiantInformtion patientInfo; final PatiantInformtion patientInfo;
final Function onTap; final Function onTap;
final String patientType; final String patientType;
const PatientCard({Key key, this.patientInfo, this.onTap, this.patientType}) final String arrivalType;
const PatientCard(
{Key key,
this.patientInfo,
this.onTap,
this.patientType,
this.arrivalType})
: super(key: key); : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Container( return Container(
width: SizeConfig.screenWidth * 0.95, width: SizeConfig.screenWidth * 0.9,
padding: EdgeInsets.only(left: 10, right: 10, bottom: 10), margin: EdgeInsets.all(6),
padding: EdgeInsets.only(left: 0, right: 5, bottom: 5, top: 5),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15),
color: Colors.white,
),
child: Stack(children: [
Container(
height: MediaQuery.of(context).size.height * .17,
width: 5,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(10), color: Colors.white), borderRadius: BorderRadius.only(
margin: EdgeInsets.all(5), topLeft: Radius.circular(10),
bottomLeft: Radius.circular(10)),
color: patientInfo.patientStatusType == 43
? Colors.green[500]
: Colors.red[800],
)),
Container(
padding: EdgeInsets.only(left: 10, right: 10, bottom: 10),
child: InkWell( child: InkWell(
child: Column( child: Column(
children: [ children: [
SERVICES_PATIANT2[int.parse(patientType)] == "patientArrivalList"
? Container(height: 5, color: Colors.green[800])
: Container(),
SizedBox( SizedBox(
height: 10, height: 10,
), ),
SERVICES_PATIANT2[int.parse(patientType)] == "patientArrivalList" SERVICES_PATIANT2[int.parse(patientType)] ==
? Row( "patientArrivalList"
? Padding(
padding: EdgeInsets.only(left: 12.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween, mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [ children: [
AppText( patientInfo.patientStatusType == 43
? AppText(
TranslationBase.of(context).arrivedP, TranslationBase.of(context).arrivedP,
color: Colors.green[800], color: Colors.green,
fontWeight: FontWeight.bold,
fontFamily: 'Poppins',
fontSize: 12,
)
: AppText(
TranslationBase.of(context).notArrived,
color: Colors.red[800],
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontFamily: 'Poppins',
fontSize: 12,
), ),
isToday(patientInfo.arrivedOn) == false this.arrivalType == '1'
? AppText(DateUtils.convertStringToDateFormat( ? AppText(
patientInfo.arrivedOn, 'mm-dd-yyyy hh:mm')) patientInfo.startTime != null
: AppText(DateUtils.convertStringToDateFormat( ? patientInfo.startTime
patientInfo.arrivedOn, 'hh:mm')) : '',
], fontFamily: 'Poppins',
fontWeight: FontWeight.w600,
)
: AppText(
DateUtils.convertStringToDateFormat(
patientInfo.arrivedOn,
'MM-dd-yyyy HH:mm'),
fontFamily: 'Poppins',
fontWeight: FontWeight.w600,
) )
],
))
: SizedBox(), : SizedBox(),
Padding( Padding(
padding: EdgeInsets.only(left: 12.0), padding: EdgeInsets.only(left: 12.0),
@ -58,10 +101,13 @@ class PatientCard extends StatelessWidget {
children: [ children: [
Row(children: [ Row(children: [
AppText( AppText(
patientInfo.firstName + " " + patientInfo.lastName, (Helpers.capitalize(patientInfo.firstName) +
fontSize: SizeConfig.textMultiplier * 2.5, " " +
Helpers.capitalize(patientInfo.lastName)),
fontSize: SizeConfig.textMultiplier * 2,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
backGroundcolor: Colors.white, backGroundcolor: Colors.white,
fontFamily: 'Poppins',
), ),
patientInfo.gender == 1 patientInfo.gender == 1
? Icon( ? Icon(
@ -73,9 +119,30 @@ class PatientCard extends StatelessWidget {
color: Colors.pink, color: Colors.pink,
), ),
]), ]),
Row(
children: [
AppText( AppText(
patientInfo.nationalityName ?? patientInfo.nationality, patientInfo.nationalityName ??
patientInfo.nationality,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
fontSize: 14,
),
patientInfo.nationality != null
? ClipRRect(
borderRadius:
BorderRadius.circular(20.0),
child: Image.network(
patientInfo.nationalityFlagURL,
height: 25,
width: 30,
errorBuilder: (BuildContext context,
Object exception,
StackTrace stackTrace) {
return Text('No Image');
},
))
: SizedBox()
],
) )
], ],
)), )),
@ -86,24 +153,23 @@ class PatientCard extends StatelessWidget {
Padding( Padding(
padding: EdgeInsets.only(left: 12.0), padding: EdgeInsets.only(left: 12.0),
child: Container( child: Container(
decoration: BoxDecoration( // decoration: BoxDecoration(
boxShadow: [ // boxShadow: [
BoxShadow( // // BoxShadow(
color: Color.fromRGBO(0, 0, 0, 0.08), // // color: Color.fromRGBO(0, 0, 0, 0.08),
offset: Offset(0.0, 5.0), // // offset: Offset(0.0, 5.0),
blurRadius: 16.0) // // blurRadius: 16.0)
], // // ],
borderRadius: BorderRadius.all(Radius.circular(35.0)), // // borderRadius: BorderRadius.all(Radius.circular(35.0)),
color: Color(0xffCCCCCC), // // color: Color(0xffCCCCCC),
), // ),
width: 70, width: 60,
height: 70, height: 60,
child: Icon( child: Image.asset(
patientInfo.gender == 1 patientInfo.gender == 1
? DoctorApp.male ? 'assets/images/male_avatar.png'
: DoctorApp.female_icon, : 'assets/images/female_avatar.png',
size: 70, fit: BoxFit.cover,
color: Colors.white,
), ),
), ),
), ),
@ -124,15 +190,17 @@ class PatientCard extends StatelessWidget {
color: Colors.black), color: Colors.black),
children: <TextSpan>[ children: <TextSpan>[
new TextSpan( new TextSpan(
text: TranslationBase.of(context).fileNo, text: TranslationBase.of(context)
.fileNumber,
style: TextStyle( style: TextStyle(
fontSize: fontSize: 14,
2.2 * SizeConfig.textMultiplier)), fontFamily: 'Poppins')),
new TextSpan( new TextSpan(
text: patientInfo.patientId.toString(), text: patientInfo.patientId.toString(),
style: TextStyle( style: TextStyle(
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
)), fontFamily: 'Poppins',
fontSize: 15)),
], ],
), ),
), ),
@ -142,17 +210,20 @@ class PatientCard extends StatelessWidget {
text: new TextSpan( text: new TextSpan(
style: new TextStyle( style: new TextStyle(
fontSize: 2.0 * SizeConfig.textMultiplier, fontSize: 2.0 * SizeConfig.textMultiplier,
color: Colors.black), color: Colors.black,
fontFamily: 'Poppins',
),
children: <TextSpan>[ children: <TextSpan>[
new TextSpan( new TextSpan(
text: TranslationBase.of(context).age + " : ", text: TranslationBase.of(context).age +
), " : ",
style: TextStyle(fontSize: 14)),
new TextSpan( new TextSpan(
text: text:
"${DateUtils.getAgeByBirthday(patientInfo.dateofBirth, context)}", "${DateUtils.getAgeByBirthday(patientInfo.dateofBirth, context)}",
style: TextStyle( style: TextStyle(
fontWeight: FontWeight.w700, fontWeight: FontWeight.w700,
)), fontSize: 15)),
], ],
), ),
), ),
@ -164,7 +235,8 @@ class PatientCard extends StatelessWidget {
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[ children: <Widget>[
AppText( AppText(
TranslationBase.of(context).appointmentDate + TranslationBase.of(context)
.appointmentDate +
" : ", " : ",
fontSize: 14, fontSize: 14,
), ),
@ -178,7 +250,8 @@ class PatientCard extends StatelessWidget {
child: AppText( child: AppText(
patientInfo.startTime, patientInfo.startTime,
color: Colors.white, color: Colors.white,
fontSize: 1.5 * SizeConfig.textMultiplier, fontSize:
1.5 * SizeConfig.textMultiplier,
textAlign: TextAlign.center, textAlign: TextAlign.center,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
), ),
@ -188,9 +261,11 @@ class PatientCard extends StatelessWidget {
), ),
Container( Container(
child: AppText( child: AppText(
convertDateFormat2( convertDateFormat2(patientInfo
patientInfo.appointmentDate.toString()), .appointmentDate
fontSize: 1.5 * SizeConfig.textMultiplier, .toString()),
fontSize:
1.5 * SizeConfig.textMultiplier,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
), ),
), ),
@ -208,7 +283,8 @@ class PatientCard extends StatelessWidget {
], ],
), ),
onTap: onTap, onTap: onTap,
)); ))
]));
// ]), // ]),
// TableRow(children: [ // TableRow(children: [

@ -142,8 +142,11 @@ class _AppDrawerState extends State<AppDrawer> {
}, },
), ),
InkWell( InkWell(
child: DrawerItem(TranslationBase.of(context).rescheduleLeaves, child: DrawerItem(
DoctorApp.leaves), TranslationBase.of(context).reschedule,
DoctorApp.leaves,
subTitle: TranslationBase.of(context).leaves,
),
onTap: () { onTap: () {
Navigator.pop(context); Navigator.pop(context);

@ -42,6 +42,7 @@ class _DrawerItemState extends State<DrawerItem> {
AppText( AppText(
widget.title, widget.title,
color: widget.color ?? Colors.black, color: widget.color ?? Colors.black,
textOverflow: TextOverflow.ellipsis,
// fontWeight: FontWeight.bold, // fontWeight: FontWeight.bold,
// margin: 5, // margin: 5,
marginLeft: 5, marginLeft: 5,

@ -122,6 +122,15 @@ flutter:
- asset: assets/fonts/Work_Sans/WorkSans-Bold.ttf - asset: assets/fonts/Work_Sans/WorkSans-Bold.ttf
- asset: assets/fonts/Work_Sans/WorkSans-Bold.ttf - asset: assets/fonts/Work_Sans/WorkSans-Bold.ttf
weight: 700 weight: 700
- family: Poppins
fonts:
- asset: assets/fonts/Poppins/Poppins-Regular.ttf
- asset: assets/fonts/Poppins/Poppins-Medium.ttf
- asset: assets/fonts/Poppins/Poppins-Bold.ttf
weight: 700
# - family: Trajan Pro # - family: Trajan Pro
# fonts: # fonts:
# - asset: fonts/TrajanPro.ttf # - asset: fonts/TrajanPro.ttf

Loading…
Cancel
Save