Added info images description

fix_issues
Mohammad Aljammal 4 years ago
parent 3daef6e53f
commit 269f682bd5

@ -1048,5 +1048,136 @@ const Map localizedValues = {
"en": "This service allows you to view all vital signs were performed in the Habib Medical Group, e.x (height, weight, body mass index, heart rate, etc.) as well shows some statistics charts.",
"ar": "خدمة المؤشرات الحيوية: هذه الخدمة تمكنك من الاطلاع على جميع المؤشرات الحيوية على سبيل المثال (الطول، الوزن، مؤشر كتلة الجسم، معدل نبضات القلب الخ..) التي تمت في مجموعة الحبيب الطبية وكذلك رسوم بيانية على مستوى المؤشر."
},
"info-advance-payment": {
"en": "This service designed so that you can deposit an amount in advance either in your account or in someone else's account with Al Habib Medical Group.",
"ar": "تم تصميم هذه الخدمة حتى تتمكن من دفع مبلغ مقدما او تحت الحساب سواء في حسابك او في حساب شخص اخر لدى مجموعة الحبيب الطبية."
},
"info-my-balance": {
"en": "This service allows you to check your balance in all branchs",
"ar": "هذه الخدمه تتيح لك الاطلاع رصيدك في كل الفروع"
},
"er-contant": {
"en": "This service displays nearest branch among all the branches of Al Habib Medical Group based on your current location.",
"ar": "تعرض هذه الخدمة أقرب فرع من بين جميع فروع مجموعة الحبيب الطبية بناءً على موقعك الحالي."
},
"er": {
"en": "ER",
"ar": "الطوارىء"
},
"transportation-Service": {
"en": "Ambulance Request",
"ar": "طلب نقل اسعاف"
},
"info-ambulance": {
"en": "Through this service, you can request evacuation by ambulance, whether from home or to home, in addition to a set of other services",
"ar": "عن طريق هذه الخدمة يمكنك طلب اخلاء بواسطة سيارة اسعاف سواء من المزل او الى المنزل بالاضافة الى مجموعة من الخدمات الاخرى"
},
"RRT-transport-heading": {
"en": "Select Transportation Method",
"ar": "حدد طريقة النقل"
},
"sar": {
"en": "SR",
"ar": "ر.س"
},
"RRT-direction-heading": {
"en": "Select Direction",
"ar": "حدد الاتجاه"
},
"to-hospital": {
"en": "To Hospital",
"ar": "الى المستشفى"
},
"from-hospital": {
"en": "From Hospital",
"ar": "من المستشفى"
},
"one-direc": {
"en": "One Way",
"ar": "ذهاب"
},
"two-direc": {
"en": "Two Ways",
"ar": "ذهاب وعودة"
},
"pickup-location": {
"en": "Pickup Location",
"ar": "نقطة الانطلاق"
},
"pickup-spot": {
"en": "Pickup Spot",
"ar": "نقطة اللقاء"
},
"inside-home": {
"en": "Inside Home",
"ar": "داخل المنزل"
},
"have-appo": {
"en": "Do you have an appointment?",
"ar": "هل لديك موعد؟"
},
"dropoff-location": {
"en": "Dropoff Location",
"ar": "نقطة الوصول"
},
"select-all": {
"en": "Please select all fields",
"ar": "يرجى تحديد جميع الحقول"
},
"select-map": {
"en": "Select From Map",
"ar": "حدد من الخريطة"
},
"no-appointment": {
"en": "You don't have any appointments yet",
"ar": "ليس لديك أي مواعيد حتى الآن"
},
"patient-share": {
"en": "Amount before tax: ",
"ar": "المبلغ قبل الضريبة:"
},
"patient-share-tax": {
"en": "Tax amount: ",
"ar": "قيمة الضريبة:"
},
"patient-share-total": {
"en": "Total amount payable: ",
"ar": "المبلغ الإجمالي المستحق:"
},
"select-ambulate": {
"en": "Select Ambulate",
"ar": "بحاجة للتنقل بواسطة"
},
"wheelchair": {
"en": "Wheelchair",
"ar": "كرسي متحرك"
},
"walker": {
"en": "Walker",
"ar": "مشاية"
},
"stretcher": {
"en": "Stretcher",
"ar": "نقالة"
},
"none": {
"en": "None",
"ar": "لا شيء"
},
"RRT-Summary": {
"en": "Summary",
"ar": "ملخص الطلب"
},
"bill-amount": {
"en": "Bill Amount",
"ar": "مبلغ الفاتورة"
},
"transport-method": {
"en": "Transportation Method",
"ar": "طريقة النقل"
},
"directions": {
"en": "Directions",
"ar": "الاتجاهات"
},
};

