From 128bd2ec5479859bfff2b845423ab8936117dd2d Mon Sep 17 00:00:00 2001 From: haroon amjad Date: Sun, 16 Apr 2023 11:21:05 +0300 Subject: [PATCH] Inpatient services implementation --- assets/images/new/admission_notice.png | Bin 0 -> 1258 bytes assets/images/new/birth.png | Bin 0 -> 4408 bytes assets/images/new/consent.jpg | Bin 0 -> 4106 bytes assets/images/new/hospital.png | Bin 0 -> 13439 bytes assets/images/new/instructions.jpg | Bin 0 -> 17664 bytes assets/images/new/meal_plan.png | Bin 0 -> 3688 bytes assets/images/new/medical_instructions.png | Bin 0 -> 1916 bytes lib/config/localized_values.dart | 15 ++ .../InPatientServices/inpatient_home.dart | 146 ++++++++++++++++++ .../fragments/home_page_fragment2.dart | 112 +++++++++++--- lib/pages/landing/landing_page.dart | 42 ++--- lib/pages/landing/widgets/services_view.dart | 4 + lib/pages/login/login.dart | 7 +- .../authentication/auth_provider.dart | 3 +- lib/uitl/HMG_Geofence.dart | 2 +- lib/uitl/push-notification-handler.dart | 57 +++++++ lib/uitl/translations_delegate_base.dart | 15 ++ lib/widgets/in_app_browser/InAppBrowser.dart | 4 +- 18 files changed, 361 insertions(+), 46 deletions(-) create mode 100644 assets/images/new/admission_notice.png create mode 100644 assets/images/new/birth.png create mode 100644 assets/images/new/consent.jpg create mode 100644 assets/images/new/hospital.png create mode 100644 assets/images/new/instructions.jpg create mode 100644 assets/images/new/meal_plan.png create mode 100644 assets/images/new/medical_instructions.png create mode 100644 lib/pages/InPatientServices/inpatient_home.dart diff --git a/assets/images/new/admission_notice.png b/assets/images/new/admission_notice.png new file mode 100644 index 0000000000000000000000000000000000000000..50b5c1d5c155ba6d7b3fcc159d54a7daa3f16d34 GIT binary patch literal 1258 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�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 literal 0 HcmV?d00001 diff --git a/assets/images/new/hospital.png b/assets/images/new/hospital.png new file mode 100644 index 0000000000000000000000000000000000000000..10c6a1f1b44a2959bc142d6b6cd626f777d94315 GIT binary patch literal 13439 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 inPatientServiceList = getInPatientServicesList(context); + return AppScaffold( + isShowAppBar: true, + isShowDecPage: false, + showNewAppBarTitle: true, + showNewAppBar: true, + appBarTitle: TranslationBase.of(context).InPatientServicesHeader, + body: Container( + margin: EdgeInsets.all(20.0), + child: Column( + children: [ + Padding( + padding: EdgeInsets.only(left: 12, right: 12), + child: GridView.builder( + shrinkWrap: true, + primary: false, + physics: NeverScrollableScrollPhysics(), + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3, childAspectRatio: 2 / 2, crossAxisSpacing: 12, mainAxisSpacing: 12), + padding: EdgeInsets.zero, + itemCount: inPatientServiceList.length, + itemBuilder: (BuildContext context, int index) { + return inPatientServiceList[index]; + }, + ), + ), + ], + ), + ), + ); + } + + List getInPatientServicesList(BuildContext context) { + List serviceList = List(); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).admissionGeneral, + imagePath: 'assets/images/new/consent.jpg', + subTitle: TranslationBase.of(context).consent, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).generalInstructionsTitle, + imagePath: 'assets/images/new/instructions.jpg', + subTitle: TranslationBase.of(context).generalInstructionsSubTitle, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).medicalInstructionsTitle, + imagePath: 'assets/images/new/medical_instructions.png', + subTitle: TranslationBase.of(context).medicalInstructionsSubTitle, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).mealPlanTitle, + imagePath: 'assets/images/new/meal_plan.png', + subTitle: TranslationBase.of(context).mealPlanSubTitle, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).birthNotificationTitle, + imagePath: 'assets/images/new/birth.png', + subTitle: TranslationBase.of(context).birthNotificationSubTitle, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + serviceList.add( + InkWell( + onTap: () { + // Navigator.push(context, FadePage(page: AdvancePaymentPage())); + }, + child: MedicalProfileItem( + title: TranslationBase.of(context).admissionNoticeTitle, + imagePath: 'assets/images/new/admission_notice.png', + subTitle: TranslationBase.of(context).admissionNoticeSubTitle, + isPngImage: true, + width: 50.0, + height: 40.0, + ), + ), + ); + + return serviceList; + } +} diff --git a/lib/pages/landing/fragments/home_page_fragment2.dart b/lib/pages/landing/fragments/home_page_fragment2.dart index ee856487..535bd38e 100644 --- a/lib/pages/landing/fragments/home_page_fragment2.dart +++ b/lib/pages/landing/fragments/home_page_fragment2.dart @@ -41,13 +41,12 @@ class _HomePageFragment2State extends State { List appoList = []; ApplePayResponse applePayResponse; + bool isPatientAdmitted = true; + @override void initState() { // TODO: implement initState super.initState(); - - // getPatientAppointmentHistory1(); - // getFamilyFiles(); } initialiseHmgServices(bool isLogin) { @@ -63,10 +62,29 @@ class _HomePageFragment2State extends State { hmgServices.add(new HmgServices(8, TranslationBase.of(context).connectTitle, TranslationBase.of(context).connectSubtitle, "assets/images/new/reach_us.svg", isLogin)); } + initialiseInPatientHmgServices(bool isLogin) { + hmgServices.clear(); + // hmgServices.add(new HmgServices(0, TranslationBase.of(context).liveCare, TranslationBase.of(context).onlineConsulting, "assets/images/new/Live_Care.svg", isLogin)); + // hmgServices.add(new HmgServices(1, TranslationBase.of(context).covidTest, TranslationBase.of(context).driveThru, "assets/images/new/CoronaIcon.svg", isLogin)); + // hmgServices.add(new HmgServices(2, TranslationBase.of(context).online, TranslationBase.of(context).payment, "assets/images/new/paymentMethods.png", isLogin)); + hmgServices.add(new HmgServices(3, TranslationBase.of(context).hhcHome, TranslationBase.of(context).healthCare, "assets/images/new/HHC.svg", isLogin)); + hmgServices.add(new HmgServices(4, TranslationBase.of(context).checkup, TranslationBase.of(context).comprehensive, "assets/images/new/comprehensive_checkup.svg", isLogin)); + hmgServices.add(new HmgServices(5, TranslationBase.of(context).emergencyTitle, TranslationBase.of(context).emergencySubtitle, "assets/images/new/emergency.svg", isLogin)); + hmgServices.add(new HmgServices(6, TranslationBase.of(context).ereferralTitle, TranslationBase.of(context).ereferralSubtitle, "assets/images/new/E_Referral.svg", isLogin)); + hmgServices.add(new HmgServices(7, "H\u2082O", TranslationBase.of(context).dailyWater, "assets/images/new/h2o.svg", isLogin)); + hmgServices.add(new HmgServices(8, TranslationBase.of(context).connectTitle, TranslationBase.of(context).connectSubtitle, "assets/images/new/reach_us.svg", isLogin)); + } + @override Widget build(BuildContext context) { projectViewModel = Provider.of(context); - initialiseHmgServices(false); + + if (isPatientAdmitted) { + initialiseInPatientHmgServices(false); + } else { + initialiseHmgServices(false); + } + var appoCountProvider = Provider.of(context); var userProvider = Provider.of(context); List myMedicalList = Utils.myMedicalListHomePage(projectViewModel: projectViewModel, context: context, count: appoCountProvider.count, isLogin: projectViewModel.isLogin); @@ -257,23 +275,69 @@ class _HomePageFragment2State extends State { ], ), ), - Padding( - padding: const EdgeInsets.only( - left: 20, - right: 20, - top: 0, - ), - child: GridView.builder( - gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3, childAspectRatio: 2 / 2, crossAxisSpacing: 12, mainAxisSpacing: 12), - physics: NeverScrollableScrollPhysics(), - shrinkWrap: true, - itemCount: hmgServices.length, - padding: EdgeInsets.zero, - itemBuilder: (BuildContext context, int index) { - return ServicesView(hmgServices[index], index); - }, - ), - ), + isPatientAdmitted + ? Column( + children: [ + Padding( + padding: const EdgeInsets.fromLTRB(20.0, 0.0, 20.0, 12.0), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Expanded( + flex: 9, + child: Container( + margin: projectViewModel.isArabic ? EdgeInsets.only(left: 12.0) : EdgeInsets.only(right: 12.0), + child: AspectRatio( + aspectRatio: 2.15, + child: + ServicesView(new HmgServices(2, TranslationBase.of(context).InPatient, TranslationBase.of(context).inPatientServices, "assets/images/new/hospital.png", false), 23)), + ), + ), + Expanded( + flex: 4, + child: AspectRatio( + aspectRatio: 1.0, + child: ServicesView(new HmgServices(2, TranslationBase.of(context).online, TranslationBase.of(context).payment, "assets/images/new/paymentMethods.png", false), 2)), + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only( + left: 20, + right: 20, + top: 0, + ), + child: GridView.builder( + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3, childAspectRatio: 2 / 2, crossAxisSpacing: 12, mainAxisSpacing: 12), + physics: NeverScrollableScrollPhysics(), + shrinkWrap: true, + itemCount: hmgServices.length, + padding: EdgeInsets.zero, + itemBuilder: (BuildContext context, int index) { + return ServicesView(hmgServices[index], index); + }, + ), + ), + ], + ) + : Padding( + padding: const EdgeInsets.only( + left: 20, + right: 20, + top: 0, + ), + child: GridView.builder( + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3, childAspectRatio: 2 / 2, crossAxisSpacing: 12, mainAxisSpacing: 12), + physics: NeverScrollableScrollPhysics(), + shrinkWrap: true, + itemCount: hmgServices.length, + padding: EdgeInsets.zero, + itemBuilder: (BuildContext context, int index) { + return ServicesView(hmgServices[index], index); + }, + ), + ), ], ), mHeight(140), @@ -584,6 +648,12 @@ class _HomePageFragment2State extends State { ); } + Widget getInpatientButton() { + return Container( + height: 50.0, + ); + } + Widget showFloating(String icon) { return Container( width: MediaQuery.of(context).size.width * 0.06, diff --git a/lib/pages/landing/landing_page.dart b/lib/pages/landing/landing_page.dart index e9fbd62c..f7ccacee 100644 --- a/lib/pages/landing/landing_page.dart +++ b/lib/pages/landing/landing_page.dart @@ -320,6 +320,8 @@ class _LandingPageState extends State with WidgetsBindingObserver { } } }); + + // HMG_Geofencing(context).loadZones().then((instance) => instance.init()); } void setUserValues(value) async { @@ -337,25 +339,26 @@ class _LandingPageState extends State with WidgetsBindingObserver { } } - registerGeofences() async { - await locator().getAllGeoZones(GeoZonesRequestModel()); - - void doIt() { - getUserInformation().then((value) { - if (value != null) projectViewModel.platformBridge().registerHmgGeofences(); - }); - } - - if (await Permission.location.isGranted) { - doIt(); - } else { - [Permission.location].request().then((value) async { - if (await Permission.location.isGranted) { - doIt(); - } - }); - } - } + // registerGeofences() async { + // await locator().getAllGeoZones(GeoZonesRequestModel()); + // + // // void doIt() { + // // // getUserInformation().then((value) { + // // // if (value != null) + // // projectViewModel.platformBridge().registerHmgGeofences(); + // // // }); + // // } + // // + // // if (await Permission.location.isGranted) { + // // doIt(); + // // } else { + // // [Permission.location].request().then((value) async { + // // if (await Permission.location.isGranted) { + // // doIt(); + // // } + // // }); + // // } + // } login() async { var data = await sharedPref.getObject(IMEI_USER_DATA); @@ -661,6 +664,7 @@ class _LandingPageState extends State with WidgetsBindingObserver { String voipToken = await sharedPref.getString(APNS_TOKEN); getOneSignalVOIPToken(voipToken); } + // registerGeofences(); } getOneSignalVOIPToken(String voipToken) { diff --git a/lib/pages/landing/widgets/services_view.dart b/lib/pages/landing/widgets/services_view.dart index 1a505e03..9cde947d 100644 --- a/lib/pages/landing/widgets/services_view.dart +++ b/lib/pages/landing/widgets/services_view.dart @@ -21,6 +21,7 @@ import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart'; import 'package:diplomaticquarterapp/pages/Covid-DriveThru/covid-drivethru-location.dart'; import 'package:diplomaticquarterapp/pages/DrawerPages/family/my-family.dart'; import 'package:diplomaticquarterapp/pages/ErService/ErOptions.dart'; +import 'package:diplomaticquarterapp/pages/InPatientServices/inpatient_home.dart'; import 'package:diplomaticquarterapp/pages/insurance/insurance_update_screen.dart'; import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart'; import 'package:diplomaticquarterapp/pages/medical/medical_profile_page_new.dart'; @@ -176,6 +177,9 @@ class ServicesView extends StatelessWidget { ), ); locator().hmgServices.logServiceName('latest news'); + } else if (index == 23) { + Navigator.push(context, FadePage(page: InPatientServicesHome())); + locator().hmgServices.logServiceName('InPatient Services'); } }, child: Container( diff --git a/lib/pages/login/login.dart b/lib/pages/login/login.dart index 94747b37..c177a1f8 100644 --- a/lib/pages/login/login.dart +++ b/lib/pages/login/login.dart @@ -1,5 +1,7 @@ import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; +import 'package:diplomaticquarterapp/core/model/geofencing/requests/GeoZonesRequestModel.dart'; import 'package:diplomaticquarterapp/core/service/AuthenticatedUserObject.dart'; +import 'package:diplomaticquarterapp/core/service/geofencing/GeofencingServices.dart'; import 'package:diplomaticquarterapp/core/viewModels/appointment_rate_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/pharmacyModule/pharmacy_module_view_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; @@ -329,7 +331,7 @@ class _Login extends State { } this.authService.checkActivationCode(request, code).then((result) async { sharedPref.remove(FAMILY_FILE); - registerGeoZones(); + // registerGeoZones(); projectViewModel.setPrivilege(privilegeList: result); result = CheckActivationCode.fromJson(result); result.list.isFamily = false; @@ -389,7 +391,8 @@ class _Login extends State { }); } - void registerGeoZones() { + void registerGeoZones() async { + await locator().getAllGeoZones(GeoZonesRequestModel()); projectViewModel.platformBridge().registerHmgGeofences(); } diff --git a/lib/services/authentication/auth_provider.dart b/lib/services/authentication/auth_provider.dart index f833ad5d..964a7edd 100644 --- a/lib/services/authentication/auth_provider.dart +++ b/lib/services/authentication/auth_provider.dart @@ -212,7 +212,8 @@ class AuthProvider with ChangeNotifier { request.channel = CHANNEL; request.iPAdress = IP_ADDRESS; request.generalid = GENERAL_ID; - request.languageID = (languageID == 'ar' ? 1 : 2); + // request.languageID = (languageID == 'ar' ? 1 : 2); + request.languageID = 2; request.deviceTypeID = Platform.isIOS ? 1 : 2; request.patientOutSA = request.zipCode == '966' ? 0 : 1; request.isDentalAllowedBackend = false; diff --git a/lib/uitl/HMG_Geofence.dart b/lib/uitl/HMG_Geofence.dart index 751c4ba6..c2c1a3f9 100644 --- a/lib/uitl/HMG_Geofence.dart +++ b/lib/uitl/HMG_Geofence.dart @@ -18,7 +18,7 @@ // import 'package:geofencing/geofencing.dart'; // // class HMG_Geofencing { -// var _testTrigger = false; +// var _testTrigger = true; // static var _isolatePortName = "hmg_geofencing_send_port"; // // List _zones; diff --git a/lib/uitl/push-notification-handler.dart b/lib/uitl/push-notification-handler.dart index d8b59782..60ac504e 100644 --- a/lib/uitl/push-notification-handler.dart +++ b/lib/uitl/push-notification-handler.dart @@ -19,6 +19,10 @@ import 'package:firebase_messaging/firebase_messaging.dart' as fir; import 'package:flutter/cupertino.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; +// import 'package:flutter_callkit_incoming/entities/android_params.dart'; +// import 'package:flutter_callkit_incoming/entities/call_kit_params.dart'; +// import 'package:flutter_callkit_incoming/entities/ios_params.dart'; +// import 'package:flutter_callkit_incoming/flutter_callkit_incoming.dart'; import 'package:flutter_ios_voip_kit/call_state_type.dart'; import 'package:flutter_ios_voip_kit/flutter_ios_voip_kit.dart'; import 'package:flutter_local_notifications/flutter_local_notifications.dart'; @@ -40,6 +44,7 @@ Future backgroundMessageHandler(dynamic message) async { } if (message.data != null && (message.data['is_call'] == 'true' || message.data['is_call'] == true)) { + // showCallkitIncoming(message); _incomingCall(message.data); return; } else { @@ -102,6 +107,57 @@ callPage(String sessionID, String token) async { // } } +// Future showCallkitIncoming(Map message) async { +// // if (message['type'] == 'ReservationCallStart') { +// var params = CallKitParams( +// id: DateTime.now().millisecondsSinceEpoch.toString(), +// nameCaller: 'Dr Sulaiman Al Habib', +// appName: 'Dr Sulaiman Al Habib', +// avatar: 'https://play-lh.googleusercontent.com/FBNNpxb7m6eM6wtW7MV1Ffp6OXOGLI38q47zcvP29OCYA1yhYH5mZzl5itZi0TgOyZpG', +// handle: 'LiveCare Call', +// type: 1, +// duration: 60000, +// textAccept: 'Accept', +// textDecline: 'Decline', +// textMissedCall: 'Missed call', +// textCallback: 'Call back', +// extra: { +// // 'reservationID': message['id'], +// 'userId': '1a2b3c4d' +// }, +// headers: {'apiKey': 'Abc@123!', 'platform': 'flutter'}, +// android: AndroidParams( +// isCustomNotification: true, +// isShowLogo: false, +// isShowCallback: false, +// ringtonePath: 'system_ringtone_default', +// backgroundColor: '#424242FF', +// // 'backgroundUrl': 'https://i.pravatar.cc/500', +// actionColor: '#4CAF50', +// incomingCallNotificationChannelName: "Incoming Call", +// missedCallNotificationChannelName: "Missed Call", +// ), +// ios: IOSParams( +// iconName: 'CallKitLogo', +// handleType: '', +// supportsVideo: true, +// maximumCallGroups: 2, +// maximumCallsPerCallGroup: 1, +// audioSessionMode: 'default', +// audioSessionActive: true, +// audioSessionPreferredSampleRate: 44100.0, +// audioSessionPreferredIOBufferDuration: 0.005, +// supportsDTMF: true, +// supportsHolding: true, +// supportsGrouping: false, +// supportsUngrouping: false, +// ringtonePath: 'system_ringtone_default')); +// await FlutterCallkitIncoming.showCallkitIncoming(params); +// // } else if (message['type'] == 'ReservationCallFinished') { +// // await FlutterCallkitIncoming.endAllCalls(); +// // } +// } + _incomingCall(Map data) async { LandingPage.incomingCallData = IncomingCallData.fromJson(data); if (LandingPage.isOpenCallPage == false) { @@ -313,6 +369,7 @@ class PushNotificationHandler { } if (remoteMessage.data['is_call'] == 'true' || remoteMessage.data['is_call'] == true) { _incomingCall(remoteMessage.data); + // showCallkitIncoming(remoteMessage.data); } else { GetNotificationsResponseModel notification = new GetNotificationsResponseModel(); diff --git a/lib/uitl/translations_delegate_base.dart b/lib/uitl/translations_delegate_base.dart index dabe80ab..2eb7f976 100644 --- a/lib/uitl/translations_delegate_base.dart +++ b/lib/uitl/translations_delegate_base.dart @@ -2891,6 +2891,21 @@ class TranslationBase { String get pharmaLiveCareMakePayment1 => localizedValues["pharmaLiveCareMakePayment1"][locale.languageCode]; String get pharmaLiveCareJoinConsultation => localizedValues["pharmaLiveCareJoinConsultation"][locale.languageCode]; String get pharmaLiveCareJoinConsultation1 => localizedValues["pharmaLiveCareJoinConsultation1"][locale.languageCode]; + String get InPatient => localizedValues["InPatient"][locale.languageCode]; + String get inPatientServices => localizedValues["InPatientServices"][locale.languageCode]; + String get InPatientServicesHeader => localizedValues["InPatientServicesHeader"][locale.languageCode]; + String get admissionGeneral => localizedValues["admissionGeneral"][locale.languageCode]; + String get consent => localizedValues["consent"][locale.languageCode]; + String get generalInstructionsTitle => localizedValues["generalInstructionsTitle"][locale.languageCode]; + String get generalInstructionsSubTitle => localizedValues["generalInstructionsSubTitle"][locale.languageCode]; + String get medicalInstructionsTitle => localizedValues["medicalInstructionsTitle"][locale.languageCode]; + String get medicalInstructionsSubTitle => localizedValues["medicalInstructionsSubTitle"][locale.languageCode]; + String get mealPlanTitle => localizedValues["mealPlanTitle"][locale.languageCode]; + String get mealPlanSubTitle => localizedValues["mealPlanSubTitle"][locale.languageCode]; + String get birthNotificationTitle => localizedValues["birthNotificationTitle"][locale.languageCode]; + String get birthNotificationSubTitle => localizedValues["birthNotificationSubTitle"][locale.languageCode]; + String get admissionNoticeTitle => localizedValues["admissionNoticeTitle"][locale.languageCode]; + String get admissionNoticeSubTitle => localizedValues["admissionNoticeSubTitle"][locale.languageCode]; } diff --git a/lib/widgets/in_app_browser/InAppBrowser.dart b/lib/widgets/in_app_browser/InAppBrowser.dart index f62248b8..e91990b4 100644 --- a/lib/widgets/in_app_browser/InAppBrowser.dart +++ b/lib/widgets/in_app_browser/InAppBrowser.dart @@ -37,9 +37,9 @@ class MyInAppBrowser extends InAppBrowser { // static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL LIVE static String APPLE_PAY_PAYFORT_URL = 'https://hmgwebservices.com/PayFortWebLive/PayFortApi/MakeApplePayRequest'; // Payfort Payment Gateway URL UAT - static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT + // static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWeb/pages/SendPayFortRequest.aspx'; // Payfort Payment Gateway URL UAT - // static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE + static String SERVICE_URL = 'https://hmgwebservices.com/PayFortWebLive/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL LIVE // static String SERVICE_URL = 'https://uat.hmgwebservices.com/payfortforvidaplus/pages/SendPayFortRequest.aspx'; //Payfort Payment Gateway URL UAT VIDA PLUS