add ar lan for medical profile

find_us
Mohammad Aljammal 6 years ago
parent ef4a57223c
commit 1b3a780a29

@ -356,7 +356,6 @@
/* Begin XCBuildConfiguration section */ /* Begin XCBuildConfiguration section */
249021D3217E4FDB00AE95B9 /* Profile */ = { 249021D3217E4FDB00AE95B9 /* Profile */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NONNULL = YES;
@ -433,7 +432,6 @@
}; };
97C147031CF9000F007C117D /* Debug */ = { 97C147031CF9000F007C117D /* Debug */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */;
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NONNULL = YES;
@ -489,7 +487,6 @@
}; };
97C147041CF9000F007C117D /* Release */ = { 97C147041CF9000F007C117D /* Release */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NONNULL = YES;

@ -343,7 +343,10 @@ const Map<String, Map<String, String>> localizedValues = {
"en": "Online Payment Service", "en": "Online Payment Service",
'ar': 'خدمة الدفع عبر الإلكتدوني' 'ar': 'خدمة الدفع عبر الإلكتدوني'
}, },
"OffersAndPackages": {"en": "Online transfer request", 'ar': 'طلب التحويل الالكتروني'}, "OffersAndPackages": {
"en": "Online transfer request",
'ar': 'طلب التحويل الالكتروني'
},
"ComprehensiveMedicalCheckup": { "ComprehensiveMedicalCheckup": {
"en": "Comprehensive Medical Check up", "en": "Comprehensive Medical Check up",
'ar': 'فحص طبي شامل' 'ar': 'فحص طبي شامل'
@ -362,20 +365,87 @@ const Map<String, Map<String, String>> localizedValues = {
"medicalProfile": {"en": "Medical Profile", 'ar': 'الملف الطبي'}, "medicalProfile": {"en": "Medical Profile", 'ar': 'الملف الطبي'},
"consultation": {"en": "Consultation", "ar": "استشارة"}, "consultation": {"en": "Consultation", "ar": "استشارة"},
"logs": {"en": "Logs", "ar": "السجلات"}, "logs": {"en": "Logs", "ar": "السجلات"},
"parking":{"en":"Parking","ar":"مواقف"}, "parking": {"en": "Parking", "ar": "مواقف"},
"alhabiServices":{"en":"HMG Service","ar":"خدمات الحبيب"}, "alhabiServices": {"en": "HMG Service", "ar": "خدمات الحبيب"},
"parkingTitle":{"en":"Car service, car service, service to save parking information, return to it later, 1- By clicking on (Read the code), save the parking data. 2- By clicking on the button (view my car park), it shows you the cars location in Google Maps. 3- Read another position by pressing the Clear Position Data button.","ar":" خدمة المواقف، تتيح هذه الخدمة للمستخدم معلومات عن موقف السيارة ليسهل عليه العودة لها لاحقاً ، 1- بالضغط على زر(قراءة الكود) تستطيع حفظ البيانات الخاصة بالموقف. 2-بالضغط على زر(عرض موقف سيارتي) يعرض لك موقع السيارة في خرائط قوقل. 3- لإعادة قراءة موقف آخرعن طريق الضغط على زر(مسح بيانات الموقف). "}, "parkingTitle": {
"readBarcode":{"en":"Read Barcode","ar":"قراءة الكود"}, "en":
"showMyPark":{"en":"Show My Park","ar":"عرض بارك"}, "Car service, car service, service to save parking information, return to it later, 1- By clicking on (Read the code), save the parking data. 2- By clicking on the button (view my car park), it shows you the cars location in Google Maps. 3- Read another position by pressing the Clear Position Data button.",
"clearMyData":{"en":"clear My Data","ar":"امسح البيانات"}, "ar":
"floor":{"en":"Floor:","ar":"الطابق"}, " خدمة المواقف، تتيح هذه الخدمة للمستخدم معلومات عن موقف السيارة ليسهل عليه العودة لها لاحقاً ، 1- بالضغط على زر(قراءة الكود) تستطيع حفظ البيانات الخاصة بالموقف. 2-بالضغط على زر(عرض موقف سيارتي) يعرض لك موقع السيارة في خرائط قوقل. 3- لإعادة قراءة موقف آخرعن طريق الضغط على زر(مسح بيانات الموقف). "
"gate":{"en":"Gate:","ar":"بوابة"}, },
"building":{"en":"Building:","ar":"المبنى"}, "readBarcode": {"en": "Read Barcode", "ar": "قراءة الكود"},
"branch":{"en":"Branch:","ar":"الفرع"}, "showMyPark": {"en": "Show My Park", "ar": "عرض بارك"},
"emergencyServices":{"en":"Emergency Services:","ar":"خدمات الطوارئ"}, "clearMyData": {"en": "clear My Data", "ar": "امسح البيانات"},
"floor": {"en": "Floor:", "ar": "الطابق"},
"gate": {"en": "Gate:", "ar": "بوابة"},
"building": {"en": "Building:", "ar": "المبنى"},
"branch": {"en": "Branch:", "ar": "الفرع"},
"emergencyServices": {"en": "Emergency Services:", "ar": "خدمات الطوارئ"},
"textToSpeech": {"en": "How May I Help You?", "ar": "كيف يمكنني مساعدتك؟"}, "textToSpeech": {"en": "How May I Help You?", "ar": "كيف يمكنني مساعدتك؟"},
"MyAppointments": {"en": "My Appointments", "ar": "مواعيدي"}, "MyAppointments": {"en": "My Appointments", "ar": "مواعيدي"},
"NoBookedAppointments": {"en": "No Booked Appointments", "ar": "لا توجد مواعيد محجوزة"}, "NoBookedAppointments": {
"NoConfirmedAppointments": {"en": "No Confirmed Appointments", "ar": "لا توجد مواعيد مؤكدة"}, "en": "No Booked Appointments",
"noArrivedAppointments": {"en": "No Arrived Appointments", "ar": "لم تصل المواعيد"}, "ar": "لا توجد مواعيد محجوزة"
},
"NoConfirmedAppointments": {
"en": "No Confirmed Appointments",
"ar": "لا توجد مواعيد مؤكدة"
},
"noArrivedAppointments": {
"en": "No Arrived Appointments",
"ar": "لم تصل المواعيد"
},
"MyAppointmentsList": {"en": "List", "ar": "قائمة بمواعدي"},
"Radiology": {"en": "Radiology", "ar": "الأشعة"},
"RadiologySubtitle": {"en": "Result", "ar": "صور وتقارير"},
"Lab": {"en": "Lab", "ar": "تحليل المختبر"},
"LabSubtitle": {"en": "Result", "ar": "نتائج"},
"Medicines": {"en": "Medicines", "ar": "الوصفات"},
"MedicinesSubtitle": {"en": "Prescriptions", "ar": "الوصفات الطبية"},
"VitalSigns": {"en": "Vital Signs", "ar": "المؤشرات الحيوية"},
"VitalSignsSubTitle": {"en": "Reports", "ar": "قراءات"},
"MyMedical": {"en": "Active", "ar": "قراءات"},
"MyMedicalSubtitle": {"en": "Medications", "ar": "النشطة"},
"MyDoctor": {"en": "My Doctor", "ar": "اطبائي"},
"MyDoctorSubtitle": {"en": "List", "ar": "قمت بزيارتهم"},
"Eye": {"en": "Eye", "ar": "قياسات"},
"EyeSubtitle": {"en": "Measurement", "ar": "النظر"},
"Insurance": {"en": "Insurance", "ar": "بطاقة"},
"InsuranceSubtitle": {"en": "Card", "ar": "التأمين"},
"UpdateInsurance": {"en": "Update Insurance", "ar": "تحديث التأمين"},
"UpdateInsuranceSubtitle": {"en": "Card", "ar": "التأمين"},
"InsuranceApproval": {"en": "Insurance Approval", "ar": "موافقات"},
"InsuranceApprovalSubtitle": {"en": "Approvals", "ar": "موافقات التأمين"},
"Allergies": {"en": "Approvals", "ar": "الحساسية"},
"AllergiesSubtitle": {"en": "Diagnosed", "ar": "مسجلة"},
"MyVaccines": {"en": "My Vaccines", "ar": "تطعيماتي"},
"MyVaccinesSubtitle": {"en": "List", "ar": "قائمة"},
"Medical": {"en": "Medical", "ar": "التقارير"},
"MedicalSubtitle": {"Report": "List", "ar": "الطبية"},
"Monthly": {"en": "Monthly", "ar": "تقارير"},
"MonthlySubtitle": {"en": "Report", "ar": "الشهرية"},
"Sick": {"en": "Sick", "ar": "الإجازات"},
"SickSubtitle": {"en": "Leaves", "ar": "المرضية"},
"MyBalance": {"en": "My Balance", "ar": "ارصدتي"},
"MyBalanceSubtitle": {"en": "Credit", "ar": "المبالغ"},
"PatientCall": {"en": "Patient Call", "ar": "النداء للموعد"},
"PatientCallSubtitle": {"en": "Service", "ar": "خدمة"},
"SmartWatches": {"en": "Smart Watches", "ar": "الساعة الذكية"},
"SmartWatchesSubtitle": {"en": "Pairing", "ar": "ربط البيانات"},
"MyTrackers": {"en": "My Trackers", "ar": "تتبع قراءاتي"},
"MyTrackersSubtitle": {"en": "Service", "ar": "الطبية"},
"AskYour": {"en": "Ask Your", "ar": "إرسل طبيبك"},
"AskYourSubtitle": {"en": "Doctor", "ar": "خدمة"},
"Internet": {"en": "Internet", "ar": "الاتصال"},
"InternetSubtitle": {"en": "Pairing", "ar": "بالإنترنت"},
"Chatbot": {"en": "Chatbot", "ar": "تاشت بوت"},
"ChatbotSubtitle": {"en": "", "ar": ""},
"TimeLine": {"en": "Time Line", "ar": "الجدول الزمني"},
"LabOrders": {"en": "Lab Orders", "ar": "تحاليل المختبر"},
"BillNo": {"en": "Bill No :", "ar": "رقم الفاتورة"},
"Prescriptions": {"en": "Prescriptions", "ar": "الوصفات الطبية"},
"History": {"en": "History", "ar": "السجل"},
"OrderNo": {"en": "Order No", "ar": "رقم الطلب"},
"OrderDetails": {"en": "Order Details", "ar": "تفاصيل الطلب"},
"VitalSign": {"en": "Vital Sign", "ar": "العلامة حيوية"},
}; };

@ -31,7 +31,7 @@ class BaseAppClient {
//Map profile = await sharedPref.getObj(DOCTOR_PROFILE); //Map profile = await sharedPref.getObj(DOCTOR_PROFILE);
String token = await sharedPref.getString(TOKEN); String token = await sharedPref.getString(TOKEN);
var languageID = var languageID =
await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'en'); await sharedPref.getStringWithDefaultValue(APP_LANGUAGE, 'ar');
var user = await sharedPref.getObject(USER_PROFILE); var user = await sharedPref.getObject(USER_PROFILE);
body['SetupID'] = body.containsKey('SetupID') body['SetupID'] = body.containsKey('SetupID')
? body['SetupID'] != null ? body['SetupID'] : SETUP_ID ? body['SetupID'] != null ? body['SetupID'] : SETUP_ID

@ -9,7 +9,7 @@ import 'package:flutter/cupertino.dart';
class ProjectViewModel extends BaseViewModel { class ProjectViewModel extends BaseViewModel {
AppSharedPreferences sharedPref = AppSharedPreferences(); AppSharedPreferences sharedPref = AppSharedPreferences();
Locale _appLocale; Locale _appLocale;
String currentLanguage = 'en'; String currentLanguage = 'ar';
bool _isArabic = false; bool _isArabic = false;
bool isInternetConnection = true; bool isInternetConnection = true;
bool isLoading = false; bool isLoading = false;
@ -45,7 +45,7 @@ class ProjectViewModel extends BaseViewModel {
void loadSharedPrefLanguage() async { void loadSharedPrefLanguage() async {
currentLanguage = await sharedPref.getString(APP_LANGUAGE); currentLanguage = await sharedPref.getString(APP_LANGUAGE);
_appLocale = Locale(currentLanguage ?? 'en'); _appLocale = Locale(currentLanguage ?? 'ar');
_isArabic = currentLanguage != null _isArabic = currentLanguage != null
? currentLanguage == 'ar' ? true : false ? currentLanguage == 'ar' ? true : false
: true; : true;

@ -368,13 +368,13 @@ class _HomePageState extends State<HomePage> {
textAlign: TextAlign.center, textAlign: TextAlign.center,
color: Colors.white, color: Colors.white,
bold: true, bold: true,
fontSize: SizeConfig.textMultiplier * 2.0, fontSize: SizeConfig.textMultiplier * 1.7,
) )
], ],
), ),
), ),
), ),
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
imageName: 'home_healthcare_service_bg.png', imageName: 'home_healthcare_service_bg.png',
opacity: 0.5, opacity: 0.5,
), ),
@ -403,7 +403,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
), ),
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
imageName: 'al-habib_onlne_pharmacy_bg.png', imageName: 'al-habib_onlne_pharmacy_bg.png',
), ),
DashboardItem( DashboardItem(
@ -431,7 +431,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
), ),
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
color: Hexcolor("#747C80"), color: Hexcolor("#747C80"),
imageName: 'emergency_service_image.png', imageName: 'emergency_service_image.png',
), ),
@ -472,7 +472,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
), ),
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
color: Colors.white, color: Colors.white,
@ -505,7 +505,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
width: MediaQuery.of(context).size.width * 0.29, width: MediaQuery.of(context).size.width * 0.29,
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
color: Colors.white, color: Colors.white,
@ -536,7 +536,7 @@ class _HomePageState extends State<HomePage> {
), ),
), ),
), ),
height: MediaQuery.of(context).size.width*0.4, height: MediaQuery.of(context).size.width * 0.4,
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6.0), borderRadius: BorderRadius.circular(6.0),
color: Colors.white, color: Colors.white,