@ -18,6 +18,7 @@ class ParkingPage extends StatelessWidget {
onModelReady: (model) => model.getIsSaveParking(),
builder: (_, model, widget) => AppScaffold(
isShowAppBar: true,
isShowDecPage: false,
appBarTitle: TranslationBase.of(context).parking,
body: SingleChildScrollView(
padding: EdgeInsets.all(12),

@ -1,3 +1,4 @@
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
@ -24,6 +25,7 @@ class AmbulanceReq extends StatefulWidget {
class _AmbulanceReqState extends State<AmbulanceReq>
with SingleTickerProviderStateMixin {
TabController _tabController;
List<ImagesInfo> imagesInfo = List();
@override
void initState() {
@ -39,11 +41,19 @@ class _AmbulanceReqState extends State<AmbulanceReq>
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(
imageEn:
'https://hmgwebservices.com/Images/MobileApp/Ambulance/en/0.png',
imageAr:
'https://hmgwebservices.com/Images/MobileApp/Ambulance/ar/0.png'));
return BaseView<AmRequestViewModel>(
onModelReady: (model) => model.getAmRequestOrders(),
builder: (_, model, widget) => AppScaffold(
isShowAppBar: true,
appBarTitle: "Ambulance Request",
appBarTitle: TranslationBase.of(context).transportationService,
description: TranslationBase.of(context).infoAmbulance,
imagesInfo: imagesInfo,
baseViewModel: model,
body: Scaffold(
extendBodyBehindAppBar: true,
@ -92,8 +102,7 @@ class _AmbulanceReqState extends State<AmbulanceReq>
Container(
width: MediaQuery.of(context).size.width * 0.40,
child: Center(
child: Texts(
"Ambulance Request"), //TranslationBase.of(context).prescriptions
child: Texts(TranslationBase.of(context).transportationService),
),
),
Container(
@ -118,8 +127,8 @@ class _AmbulanceReqState extends State<AmbulanceReq>
controller: _tabController,
children: <Widget>[
AmbulanceRequestIndexPage(
amRequestViewModel: model,
),
amRequestViewModel: model,
),
OrderLogPage(
amRequestViewModel: model,
)

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/core/enum/Ambulate.dart';
import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/pages/Blood/new_text_Field.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/cupertino.dart';
@ -51,7 +52,7 @@ class _BillAmountState extends State<BillAmount> {
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Texts('Bill Amount '),
Texts(TranslationBase.of(context).billAmount),
SizedBox(
height: 10,
),
@ -73,7 +74,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'Amount before tax: ',
TranslationBase.of(context).patientShareB,
textAlign: TextAlign.start,
color: Colors.black,
fontSize: 15,
@ -91,7 +92,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'SR ${widget.patientER.patientERTransportationMethod.price}',
TranslationBase.of(context).sar+' ${widget.patientER.patientERTransportationMethod.price}',
color: Colors.black,
textAlign: TextAlign.start,
fontSize: 15,
@ -108,7 +109,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'Tax amount :',
TranslationBase.of(context).patientShareTax,
color: Colors.black,
fontSize: 15,
textAlign: TextAlign.start,
@ -121,7 +122,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'SR ${widget.patientER.patientERTransportationMethod.vAT}',
TranslationBase.of(context).sar+' ${widget.patientER.patientERTransportationMethod.vAT}',
color: Colors.black,
fontSize: 15,
textAlign: TextAlign.start,
@ -143,7 +144,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'Total amount payable',
TranslationBase.of(context).patientShareTotal,
color: Colors.black,
fontSize: 15,
textAlign: TextAlign.start,
@ -162,7 +163,7 @@ class _BillAmountState extends State<BillAmount> {
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Texts(
'SR ${widget.patientER.patientERTransportationMethod.totalPrice}',
TranslationBase.of(context).sar+' ${widget.patientER.patientERTransportationMethod.totalPrice}',
color: Colors.black,
fontSize: 15,
textAlign: TextAlign.start,
@ -176,7 +177,7 @@ class _BillAmountState extends State<BillAmount> {
SizedBox(
height: 10,
),
Texts('Select Ambulate',bold: true,),
Texts(TranslationBase.of(context).selectAmbulate,bold: true,),
SizedBox(height: 5,),
Row(
children: [
@ -196,11 +197,11 @@ class _BillAmountState extends State<BillAmount> {
color: Colors.white,
),
child: ListTile(
title: Text('Wheelchair'),
title: Text(TranslationBase.of(context).wheelchair),
leading: Radio(
value: Ambulate.Wheelchair,
groupValue: _ambulate,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_ambulate = value;
@ -227,11 +228,11 @@ class _BillAmountState extends State<BillAmount> {
color: Colors.white,
),
child: ListTile(
title: Text('Walker'),
title: Text(TranslationBase.of(context).walker),
leading: Radio(
value: Ambulate.Walker,
groupValue: _ambulate,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_ambulate = value;
@ -263,11 +264,11 @@ class _BillAmountState extends State<BillAmount> {
color: Colors.white,
),
child: ListTile(
title: Text('Stretcher'),
title: Text(TranslationBase.of(context).stretcher),
leading: Radio(
value: Ambulate.Stretcher,
groupValue: _ambulate,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_ambulate = value;
@ -294,11 +295,11 @@ class _BillAmountState extends State<BillAmount> {
color: Colors.white,
),
child: ListTile(
title: Text('None'),
title: Text(TranslationBase.of(context).none),
leading: Radio(
value: Ambulate.None,
groupValue: _ambulate,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_ambulate = value;
@ -313,7 +314,7 @@ class _BillAmountState extends State<BillAmount> {
),
SizedBox(height: 12,),
NewTextFields(
hintText: 'Note',
hintText: TranslationBase.of(context).notes,
initialValue: note,
onChanged: (value){
setState(() {
@ -340,7 +341,7 @@ class _BillAmountState extends State<BillAmount> {
widget.changeCurrentTab(3);
});
},
label: 'Next',
label: TranslationBase.of(context).next,
),
)
],

@ -9,6 +9,7 @@ import 'package:diplomaticquarterapp/pages/landing/home_page.dart';
import 'package:diplomaticquarterapp/uitl/ProgressDialog.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/pickupLocation/PickupLocationFromMap.dart';
@ -78,7 +79,7 @@ class _PickupLocationState extends State<PickupLocation> {
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Texts('Pickup Location'),
Texts(TranslationBase.of(context).pickupLocation),
SizedBox(
height: 15,
),
@ -110,7 +111,7 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Texts(getSelectFromMapName()),
Texts(getSelectFromMapName(context)),
Icon(
FontAwesomeIcons.mapMarkerAlt,
size: 24,
@ -123,7 +124,7 @@ class _PickupLocationState extends State<PickupLocation> {
SizedBox(
height: 12,
),
Texts('Pickup Spot'),
Texts(TranslationBase.of(context).pickupSpot),
SizedBox(
height: 5,
),
@ -141,7 +142,7 @@ class _PickupLocationState extends State<PickupLocation> {
color: Colors.white,
),
child: ListTile(
title: Texts('Inside Home'),
title: Texts(TranslationBase.of(context).insideHome),
leading: Checkbox(
activeColor: Colors.red[800],
value: _isInsideHome,
@ -157,7 +158,7 @@ class _PickupLocationState extends State<PickupLocation> {
SizedBox(
height: 12,
),
Texts('Do you have an appointment ?'),
Texts(TranslationBase.of(context).haveAppo),
SizedBox(
height: 5,
),
@ -182,7 +183,7 @@ class _PickupLocationState extends State<PickupLocation> {
color: Colors.white,
),
child: ListTile(
title: Text('Yes'),
title: Text(TranslationBase.of(context).yes),
leading: Radio(
value: HaveAppointment.YES,
groupValue: _haveAppointment,
@ -217,7 +218,7 @@ class _PickupLocationState extends State<PickupLocation> {
color: Colors.white,
),
child: ListTile(
title: Text('No'),
title: Text(TranslationBase.of(context).no),
leading: Radio(
value: HaveAppointment.NO,
groupValue: _haveAppointment,
@ -250,7 +251,7 @@ class _PickupLocationState extends State<PickupLocation> {
SizedBox(
height: 12,
),
Texts('Drop off Location'),
Texts(TranslationBase.of(context).dropoffLocation),
SizedBox(
height: 8,
),
@ -270,7 +271,7 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Texts(getHospitalName('Pickup Location')),
Texts(getHospitalName(TranslationBase.of(context).pickupLocation)),
Icon(
Icons.arrow_drop_down,
size: 24,
@ -306,7 +307,7 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Texts(getHospitalName('Pickup Location')),
Texts(getHospitalName(TranslationBase.of(context).pickupLocation)),
Icon(
Icons.arrow_drop_down,
size: 24,
@ -319,7 +320,7 @@ class _PickupLocationState extends State<PickupLocation> {
SizedBox(
height: 12,
),
Texts('Drop off Location'),
Texts(TranslationBase.of(context).dropoffLocation),
SizedBox(
height: 8,
),
@ -351,7 +352,7 @@ class _PickupLocationState extends State<PickupLocation> {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Texts(getSelectFromMapName()),
Texts(getSelectFromMapName(context)),
Icon(
FontAwesomeIcons.mapMarkerAlt,
size: 24,
@ -377,7 +378,7 @@ class _PickupLocationState extends State<PickupLocation> {
onTap: () {
if (_result == null || _selectedHospital == null)
AppToast.showErrorToast(
message: 'please select all fields');
message: TranslationBase.of(context).selectAll);
else
setState(() {
widget.patientER.pickupSpot = _isInsideHome ? 1 : 0;
@ -427,7 +428,7 @@ class _PickupLocationState extends State<PickupLocation> {
widget.changeCurrentTab(2);
});
},
label: 'Next',
label: TranslationBase.of(context).next,
),
)
],
@ -455,8 +456,8 @@ class _PickupLocationState extends State<PickupLocation> {
return _selectedHospital == null ? title : _selectedHospital.name;
}
String getSelectFromMapName() {
return _result != null ? _result.formattedAddress : 'Select From Map';
String getSelectFromMapName(BuildContext context) {
return _result != null ? _result.formattedAddress : TranslationBase.of(context).selectMap;
}
getAppointment() {
@ -494,7 +495,7 @@ class _PickupLocationState extends State<PickupLocation> {
setState(() {
_haveAppointment = HaveAppointment.NO;
});
AppToast.showErrorToast(message: 'You don\'t have any appointment');
AppToast.showErrorToast(message: TranslationBase.of(context).noAppointment);
}
}).catchError((e) {
ProgressDialogUtil.hideProgressDialog(context);

@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/core/enum/OrderService.dart';
import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
import 'package:diplomaticquarterapp/core/model/er/get_all_transportation_method_list_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/cupertino.dart';
@ -67,7 +68,7 @@ class _SelectTransportationMethodState
SizedBox(
height: 12,
),
Texts('Select Transportation Method'),
Texts(TranslationBase.of(context).transportHeading),
...List.generate(
widget.amRequestViewModel.amRequestModeList.length,
(index) => InkWell(
@ -96,7 +97,7 @@ class _SelectTransportationMethodState
value: widget
.amRequestViewModel.amRequestModeList[index],
groupValue: _erTransportationMethod,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_erTransportationMethod = value;
@ -108,7 +109,7 @@ class _SelectTransportationMethodState
Expanded(
flex: 1,
child: Texts(
'SR ${widget.amRequestViewModel.amRequestModeList[index].price}'),
TranslationBase.of(context).sar+' ${widget.amRequestViewModel.amRequestModeList[index].price}'),
)
],
),
@ -118,7 +119,7 @@ class _SelectTransportationMethodState
SizedBox(
height: 12,
),
Texts('Select Direction'),
Texts(TranslationBase.of(context).directionHeading),
SizedBox(
height: 5,
),
@ -144,11 +145,11 @@ class _SelectTransportationMethodState
color: Colors.white,
),
child: ListTile(
title: Text('To Hospital'),
title: Text(TranslationBase.of(context).toHospital),
leading: Radio(
value: Direction.ToHospital,
groupValue: _direction,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_direction = value;
@ -175,11 +176,11 @@ class _SelectTransportationMethodState
color: Colors.white,
),
child: ListTile(
title: Text('Form Hospital'),
title: Text(TranslationBase.of(context).fromHospital),
leading: Radio(
value: Direction.FromHospital,
groupValue: _direction,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_direction = value;
@ -200,7 +201,7 @@ class _SelectTransportationMethodState
SizedBox(
height: 8,
),
Texts('Select Direction'),
Texts(TranslationBase.of(context).directionHeading),
SizedBox(
height: 5,
),
@ -222,11 +223,11 @@ class _SelectTransportationMethodState
color: Colors.white,
),
child: ListTile(
title: Text('One Way'),
title: Text(TranslationBase.of(context).oneDirec),
leading: Radio(
value: Way.OneWay,
groupValue: _way,
activeColor: Colors.red[800],
activeColor:Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_way = value;
@ -253,11 +254,11 @@ class _SelectTransportationMethodState
color: Colors.white,
),
child: ListTile(
title: Text('Two Ways'),
title: Text(TranslationBase.of(context).twoDirec),
leading: Radio(
value: Way.TwoWays,
groupValue: _way,
activeColor: Colors.red[800],
activeColor: Theme.of(context).primaryColor,
onChanged: (value) {
setState(() {
_way = value;
@ -298,7 +299,7 @@ class _SelectTransportationMethodState
widget.changeCurrentTab(1);
});
},
label: 'Next',
label: TranslationBase.of(context).next,
),
)
],

@ -1,5 +1,6 @@
import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:flutter/cupertino.dart';
@ -17,7 +18,7 @@ class Summary extends StatefulWidget {
_SummaryState createState() => _SummaryState();
}
//TODO it should be dynamic
//TODO it should be dynamic fix it
class _SummaryState extends State<Summary> {
@override
Widget build(BuildContext context) {
@ -27,7 +28,7 @@ class _SummaryState extends State<Summary> {
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Texts('Summary'),
Texts(TranslationBase.of(context).RRTSummary),
SizedBox(height: 5,),
Container(
width: double.infinity,
@ -39,11 +40,11 @@ class _SummaryState extends State<Summary> {
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Texts('Transportation Method',color: Colors.grey,),
Texts(TranslationBase.of(context).transportMethod,color: Colors.grey,),
Texts('${widget.patientER.patientERTransportationMethod.title}',bold: true,),
SizedBox(height: 8,),
Texts('Direction',color: Colors.grey,),
Texts(TranslationBase.of(context).directions,color: Colors.grey,),
Texts('From Hospital',bold: true,),
SizedBox(height: 8,),
@ -66,7 +67,7 @@ class _SummaryState extends State<Summary> {
),
),
SizedBox(height: 20,),
Texts('Bill Amount',textAlign: TextAlign.start,),
Texts(TranslationBase.of(context).RRTSummary,textAlign: TextAlign.start,),
SizedBox(height: 5,),
Container(
height: 55,
@ -92,7 +93,7 @@ class _SummaryState extends State<Summary> {
child:SecondaryButton(
color: Colors.grey[800],
textColor: Colors.white,
label: 'Send',
label: TranslationBase.of(context).send,
onTap: () async {
await widget.amRequestViewModel.insertERPressOrder(patientER: widget.patientER);

@ -31,13 +31,13 @@ class _ErOptionsState extends State<ErOptions> {
Widget build(BuildContext context) {
return AppScaffold(
isShowAppBar: widget.isAppbar,
isShowDecPage: false,
appBarTitle: TranslationBase.of(context).bookAppo,
body: Container(
margin: EdgeInsets.fromLTRB(10.0, 20.0, 10.0, 10.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Container(
margin: EdgeInsets.fromLTRB(0.0, 10.0, 0.0, 10.0),
child: Row(

@ -27,14 +27,15 @@ class NearestEr extends StatelessWidget {
: (model) => model.getProjectAvgERWaitingTimeOrders(),
builder: (_, mode, widget) => AppScaffold(
isShowAppBar: true,
appBarTitle: 'Nearest ER',
appBarTitle: TranslationBase.of(context).er,
description: TranslationBase.of(context).erContant,
baseViewModel: mode,
body: mode.ProjectAvgERWaitingTimeModeList.length > 0
? Container(
child: ListView(
children: <Widget>[
Text(
"\nThis service Displays nearest branch\n among all the branches of All Habib \n medical Group based on your current Location",
TranslationBase.of(context).erContant,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: 18.0,

@ -13,7 +13,7 @@ class StepsWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
ProjectViewModel projectViewModel = Provider.of(context);
return projectViewModel.isArabic? Stack(
return !projectViewModel.isArabic? Stack(
children: [
Container(
height: 50,

@ -11,6 +11,7 @@ class CardCommonEr extends StatelessWidget {
final text;
final subText;
final type;
const CardCommonEr(
{@required this.image,
@required this.text,
@ -22,7 +23,6 @@ class CardCommonEr extends StatelessWidget {
return GestureDetector(
onTap: () {
navigateToSearch(context, this.type);
},
child: Container(
margin: EdgeInsets.fromLTRB(9.0, 9.0, 9.0, 9.0),
@ -60,24 +60,10 @@ class CardCommonEr extends StatelessWidget {
}
Future navigateToSearch(context, type) async {
//===Switch case===
if(type==0)
{
Navigator.push(
context,
FadePage(
page: AmbulanceReq()));
}
else{
Navigator.push(
context,
FadePage(
page: NearestEr()));
if (type == 0) {
Navigator.push(context, FadePage(page: AmbulanceReq()));
} else {
Navigator.push(context, FadePage(page: NearestEr()));
}
}
}

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -18,8 +19,11 @@ class InsuranceApproval extends StatefulWidget {
}
class _InsuranceApprovalState extends State<InsuranceApproval> {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/apporvals/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/apporvals/ar/0.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/apporvals/en/1.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/apporvals/ar/1.png'));
return BaseView<InsuranceViewModel>(
onModelReady: widget.appointmentNo != null
? (model) =>
@ -32,6 +36,7 @@ class _InsuranceApprovalState extends State<InsuranceApproval> {
appBarTitle: TranslationBase.of(context).approvals,
description: TranslationBase.of(context).infoApprovals,
infoList: TranslationBase.of(context).infoApprovalPoints,
imagesInfo: imagesInfo,
body: SingleChildScrollView(
child: Container(
margin: EdgeInsets.only(

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/service/insurance_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart';
import 'package:diplomaticquarterapp/locator.dart';
@ -19,16 +20,19 @@ import '../base/base_view.dart';
class InsuranceCard extends StatefulWidget {
int appointmentNo;
InsuranceCard({this.appointmentNo});
@override
_InsuranceCardState createState() => _InsuranceCardState();
}
//TODO fix it
class _InsuranceCardState extends State<InsuranceCard> {
InsuranceCardService _insuranceCardService = locator<InsuranceCardService>();
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/insurance-card/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/insurance-card/ar/0.png'));
return BaseView<InsuranceViewModel>(
onModelReady: (model) => model.getInsurance(),
builder: (BuildContext context, InsuranceViewModel model, Widget child) =>
@ -39,6 +43,7 @@ class _InsuranceCardState extends State<InsuranceCard> {
appBarTitle: TranslationBase.of(context).insuranceCards,
description: TranslationBase.of(context).infoInsuranceCards,
infoList: TranslationBase.of(context).infoInsuranceCardsPoints,
imagesInfo: imagesInfo,
body: Container(
margin: EdgeInsets.only(
left: SizeConfig.screenWidth * 0.004,

@ -1,3 +1,4 @@
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/AllergiesViewModel.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
@ -7,8 +8,10 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class AllergiesPage extends StatelessWidget {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/alllergies/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/alllergies/ar/0.png'));
return BaseView<AllergiesViewModel>(
onModelReady: (model) => model.getAllergies(),
builder: (_, model, w) => AppScaffold(
@ -16,6 +19,7 @@ class AllergiesPage extends StatelessWidget {
appBarTitle: TranslationBase.of(context).allergies,
baseViewModel: model,
description: TranslationBase.of(context).infoAllergies,
imagesInfo: imagesInfo,
body: ListView.builder(
itemCount: model.allergies.length,
itemBuilder: (context, index) => Container(

@ -1,5 +1,6 @@
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart';
import 'package:diplomaticquarterapp/core/model/my_balance/patient_info.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart';
@ -48,7 +49,7 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
AppSharedPreferences sharedPref = AppSharedPreferences();
AuthenticatedUser authUser;
List<ImagesInfo> imagesInfo = List();
@override
void initState() {
super.initState();
@ -57,11 +58,14 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/images-info-home/advance-payment/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/images-info-home/advance-payment/ar/0.png'));
return BaseView<MyBalanceViewModel>(
onModelReady: (model) => model.getHospitals(),
builder: (_, model, w) => AppScaffold(
isShowAppBar: true,
appBarTitle: TranslationBase.of(context).advancePayment,
description: TranslationBase.of(context).infoAdvancePayment,
imagesInfo: imagesInfo,
body: SingleChildScrollView(
physics: ScrollPhysics(),
child: Container(
@ -207,7 +211,7 @@ class _AdvancePaymentPageState extends State<AdvancePaymentPage> {
),
NewTextFields(
hintText: TranslationBase.of(context).depositorEmail,
initialValue: model.user.emailAddress,
initialValue: model.user?.emailAddress,
onChanged: (value) {
email = value;
},

@ -1,3 +1,4 @@
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
@ -12,14 +13,20 @@ import 'package:hexcolor/hexcolor.dart';
import 'advance_payment_page.dart';
class MyBalancePage extends StatelessWidget {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/images-info-home/my-balance/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/images-info-home/my-balance/ar/0.png'));
return BaseView<MyBalanceViewModel>(
onModelReady: (model) => model.getPatientAdvanceBalanceAmount(),
builder: (_, model, w) => AppScaffold(
baseViewModel: model,
isShowAppBar: true,
appBarTitle: TranslationBase.of(context).myBalances,
description: TranslationBase.of(context).infoMyBalance,
imagesInfo: imagesInfo,
body: Container(
margin: EdgeInsets.all(12),
child: Column(

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/core/enum/filter_type.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/my_doctor_view_model.dart';
import 'package:diplomaticquarterapp/models/Appointments/DoctorListResponse.dart';
import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/DoctorView.dart';
@ -15,8 +16,11 @@ import 'package:flutter/material.dart';
import 'doctor_profile_page.dart';
class DoctorHomePage extends StatelessWidget {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-doctor/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-doctor/ar/0.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-doctor/en/1.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-doctor/ar/1.png'));
return BaseView<MyDoctorViewModel>(
onModelReady: (model) => model.getMyDoctor(),
builder: (context, MyDoctorViewModel model, widget) => AppScaffold(
@ -25,6 +29,7 @@ class DoctorHomePage extends StatelessWidget {
appBarTitle: TranslationBase.of(context).myDoctor,
description: TranslationBase.of(context).infoMyDoctor,
infoList: TranslationBase.of(context).infoMyDoctorPoints,
imagesInfo: imagesInfo,
body: SingleChildScrollView(
physics: BouncingScrollPhysics(),
child: FractionallySizedBox(

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/core/enum/filter_type.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/labs_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
@ -13,8 +14,11 @@ import 'package:flutter/material.dart';
import 'laboratory_result_page.dart';
class LabsHomePage extends StatelessWidget {
List<ImagesInfo> imagesInfo =List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-lab/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-lab/ar/0.png'));
return BaseView<LabsViewModel>(
onModelReady: (model) => model.getLabs(),
builder: (context, LabsViewModel model, widget) => AppScaffold(
@ -22,6 +26,7 @@ class LabsHomePage extends StatelessWidget {
isShowAppBar: true,
description: TranslationBase.of(context).infoLab,
appBarTitle: TranslationBase.of(context).labOrders,
imagesInfo: imagesInfo,
body: SingleChildScrollView(
physics: BouncingScrollPhysics(),
child: FractionallySizedBox(

@ -1,3 +1,4 @@
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/patient_sick_leave_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
@ -12,8 +13,10 @@ class PatientSickLeavePage extends StatefulWidget {
}
class _PatientSickLeavePageState extends State<PatientSickLeavePage> {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/sick-leaves/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/sick-leaves/ar/0.png'));
return BaseView<PatientSickLeaveViewMode>(
onModelReady: (model) => model.getSickLeave(),
builder: (_, model, w) => AppScaffold(
@ -21,6 +24,7 @@ class _PatientSickLeavePageState extends State<PatientSickLeavePage> {
appBarTitle: TranslationBase.of(context).sickLeaves,
description: TranslationBase.of(context).infoSickLeaves,
infoList: TranslationBase.of(context).infoSickLeavePoints,
imagesInfo: imagesInfo,
baseViewModel: model,
body: Container(
margin: EdgeInsets.all(12),

@ -1,5 +1,6 @@
import 'dart:ui';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_page.dart';
@ -18,11 +19,14 @@ class HomePrescriptionsPage extends StatefulWidget {
class _HomePrescriptionsPageState extends State<HomePrescriptionsPage>
with SingleTickerProviderStateMixin {
TabController _tabController;
List<ImagesInfo> imagesInfo = List();
@override
void initState() {
super.initState();
_tabController = TabController(length: 2, vsync: this);
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-prescriptions/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-prescriptions/ar/0.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-prescriptions/en/1.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-prescriptions/ar/1.png'));
}
@override
@ -40,6 +44,7 @@ class _HomePrescriptionsPageState extends State<HomePrescriptionsPage>
appBarTitle: TranslationBase.of(context).prescriptions,
description: TranslationBase.of(context).infoPrescriptions,
infoList: TranslationBase.of(context).infoPrescriptionsPoints,
imagesInfo: imagesInfo,
body: Scaffold(
extendBodyBehindAppBar: true,
appBar: PreferredSize(

@ -1,4 +1,5 @@
import 'package:diplomaticquarterapp/core/enum/filter_type.dart';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/radiology_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_details_page.dart';
@ -12,8 +13,11 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class RadiologyHomePage extends StatelessWidget {
List<ImagesInfo> imagesInfo = List();
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-radiology/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-radiology/ar/0.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-radiology/en/1.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/my-radiology/ar/1.png'));
return BaseView<RadiologyViewModel>(
onModelReady: (model) => model.getPatientRadOrders(),
builder: (_, model, widget) => AppScaffold(
@ -21,6 +25,7 @@ class RadiologyHomePage extends StatelessWidget {
appBarTitle: TranslationBase.of(context).radiology,
baseViewModel: model,
description: TranslationBase.of(context).infoRadiology,
imagesInfo: imagesInfo,
body: FractionallySizedBox(
widthFactor: 1.0,
child: ListView(

@ -1,5 +1,6 @@
import 'dart:ui';
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/reports_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/reports/report_list_widget.dart';
@ -20,6 +21,7 @@ class HomeReportPage extends StatefulWidget {
class _HomeReportPageState extends State<HomeReportPage>
with SingleTickerProviderStateMixin {
TabController _tabController;
List<ImagesInfo> imagesInfo = List();
@override
void initState() {
@ -35,6 +37,9 @@ class _HomeReportPageState extends State<HomeReportPage>
@override
Widget build(BuildContext context) {
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/en/0.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/ar/0.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/en/1.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/ar/1.png'));
imagesInfo.add(ImagesInfo(imageEn: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/en/2.png',imageAr: 'https://hmgwebservices.com/Images/MobileApp/imges-info/medical-reorts/ar/2.png'));
return BaseView<ReportsViewModel>(
onModelReady: (model) => model.getReports(), //model.getPrescriptions(),
builder: (_, model, widget) => AppScaffold(
@ -42,8 +47,7 @@ class _HomeReportPageState extends State<HomeReportPage>
appBarTitle: TranslationBase.of(context).monthReport,
description: TranslationBase.of(context).infoMonthReport,
baseViewModel: model,
//bottomSheet: Container(),
imagesInfo: imagesInfo,
body: Scaffold(
extendBodyBehindAppBar: true,
appBar: PreferredSize(

@ -868,6 +868,39 @@ String get fileno => localizedValues['fileno'][locale.languageCode];
String get sendCopyRad => localizedValues['send-copy'][locale.languageCode];
String get appoSurvey => localizedValues['appoSurvey'][locale.languageCode];
String get infoSigns => localizedValues['info-signs'][locale.languageCode];
String get infoAdvancePayment => localizedValues['info-advance-payment'][locale.languageCode];
String get infoMyBalance => localizedValues['info-my-balance'][locale.languageCode];
String get erContant => localizedValues['er-contant'][locale.languageCode];
String get er => localizedValues['er'][locale.languageCode];
String get transportationService => localizedValues['transportation-Service'][locale.languageCode];
String get infoAmbulance => localizedValues['info-ambulance'][locale.languageCode];
String get transportHeading => localizedValues['RRT-transport-heading'][locale.languageCode];
String get sar => localizedValues['sar'][locale.languageCode];
String get directionHeading => localizedValues['RRT-direction-heading'][locale.languageCode];
String get toHospital => localizedValues['to-hospital'][locale.languageCode];
String get fromHospital => localizedValues['from-hospital'][locale.languageCode];
String get oneDirec => localizedValues['one-direc'][locale.languageCode];
String get twoDirec => localizedValues['two-direc'][locale.languageCode];
String get pickupLocation => localizedValues['pickup-location'][locale.languageCode];
String get pickupSpot => localizedValues['pickup-spot'][locale.languageCode];
String get insideHome => localizedValues['inside-home'][locale.languageCode];
String get haveAppo => localizedValues['have-appo'][locale.languageCode];
String get dropoffLocation => localizedValues['dropoff-location'][locale.languageCode];
String get selectAll => localizedValues['select-all'][locale.languageCode];
String get selectMap => localizedValues['select-map'][locale.languageCode];
String get noAppointment => localizedValues['no-appointment'][locale.languageCode];
String get patientShareB => localizedValues['patient-share'][locale.languageCode];
String get patientShareTax => localizedValues['patient-share-tax'][locale.languageCode];
String get patientShareTotal => localizedValues['patient-share-total'][locale.languageCode];
String get selectAmbulate => localizedValues['select-ambulate'][locale.languageCode];
String get wheelchair => localizedValues['wheelchair'][locale.languageCode];
String get walker => localizedValues['walker"'][locale.languageCode];
String get stretcher => localizedValues['stretcher'][locale.languageCode];
String get none => localizedValues['none'][locale.languageCode];
String get RRTSummary => localizedValues['RRT-Summary'][locale.languageCode];
String get billAmount => localizedValues['bill-amount'][locale.languageCode];
String get transportMethod => localizedValues['transport-method'][locale.languageCode];
String get directions => localizedValues['directions'][locale.languageCode];
}

@ -135,7 +135,7 @@ class AppScaffold extends StatelessWidget {
baseViewModel: baseViewModel,
)
: buildBodyWidget(),
bottomSheet: bottomSheet,
bottomSheet: (Provider.of<ProjectViewModel>(context, listen: false).isLogin || !isShowDecPage)?bottomSheet:null,
//floatingActionButton: floatingActionButton ?? floatingActionButton,
// bottomNavigationBar:
// this.isBottomBar == true ? BottomBarSearch() : SizedBox()

@ -115,7 +115,7 @@ class _NotAutPageState extends State<NotAutPage> {
}).toList(),
options: CarouselOptions(
height: MediaQuery.of(context).size.height * 0.55,
autoPlay: true,
autoPlay: widget.imagesInfo.length>1,
viewportFraction: 1.0,
),
),

Loading…
Cancel
Save