From da423fe12a05ac79b1f1503778d2661e787f2ed6 Mon Sep 17 00:00:00 2001 From: haroon amjad Date: Thu, 23 Feb 2023 16:06:56 +0300 Subject: [PATCH] Pharma LiveCare updates --- lib/config/config.dart | 4 +- lib/config/localized_values.dart | 1 + lib/pages/livecare/livecare_type_select.dart | 101 ++++++++++++------- lib/pages/livecare/widgets/clinic_list.dart | 6 +- lib/uitl/translations_delegate_base.dart | 1 + lib/widgets/in_app_browser/InAppBrowser.dart | 4 +- 6 files changed, 72 insertions(+), 45 deletions(-) diff --git a/lib/config/config.dart b/lib/config/config.dart index 30ce29b2..b30ba215 100644 --- a/lib/config/config.dart +++ b/lib/config/config.dart @@ -20,8 +20,8 @@ var PACKAGES_ORDERS = '/api/orders'; var PACKAGES_ORDER_HISTORY = '/api/orders/items'; var PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara'; // var BASE_URL = 'http://10.50.100.198:3334/'; - var BASE_URL = 'https://uat.hmgwebservices.com/'; -// var BASE_URL = 'https://hmgwebservices.com/'; +// var BASE_URL = 'https://uat.hmgwebservices.com/'; +var BASE_URL = 'https://hmgwebservices.com/'; // Pharmacy UAT URLs // var BASE_PHARMACY_URL = 'https://uat.hmgwebservices.com/epharmacy/api/'; diff --git a/lib/config/localized_values.dart b/lib/config/localized_values.dart index 65a6caab..30c05f52 100644 --- a/lib/config/localized_values.dart +++ b/lib/config/localized_values.dart @@ -1870,4 +1870,5 @@ const Map localizedValues = { "pendingActivation": {"en": "Pending Activation", "ar": "في انتظار التنشيط"}, "awaitingApproval": {"en": "Awaiting Approval", "ar": "انتظر القبول"}, "liveCareSupportContact": {"en": "LiveCare Support Contact: ", "ar": "اتصل لايف كير: "}, + "pharmaLiveCare": {"en": "Pharma LiveCare", "ar": "لايف كير الصيدلية"}, }; \ No newline at end of file diff --git a/lib/pages/livecare/livecare_type_select.dart b/lib/pages/livecare/livecare_type_select.dart index 13087901..44b5c2fe 100644 --- a/lib/pages/livecare/livecare_type_select.dart +++ b/lib/pages/livecare/livecare_type_select.dart @@ -1,14 +1,12 @@ import 'package:barcode_scan2/barcode_scan2.dart'; import 'package:diplomaticquarterapp/config/shared_pref_kay.dart'; import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart'; -import 'package:diplomaticquarterapp/pages/livecare/livecare_home.dart'; import 'package:diplomaticquarterapp/services/livecare_services/livecare_provider.dart'; import 'package:diplomaticquarterapp/theme/colors.dart'; import 'package:diplomaticquarterapp/uitl/app_shared_preferences.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; -import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:provider/provider.dart'; @@ -103,7 +101,9 @@ class _LiveCareTypeSelectState extends State { children: [ _loginOptionButton(TranslationBase.of(context).livecareOption1, 'assets/images/new/Live_Care.svg', 1), _loginOptionButton(TranslationBase.of(context).livecareOption4, 'assets/images/new/book appointment.svg', 2), - _loginOptionButton("Pharma LiveCare", 'assets/images/new/Live_Care.svg', 3), + _loginOptionButton(TranslationBase.of(context).pharmaLiveCare, 'assets/images/new/pharma.svg', 3, + // isEnable: projectViewModel.havePrivilege(99) + ), ], ), SizedBox( @@ -116,7 +116,7 @@ class _LiveCareTypeSelectState extends State { ); } - Widget _loginOptionButton(String _title, String _icon, int _loginIndex) { + Widget _loginOptionButton(String _title, String _icon, int _loginIndex, {bool isEnable = true}) { return InkWell( onTap: () { if (_loginIndex == 1) { @@ -127,53 +127,78 @@ class _LiveCareTypeSelectState extends State { projectViewModel.analytics.liveCare.livecare_schedule_video_call(); } else { //Pharmacy LiveCare - readQRCode(); + if (isEnable) readQRCode(); } }, - child: Container( - padding: EdgeInsets.only(left: 20, right: 20, bottom: 3, top: 28), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(15), - color: Colors.white, - border: Border.all( - color: Color(0xffefefef), - width: 1, - ), - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - SvgPicture.asset( - _icon, - height: _loginIndex == 1 ? 60 : 50, - width: _loginIndex == 1 ? 60 : 50, + child: Stack(children: [ + AspectRatio( + aspectRatio: 1.0, + child: Container( + padding: EdgeInsets.only(left: 20, right: 20, bottom: 3, top: 28), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(15), + color: Colors.white, + border: Border.all( + color: Color(0xffefefef), + width: 1, + ), ), - Text( - _title, - style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + SvgPicture.asset( + _icon, + height: _loginIndex == 3 ? 80 : 60, + width: _loginIndex == 3 ? 80 : 60, + ), + Text( + _title, + style: TextStyle(fontSize: 16, fontWeight: FontWeight.w600, color: Color(0xff2B353E), letterSpacing: -0.48, height: 20 / 16), + ), + ], ), - ], + ), ), - ), + isEnable + ? Container() + : Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(15), + color: Colors.grey.withOpacity(0.6), + border: Border.all( + color: Color(0xffefefef), + width: 1, + ), + ), + width: double.infinity, + height: double.infinity, + child: Icon( + Icons.lock_outline, + size: 40, + ), + ) + ]), ); } readQRCode() async { pharmacyLiveCareQRCode = (await BarcodeScanner.scan())?.rawContent; - GifLoaderDialogUtils.showMyDialog(context); - LiveCareService service = new LiveCareService(); - service.getPatientInfoByQR(pharmacyLiveCareQRCode, context).then((res) { - GifLoaderDialogUtils.hideDialog(context); - }).catchError((err) { - GifLoaderDialogUtils.hideDialog(context); - print(err); - startPharmacyLiveCareProcess(); - }); + if (pharmacyLiveCareQRCode != "") { + GifLoaderDialogUtils.showMyDialog(context); + LiveCareService service = new LiveCareService(); + service.getPatientInfoByQR(pharmacyLiveCareQRCode, context).then((res) { + GifLoaderDialogUtils.hideDialog(context); + }).catchError((err) { + GifLoaderDialogUtils.hideDialog(context); + print(err); + startPharmacyLiveCareProcess(); + }); + } else {} } startPharmacyLiveCareProcess() { - sharedPref.setString(LIVECARE_CLINIC_DATA, "Pharmacy LiveCare" + "-" + "501" + "-" + "7"); + sharedPref.setString(LIVECARE_CLINIC_DATA, "Pharmacy LiveCare" + "-" + "501" + "-" + "1"); Navigator.pop(context, "pharmacy/$pharmacyLiveCareQRCode"); // Navigator.push(context, FadePage(page: LiveCareHome(isPharmacyLiveCare: true, pharmacyLiveCareQRCode: pharmacyLiveCareQRCode,))); } diff --git a/lib/pages/livecare/widgets/clinic_list.dart b/lib/pages/livecare/widgets/clinic_list.dart index c59d7ef4..62f91fcb 100644 --- a/lib/pages/livecare/widgets/clinic_list.dart +++ b/lib/pages/livecare/widgets/clinic_list.dart @@ -572,12 +572,12 @@ class _clinic_listState extends State { .then((value) async { if (value == null) { Navigator.pop(context); - } else if (value.contains("-")) { + } else if (value.contains("/")) { widget.isPharmacyLiveCare = true; widget.pharmacyLiveCareQRCode = value.split("/")[1]; liveCareClinicIDs = await sharedPref.getString(LIVECARE_CLINIC_DATA); - selectedClinicID = int.parse(liveCareClinicIDs.split("-")[2]); - selectedClinicName = liveCareClinicIDs.split("-")[0]; + selectedClinicID = 1; + selectedClinicName = TranslationBase.of(context).pharmaLiveCare; sharedPref.remove(LIVECARE_CLINIC_DATA); startLiveCare(); } else { diff --git a/lib/uitl/translations_delegate_base.dart b/lib/uitl/translations_delegate_base.dart index 95e1e438..f68738a5 100644 --- a/lib/uitl/translations_delegate_base.dart +++ b/lib/uitl/translations_delegate_base.dart @@ -2878,6 +2878,7 @@ class TranslationBase { String get awaitingApproval => localizedValues["awaitingApproval"][locale.languageCode]; String get liveCareSupportContact => localizedValues["liveCareSupportContact"][locale.languageCode]; String get scanNFC => localizedValues["scanNFC"][locale.languageCode]; + String get pharmaLiveCare => localizedValues["pharmaLiveCare"][locale.languageCode]; } diff --git a/lib/widgets/in_app_browser/InAppBrowser.dart b/lib/widgets/in_app_browser/InAppBrowser.dart index 4fbc41cc..96eb99cb 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 PRESCRIPTION_PAYMENT_WITH_ORDERID = // 'https://uat.hmgwebservices.com/epharmacy/checkout/OpcCompleteRedirectionPaymentClientbyOrder?orderID=';