@ -253,7 +253,7 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
case 0: case 0:
return TranslationBase.of(context).home; return TranslationBase.of(context).home;
case 1: case 1:
return 'Medical Profile'; return TranslationBase.of(context).medicalProfile;
case 2: case 2:
return TranslationBase.of(context).mySchedule; return TranslationBase.of(context).mySchedule;
case 3: case 3:

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/models/Appointments/DoctorListResponse.dart
import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/DoctorView.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/DoctorView.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart';
import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart'; import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -36,7 +37,7 @@ class DoctorHomePage extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => model.setFilterType(FilterType.Clinic), onTap: () => model.setFilterType(FilterType.Clinic),
child: ListTile( child: ListTile(
title: const Text('Clinic'), title: Text(TranslationBase.of(context).clinic),
leading: Radio( leading: Radio(
value: FilterType.Clinic, value: FilterType.Clinic,
groupValue: model.filterType, groupValue: model.filterType,
@ -53,7 +54,7 @@ class DoctorHomePage extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => model.setFilterType(FilterType.Hospital), onTap: () => model.setFilterType(FilterType.Hospital),
child: ListTile( child: ListTile(
title: const Text('Hospital'), title: Text(TranslationBase.of(context).hospital),
leading: Radio( leading: Radio(
value: FilterType.Hospital, value: FilterType.Hospital,
groupValue: model.filterType, groupValue: model.filterType,
@ -78,21 +79,23 @@ class DoctorHomePage extends StatelessWidget {
.patientDoctorAppointmentList .patientDoctorAppointmentList
.map((doctor) { .map((doctor) {
DoctorList doctorList = DoctorList( DoctorList doctorList = DoctorList(
projectID: doctor.projectID, projectID: doctor.projectID,
setupID: doctor.setupID, setupID: doctor.setupID,
clinicID: doctor.clinicID, clinicID: doctor.clinicID,
projectName: doctor.projectName, projectName: doctor.projectName,
clinicName: doctor.clinicName, clinicName: doctor.clinicName,
actualDoctorRate: doctor.actualDoctorRate, actualDoctorRate: doctor.actualDoctorRate,
doctorID: doctor.doctorID, doctorID: doctor.doctorID,
doctorRate: doctor.doctorRate, doctorRate: doctor.doctorRate,
gender: doctor.gender, gender: doctor.gender,
doctorTitle: doctor.doctorTitle, doctorTitle: doctor.doctorTitle,
name: doctor.doctorName, name: doctor.doctorName,
doctorImageURL: doctor.doctorImageURL, doctorImageURL: doctor.doctorImageURL,
nationalityFlagURL:doctor.nationalityFlagURL nationalityFlagURL: doctor.nationalityFlagURL);
return DoctorView(
doctor: doctorList,
); );
return DoctorView(doctor: doctorList,);/* InkWell( /* InkWell(
onTap: () async { onTap: () async {
model model
.getDoctorProfileAndRating( .getDoctorProfileAndRating(
@ -119,7 +122,8 @@ class DoctorHomePage extends StatelessWidget {
subName: DateUtil.getMonthDayYearDateFormatted( subName: DateUtil.getMonthDayYearDateFormatted(
doctor.appointmentDate), doctor.appointmentDate),
), ),
)*/; )*/
;
}).toList(), }).toList(),
)), )),
) )

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/core/enum/filter_type.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/labs_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/labs_view_model.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart';
import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart'; import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -19,7 +20,7 @@ class LabsHomePage extends StatelessWidget {
builder: (context, LabsViewModel model, widget) => AppScaffold( builder: (context, LabsViewModel model, widget) => AppScaffold(
baseViewModel: model, baseViewModel: model,
isShowAppBar: true, isShowAppBar: true,
appBarTitle: 'Lab Orders', appBarTitle: TranslationBase.of(context).labOrders,
body: SingleChildScrollView( body: SingleChildScrollView(
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
child: FractionallySizedBox( child: FractionallySizedBox(
@ -34,7 +35,7 @@ class LabsHomePage extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => model.setFilterType(FilterType.Clinic), onTap: () => model.setFilterType(FilterType.Clinic),
child: ListTile( child: ListTile(
title: const Text('Clinic'), title: Text(TranslationBase.of(context).clinic),
leading: Radio( leading: Radio(
value: FilterType.Clinic, value: FilterType.Clinic,
groupValue: model.filterType, groupValue: model.filterType,
@ -51,7 +52,7 @@ class LabsHomePage extends StatelessWidget {
child: InkWell( child: InkWell(
onTap: () => model.setFilterType(FilterType.Hospital), onTap: () => model.setFilterType(FilterType.Hospital),
child: ListTile( child: ListTile(
title: const Text('Hospital'), title: Text(TranslationBase.of(context).hospital),
leading: Radio( leading: Radio(
value: FilterType.Hospital, value: FilterType.Hospital,
groupValue: model.filterType, groupValue: model.filterType,
@ -85,7 +86,7 @@ class LabsHomePage extends StatelessWidget {
), ),
name: labOrder.doctorName, name: labOrder.doctorName,
profileUrl: labOrder.doctorImageURL, profileUrl: labOrder.doctorImageURL,
subName: 'Bill No : ${labOrder.invoiceNo}', subName: TranslationBase.of(context).billNo+' ${labOrder.invoiceNo}',
date: DateUtil.getMonthDayYearDateFormatted( date: DateUtil.getMonthDayYearDateFormatted(
labOrder.orderDate), labOrder.orderDate),
); );

@ -2,12 +2,14 @@ import 'dart:math';
import 'package:diplomaticquarterapp/core/service/medical/vital_sign_service.dart'; import 'package:diplomaticquarterapp/core/service/medical/vital_sign_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/medical_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/medical_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/MyAppointments/MyAppointments.dart'; import 'package:diplomaticquarterapp/pages/MyAppointments/MyAppointments.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_home_page.dart'; import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_home_page.dart';
import 'package:diplomaticquarterapp/pages/medical/vital_sign/vital_sign_details_screen.dart'; import 'package:diplomaticquarterapp/pages/medical/vital_sign/vital_sign_details_screen.dart';
import 'package:diplomaticquarterapp/pages/medical/reports/report_home_page.dart'; import 'package:diplomaticquarterapp/pages/medical/reports/report_home_page.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/medical_profile_item.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/medical_profile_item.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/time_line_widget.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/time_line_widget.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
@ -17,6 +19,7 @@ import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:diplomaticquarterapp/pages/insurance/insurance_card_screen.dart'; import 'package:diplomaticquarterapp/pages/insurance/insurance_card_screen.dart';
import 'package:provider/provider.dart';
import '../../locator.dart'; import '../../locator.dart';
import 'doctor/doctor_home_page.dart'; import 'doctor/doctor_home_page.dart';
import 'package:diplomaticquarterapp/pages/insurance/insurance_update_screen.dart'; import 'package:diplomaticquarterapp/pages/insurance/insurance_update_screen.dart';
@ -31,6 +34,7 @@ class MedicalProfilePage extends StatefulWidget {
class _MedicalProfilePageState extends State<MedicalProfilePage> { class _MedicalProfilePageState extends State<MedicalProfilePage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
ProjectViewModel projectViewModel = Provider.of(context);
return BaseView<MedicalViewModel>( return BaseView<MedicalViewModel>(
onModelReady: (model) => model.getAppointmentHistory(), onModelReady: (model) => model.getAppointmentHistory(),
builder: (_, model, widget) => AppScaffold( builder: (_, model, widget) => AppScaffold(
@ -48,11 +52,9 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
height: 210, height: 210,
decoration: BoxDecoration( decoration: BoxDecoration(
image: DecorationImage( image: DecorationImage(
image: ExactAssetImage( image: ExactAssetImage(
'assets/images/timeline_bg.png'), 'assets/images/timeline_bg.png'),
fit: BoxFit.cover fit: BoxFit.cover),
),
), ),
child: Stack( child: Stack(
children: <Widget>[ children: <Widget>[
@ -76,7 +78,7 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
), ),
), ),
Padding( Padding(
padding: EdgeInsets.symmetric(vertical: 12.0), padding: EdgeInsets.symmetric(vertical: 5.0),
child: Column( child: Column(
children: <Widget>[ children: <Widget>[
Container( Container(
@ -89,13 +91,19 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(
FadePage(page: MyAppointments())); context,
FadePage(
page: MyAppointments(),
),
);
}, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Appointments', title: TranslationBase.of(context)
.myAppointments,
imagePath: 'my_appointment_icon.png', imagePath: 'my_appointment_icon.png',
subTitle: 'List', subTitle: TranslationBase.of(context)
.myAppointmentsList,
), ),
), ),
), ),
@ -103,11 +111,12 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () => Navigator.push(context, onTap: () => Navigator.push(context,
FadePage(page: RadiologyHomePage())), FadePage(page: LabsHomePage())),
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Radiology', title: TranslationBase.of(context).lab,
imagePath: 'radiology_icon.png', imagePath: 'lab_result_icon.png',
subTitle: 'Service', subTitle:
TranslationBase.of(context).lab,
), ),
), ),
), ),
@ -115,11 +124,13 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () => Navigator.push(context, onTap: () => Navigator.push(context,
FadePage(page: LabsHomePage())), FadePage(page: RadiologyHomePage())),
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Lab', title: TranslationBase.of(context)
imagePath: 'lab_result_icon.png', .radiology,
subTitle: 'Result', imagePath: 'radiology_icon.png',
subTitle: TranslationBase.of(context)
.radiologySubtitle,
), ),
), ),
), ),
@ -132,14 +143,18 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push( Navigator.push(
context, context,
FadePage( FadePage(
page: HomePrescriptionsPage())); page: HomePrescriptionsPage(),
),
);
}, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Medicines', title: TranslationBase.of(context)
.medicines,
imagePath: 'prescription_icon.png', imagePath: 'prescription_icon.png',
subTitle: 'Prescriptions', subTitle: TranslationBase.of(context)
.medicinesSubtitle,
), ),
), ),
), ),
@ -147,13 +162,17 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () => Navigator.push( onTap: () => Navigator.push(
context, context,
FadePage( FadePage(
page: VitalSignDetailsScreen())), page: VitalSignDetailsScreen(),
),
),
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Vital Signs', title: TranslationBase.of(context)
.vitalSigns,
imagePath: 'medical_history_icon.png', imagePath: 'medical_history_icon.png',
subTitle: 'Reports', subTitle: TranslationBase.of(context)
.vitalSignsSubtitle,
), ),
), ),
), ),
@ -163,9 +182,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// onTap: () => Navigator.push( // onTap: () => Navigator.push(
// context, FadePage(page: RadiologyHomePage())), // context, FadePage(page: RadiologyHomePage())),
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Medicines ', title: TranslationBase.of(context)
.myMedical,
imagePath: 'radiology_icon.png', imagePath: 'radiology_icon.png',
subTitle: 'Service', subTitle: TranslationBase.of(context)
.myMedicalSubtitle,
), ),
), ),
), ),
@ -177,13 +198,19 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
flex: 1, flex: 1,
child: InkWell( child: InkWell(
onTap: () { onTap: () {
Navigator.push(context, Navigator.push(
FadePage(page: DoctorHomePage())); context,
FadePage(
page: DoctorHomePage(),
),
);
}, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Doctor', title: TranslationBase.of(context)
.myDoctor,
imagePath: 'doctor_icon.png', imagePath: 'doctor_icon.png',
subTitle: 'List', subTitle: TranslationBase.of(context)
.myDoctorSubtitle,
), ),
), ),
), ),
@ -196,10 +223,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// FadePage(page: InsuranceApproval())); // FadePage(page: InsuranceApproval()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Eye', title: TranslationBase.of(context).eye,
imagePath: imagePath:
'insurance_approvals_icon.png', 'insurance_approvals_icon.png',
subTitle: 'Measurement', subTitle: TranslationBase.of(context)
.eyeSubtitle,
), ),
), ),
), ),
@ -211,9 +239,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
FadePage(page: InsuranceCard())); FadePage(page: InsuranceCard()));
}, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Insurance', title: TranslationBase.of(context)
.insurance,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'Card', subTitle: TranslationBase.of(context)
.insuranceSubtitle,
), ),
), ),
), ),
@ -229,32 +259,38 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: DoctorHomePage())); // context, FadePage(page: DoctorHomePage()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Update Insurance', title: TranslationBase.of(context)
.updateInsurance,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'card', subTitle: TranslationBase.of(context)
.updateInsuranceSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: InkWell( child: InkWell(
// onTap: () { onTap: () {
// Navigator.push( Navigator.push(
// context, FadePage(page: InsuranceApproval())); context, FadePage(page: InsuranceApproval()));
// }, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Insurance Approval', title: TranslationBase.of(context)
.insuranceApproval,
imagePath: 'insurance_approvals_icon.png', imagePath: 'insurance_approvals_icon.png',
subTitle: '', subTitle: TranslationBase.of(context)
.insuranceApprovalSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Allergies', title:
TranslationBase.of(context).allergies,
imagePath: 'medical_history_icon.png', imagePath: 'medical_history_icon.png',
subTitle: 'Diagnosed', subTitle: TranslationBase.of(context)
.allergiesSubtitle,
), ),
), ),
]), ]),
@ -268,9 +304,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: DoctorHomePage())); // context, FadePage(page: DoctorHomePage()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Vaccines', title: TranslationBase.of(context)
.myVaccines,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'card', subTitle: TranslationBase.of(context)
.myVaccinesSubtitle,
), ),
), ),
), ),
@ -282,18 +320,21 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
FadePage(page: HomeReportPage())); FadePage(page: HomeReportPage()));
}, },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Medical', title:
TranslationBase.of(context).medical,
imagePath: 'insurance_approvals_icon.png', imagePath: 'insurance_approvals_icon.png',
subTitle: 'Reports', subTitle: TranslationBase.of(context)
.medicalSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Monthly', title: TranslationBase.of(context).monthly,
imagePath: 'medical_history_icon.png', imagePath: 'medical_history_icon.png',
subTitle: 'Report', subTitle: TranslationBase.of(context)
.monthlySubtitle,
), ),
), ),
]), ]),
@ -307,9 +348,10 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: DoctorHomePage())); // context, FadePage(page: DoctorHomePage()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Sick', title: TranslationBase.of(context).sick,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'Leaves', subTitle: TranslationBase.of(context)
.sickSubtitle,
), ),
), ),
), ),
@ -321,18 +363,22 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: InsuranceApproval())); // context, FadePage(page: InsuranceApproval()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Balance', title:
TranslationBase.of(context).myBalance,
imagePath: 'insurance_approvals_icon.png', imagePath: 'insurance_approvals_icon.png',
subTitle: 'Credit', subTitle: TranslationBase.of(context)
.myBalanceSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Patient Call', title:
TranslationBase.of(context).patientCall,
imagePath: 'medical_history_icon.png', imagePath: 'medical_history_icon.png',
subTitle: 'Service', subTitle: TranslationBase.of(context)
.patientCallSubtitle,
), ),
), ),
]), ]),
@ -346,9 +392,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: DoctorHomePage())); // context, FadePage(page: DoctorHomePage()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Smart Watches', title: TranslationBase.of(context)
.smartWatches,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'Pairing', subTitle: TranslationBase.of(context)
.smartWatchesSubtitle,
), ),
), ),
), ),
@ -360,18 +408,21 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: InsuranceApproval())); // context, FadePage(page: InsuranceApproval()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Trackers', title: TranslationBase.of(context)
.myTrackers,
imagePath: 'insurance_approvals_icon.png', imagePath: 'insurance_approvals_icon.png',
subTitle: 'Service', subTitle: TranslationBase.of(context)
.myTrackersSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Ask Your', title: TranslationBase.of(context).askYour,
imagePath: 'medical_history_icon.png', imagePath: 'medical_history_icon.png',
subTitle: 'Doctor', subTitle: TranslationBase.of(context)
.askYourSubtitle,
), ),
), ),
]), ]),
@ -385,9 +436,11 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: DoctorHomePage())); // context, FadePage(page: DoctorHomePage()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'Internet', title:
TranslationBase.of(context).internet,
imagePath: 'insurance_card_icon.png', imagePath: 'insurance_card_icon.png',
subTitle: 'Pairing', subTitle: TranslationBase.of(context)
.internetSubtitle,
), ),
), ),
), ),
@ -399,19 +452,17 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
// context, FadePage(page: InsuranceApproval())); // context, FadePage(page: InsuranceApproval()));
// }, // },
child: MedicalProfileItem( child: MedicalProfileItem(
title: 'My Trackers', title:
TranslationBase.of(context).chatbot,
imagePath: 'insurance_approvals_icon.png', imagePath: 'insurance_approvals_icon.png',
subTitle: 'Service', subTitle: TranslationBase.of(context)
.chatbotSubtitle,
), ),
), ),
), ),
Expanded( Expanded(
flex: 1, flex: 1,
child: MedicalProfileItem( child: Container(),
title: 'Ask Your',
imagePath: 'medical_history_icon.png',
subTitle: 'Doctor',
),
), ),
]), ]),
], ],
@ -428,17 +479,16 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
width: double.infinity, width: double.infinity,
height: 70, height: 70,
decoration: BoxDecoration( decoration: BoxDecoration(
color: Colors.grey[600], color: Colors.grey[600],
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
border: Border.all( border: Border.all(
color: Colors.transparent, width: 0.5), color: Colors.transparent, width: 0.5),
borderRadius: BorderRadius.all(Radius.circular(9)), borderRadius:
image: DecorationImage( BorderRadius.all(Radius.circular(9)),
image: ExactAssetImage( image: DecorationImage(
'assets/images/bg_graphic.png'), image: ExactAssetImage(
fit: BoxFit.cover 'assets/images/bg_graphic.png'),
) fit: BoxFit.cover)),
),
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[ children: <Widget>[
@ -464,9 +514,10 @@ class _MedicalProfilePageState extends State<MedicalProfilePage> {
), ),
Positioned( Positioned(
top: 2, top: 2,
left: 10, left: projectViewModel.isArabic ? 0 : 10,
right: projectViewModel.isArabic ? 10 : 0,
child: Texts( child: Texts(
'Time Line ', TranslationBase.of(context).timeLine,
color: Colors.white, color: Colors.white,
fontSize: 14, fontSize: 14,
fontWeight: FontWeight.normal, fontWeight: FontWeight.normal,

@ -1,6 +1,7 @@
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_details_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_details_page.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
@ -49,7 +50,7 @@ class PrescriptionsHistoryPage extends StatelessWidget {
height: 5, height: 5,
), ),
Texts( Texts(
'Order No ${prescriptionsViewModel.prescriptionsHistory[index].iD}'), '${TranslationBase.of(context).orderNo} ${prescriptionsViewModel.prescriptionsHistory[index].iD}'),
SizedBox( SizedBox(
height: 5, height: 5,
), ),
@ -59,7 +60,7 @@ class PrescriptionsHistoryPage extends StatelessWidget {
height: 5, height: 5,
), ),
Texts( Texts(
'Order Details', '${TranslationBase.of(context).orderNo}',
fontWeight: FontWeight.w300, fontWeight: FontWeight.w300,
), ),
SizedBox( SizedBox(

@ -4,6 +4,7 @@ import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_page.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_page.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
@ -36,7 +37,7 @@ class _HomePrescriptionsPageState extends State<HomePrescriptionsPage>
onModelReady: (model) => model.getPrescriptions(), onModelReady: (model) => model.getPrescriptions(),
builder: (_, model, widget) => AppScaffold( builder: (_, model, widget) => AppScaffold(
isShowAppBar: true, isShowAppBar: true,
appBarTitle: 'My Doctors', appBarTitle: TranslationBase.of(context).myDoctor,
body: Scaffold( body: Scaffold(
extendBodyBehindAppBar: true, extendBodyBehindAppBar: true,
appBar: PreferredSize( appBar: PreferredSize(
@ -84,13 +85,13 @@ class _HomePrescriptionsPageState extends State<HomePrescriptionsPage>
Container( Container(
width: MediaQuery.of(context).size.width * 0.30, width: MediaQuery.of(context).size.width * 0.30,
child: Center( child: Center(
child: Texts('Prescriptions'), child: Texts(TranslationBase.of(context).prescriptions),
), ),
), ),
Container( Container(
width: MediaQuery.of(context).size.width * 0.30, width: MediaQuery.of(context).size.width * 0.30,
child: Center( child: Center(
child: Texts('History'), child: Texts(TranslationBase.of(context).history),
), ),
), ),
], ],

@ -2,6 +2,7 @@ import 'package:diplomaticquarterapp/core/enum/filter_type.dart';
import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_model.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescription_items_page.dart'; import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescription_items_page.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart';
import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart'; import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -32,7 +33,7 @@ class PrescriptionsPage extends StatelessWidget {
onTap: () => onTap: () =>
prescriptionsViewModel.setFilterType(FilterType.Clinic), prescriptionsViewModel.setFilterType(FilterType.Clinic),
child: ListTile( child: ListTile(
title: const Text('Clinic'), title: Text(TranslationBase.of(context).clinic),
leading: Radio( leading: Radio(
value: FilterType.Clinic, value: FilterType.Clinic,
groupValue: prescriptionsViewModel.filterType, groupValue: prescriptionsViewModel.filterType,
@ -50,7 +51,7 @@ class PrescriptionsPage extends StatelessWidget {
onTap: () => prescriptionsViewModel onTap: () => prescriptionsViewModel
.setFilterType(FilterType.Hospital), .setFilterType(FilterType.Hospital),
child: ListTile( child: ListTile(
title: const Text('Hospital'), title: Text(TranslationBase.of(context).hospital),
leading: Radio( leading: Radio(
value: FilterType.Hospital, value: FilterType.Hospital,
groupValue: prescriptionsViewModel.filterType, groupValue: prescriptionsViewModel.filterType,

@ -3,6 +3,7 @@ import 'package:diplomaticquarterapp/core/viewModels/medical/radiology_view_mode
import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_details_page.dart'; import 'package:diplomaticquarterapp/pages/medical/radiology/radiology_details_page.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart'; import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart'; import 'package:diplomaticquarterapp/widgets/data_display/medical/doctor_card.dart';
import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart'; import 'package:diplomaticquarterapp/widgets/others/app_expandable_notifier.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
@ -17,7 +18,7 @@ class RadiologyHomePage extends StatelessWidget {
onModelReady: (model) => model.getPatientRadOrders(), onModelReady: (model) => model.getPatientRadOrders(),
builder: (_, model, widget) => AppScaffold( builder: (_, model, widget) => AppScaffold(
isShowAppBar: true, isShowAppBar: true,
appBarTitle: 'Radiology', appBarTitle: TranslationBase.of(context).radiology,
baseViewModel: model, baseViewModel: model,
body: FractionallySizedBox( body: FractionallySizedBox(
widthFactor: 1.0, widthFactor: 1.0,
@ -32,7 +33,7 @@ class RadiologyHomePage extends StatelessWidget {
onTap: () => onTap: () =>
model.setFilterType(FilterType.Clinic), model.setFilterType(FilterType.Clinic),
child: ListTile( child: ListTile(
title: const Text('Clinic'), title: Text(TranslationBase.of(context).clinic),
leading: Radio( leading: Radio(
value: FilterType.Clinic, value: FilterType.Clinic,
groupValue: model.filterType, groupValue: model.filterType,
@ -50,7 +51,7 @@ class RadiologyHomePage extends StatelessWidget {
onTap: () => model onTap: () => model
.setFilterType(FilterType.Hospital), .setFilterType(FilterType.Hospital),
child: ListTile( child: ListTile(
title: const Text('Hospital'), title: Text(TranslationBase.of(context).hospital),
leading: Radio( leading: Radio(
value: FilterType.Hospital, value: FilterType.Hospital,
groupValue: model.filterType, groupValue: model.filterType,
@ -85,7 +86,7 @@ class RadiologyHomePage extends StatelessWidget {
child: DoctorCard( child: DoctorCard(
name: radiology.doctorName, name: radiology.doctorName,
profileUrl: radiology.doctorImageURL, profileUrl: radiology.doctorImageURL,
subName: '${radiology.projectName} \nBill No ${radiology.invoiceNo}', subName: '${radiology.projectName} \n${TranslationBase.of(context).billNo} ${radiology.invoiceNo}',
date: DateUtil.getMonthDayYearDateFormatted( date: DateUtil.getMonthDayYearDateFormatted(
radiology.orderDate), radiology.orderDate),
), ),

@ -16,7 +16,6 @@ class VitalSignDetailsScreen extends StatelessWidget {
int appointmentNo; int appointmentNo;
int projectID; int projectID;
VitalSignDetailsScreen({this.appointmentNo, this.projectID}); VitalSignDetailsScreen({this.appointmentNo, this.projectID});
@override @override
@ -28,7 +27,7 @@ class VitalSignDetailsScreen extends StatelessWidget {
: (model) => model.getPatientRadOrders(), : (model) => model.getPatientRadOrders(),
builder: (_, mode, widget) => AppScaffold( builder: (_, mode, widget) => AppScaffold(
isShowAppBar: true, isShowAppBar: true,
appBarTitle: 'Vital Sign', appBarTitle: TranslationBase.of(context).vitalSigns,
baseViewModel: mode, baseViewModel: mode,
body: mode.vitalSignResModelList.length > 0 body: mode.vitalSignResModelList.length > 0
? Container( ? Container(
@ -42,7 +41,7 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.Height, pageKey: VitalSignDetails.Height,
pageTitle: 'Height', pageTitle: TranslationBase.of(context).height,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -66,7 +65,7 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.Weight, pageKey: VitalSignDetails.Weight,
pageTitle: 'Weight', pageTitle: TranslationBase.of(context).weight,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -92,7 +91,8 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.BodyMeasurements, pageKey: VitalSignDetails.BodyMeasurements,
pageTitle: 'BMI', pageTitle: TranslationBase.of(context)
.bodyMeasurements,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -112,7 +112,8 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.Temperature, pageKey: VitalSignDetails.Temperature,
pageTitle: 'Temperature', pageTitle:
TranslationBase.of(context).temperature,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -138,7 +139,7 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.heart, pageKey: VitalSignDetails.heart,
pageTitle: 'Hart ', pageTitle: TranslationBase.of(context).heart,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -160,7 +161,8 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.Respiration, pageKey: VitalSignDetails.Respiration,
pageTitle: 'Respiration Rate', pageTitle:
TranslationBase.of(context).respirationRate,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),
@ -187,7 +189,7 @@ class VitalSignDetailsScreen extends StatelessWidget {
FadePage( FadePage(
page: VitalSignItemDetailsScreen( page: VitalSignItemDetailsScreen(
pageKey: VitalSignDetails.BloodPressure, pageKey: VitalSignDetails.BloodPressure,
pageTitle: 'BloodPressure', pageTitle: TranslationBase.of(context).pulse,
vitalList: mode.vitalSignResModelList, vitalList: mode.vitalSignResModelList,
), ),
), ),

@ -455,6 +455,59 @@ class TranslationBase {
String get noBookedAppointments => localizedValues['NoBookedAppointments'][locale.languageCode]; String get noBookedAppointments => localizedValues['NoBookedAppointments'][locale.languageCode];
String get noConfirmedAppointments => localizedValues['NoConfirmedAppointments'][locale.languageCode]; String get noConfirmedAppointments => localizedValues['NoConfirmedAppointments'][locale.languageCode];
String get noArrivedAppointments => localizedValues['noArrivedAppointments'][locale.languageCode]; String get noArrivedAppointments => localizedValues['noArrivedAppointments'][locale.languageCode];
String get myAppointmentsList => localizedValues['MyAppointmentsList'][locale.languageCode];
String get radiology => localizedValues['Radiology'][locale.languageCode];
String get radiologySubtitle => localizedValues['RadiologySubtitle'][locale.languageCode];
String get lab => localizedValues['Lab'][locale.languageCode];
String get labSubtitle => localizedValues['LabSubtitle'][locale.languageCode];
String get medicines => localizedValues['Medicines'][locale.languageCode];
String get medicinesSubtitle => localizedValues['MedicinesSubtitle'][locale.languageCode];
String get vitalSigns => localizedValues['VitalSigns'][locale.languageCode];
String get vitalSignsSubtitle => localizedValues['VitalSignsSubTitle'][locale.languageCode];
String get myMedical => localizedValues['MyMedical'][locale.languageCode];
String get myMedicalSubtitle => localizedValues['MyMedicalSubtitle'][locale.languageCode];
String get myDoctor => localizedValues['MyDoctor'][locale.languageCode];
String get myDoctorSubtitle => localizedValues['MyDoctorSubtitle'][locale.languageCode];
String get eye => localizedValues['Eye'][locale.languageCode];
String get eyeSubtitle => localizedValues['EyeSubtitle'][locale.languageCode];
String get insurance => localizedValues['Insurance'][locale.languageCode];
String get insuranceSubtitle => localizedValues['InsuranceSubtitle'][locale.languageCode];
String get updateInsurance => localizedValues['UpdateInsurance'][locale.languageCode];
String get updateInsuranceSubtitle => localizedValues['UpdateInsuranceSubtitle'][locale.languageCode];
String get insuranceApproval => localizedValues['InsuranceApproval'][locale.languageCode];
String get insuranceApprovalSubtitle => localizedValues['InsuranceApprovalSubtitle'][locale.languageCode];
String get allergies => localizedValues['Allergies'][locale.languageCode];
String get allergiesSubtitle => localizedValues['AllergiesSubtitle'][locale.languageCode];
String get myVaccines => localizedValues['MyVaccines'][locale.languageCode];
String get myVaccinesSubtitle => localizedValues['MyVaccinesSubtitle'][locale.languageCode];
String get medical => localizedValues['Medical'][locale.languageCode];
String get medicalSubtitle => localizedValues['MedicalSubtitle'][locale.languageCode];
String get monthly => localizedValues['Monthly'][locale.languageCode];
String get monthlySubtitle => localizedValues['MonthlySubtitle'][locale.languageCode];
String get sick => localizedValues['Sick'][locale.languageCode];
String get sickSubtitle => localizedValues['SickSubtitle'][locale.languageCode];
String get myBalance => localizedValues['MyBalance'][locale.languageCode];
String get myBalanceSubtitle => localizedValues['MyBalanceSubtitle'][locale.languageCode];
String get patientCall => localizedValues['PatientCall'][locale.languageCode];
String get patientCallSubtitle => localizedValues['PatientCallSubtitle'][locale.languageCode];
String get smartWatches => localizedValues['SmartWatches'][locale.languageCode];
String get smartWatchesSubtitle => localizedValues['SmartWatchesSubtitle'][locale.languageCode];
String get myTrackers => localizedValues['MyTrackers'][locale.languageCode];
String get myTrackersSubtitle => localizedValues['MyTrackersSubtitle'][locale.languageCode];
String get askYour => localizedValues['AskYour'][locale.languageCode];
String get askYourSubtitle => localizedValues['AskYourSubtitle'][locale.languageCode];
String get internet => localizedValues['Internet'][locale.languageCode];
String get internetSubtitle => localizedValues['InternetSubtitle'][locale.languageCode];
String get chatbot => localizedValues['Chatbot'][locale.languageCode];
String get chatbotSubtitle => localizedValues['ChatbotSubtitle'][locale.languageCode];
String get timeLine => localizedValues['TimeLine'][locale.languageCode];
String get labOrders => localizedValues['LabOrders'][locale.languageCode];
String get billNo => localizedValues['BillNo'][locale.languageCode];
String get prescriptions => localizedValues['Prescriptions'][locale.languageCode];
String get history => localizedValues['History'][locale.languageCode];
String get orderNo => localizedValues['OrderNo'][locale.languageCode];
String get orderDetails => localizedValues['OrderDetails'][locale.languageCode];
String get vitalSign => localizedValues['VitalSign'][locale.languageCode];
} }

Loading…
Cancel
Save