From ea8d700d228ff7386ddef500f0ef4eca9051c625 Mon Sep 17 00:00:00 2001 From: haroon amjad Date: Wed, 19 Jan 2022 17:14:21 +0300 Subject: [PATCH] updates & fixes --- assets/applepay.json | 6 +- lib/pages/ToDoList/payment_method_select.dart | 22 -------- .../medical/balance/confirm_payment_page.dart | 56 +++++++------------ 3 files changed, 22 insertions(+), 62 deletions(-) diff --git a/assets/applepay.json b/assets/applepay.json index 5b00d6d5..0a5fdc11 100644 --- a/assets/applepay.json +++ b/assets/applepay.json @@ -4,14 +4,10 @@ "merchantIdentifier": "merchant.com.hmgwebservices", "displayName": "Sulaiman Al Habib", "merchantCapabilities": [ - "3DS", - "debit", - "credit" + "3DS" ], "supportedNetworks": [ - "amex", "visa", - "discover", "masterCard" ], "countryCode": "SA", diff --git a/lib/pages/ToDoList/payment_method_select.dart b/lib/pages/ToDoList/payment_method_select.dart index b0f65e13..f306fe09 100644 --- a/lib/pages/ToDoList/payment_method_select.dart +++ b/lib/pages/ToDoList/payment_method_select.dart @@ -302,28 +302,6 @@ class _PaymentMethodState extends State { padding: EdgeInsets.all(16), color: Colors.white, child: - // selectedPaymentMethod == "ApplePay" - // ? ApplePayButton( - // paymentConfigurationAsset: 'applepay.json', - // paymentItems: _paymentItems, - // style: ApplePayButtonStyle.black, - // type: ApplePayButtonType.inStore, - // width: MediaQuery.of(context).size.width, - // height: 50, - // margin: const EdgeInsets.only(top: 15.0), - // onPaymentResult: (value) { - // print(value); - // // applePayResponse = ApplePayResponse.fromJson(value); - // // print(applePayResponse.token.data); - // }, - // onError: (error) { - // print(error); - // }, - // loadingIndicator: const Center( - // child: CircularProgressIndicator(), - // ), - // ) - // : Container( width: MediaQuery.of(context).size.width, height: 50.0, diff --git a/lib/pages/medical/balance/confirm_payment_page.dart b/lib/pages/medical/balance/confirm_payment_page.dart index 57548633..e8bc51aa 100644 --- a/lib/pages/medical/balance/confirm_payment_page.dart +++ b/lib/pages/medical/balance/confirm_payment_page.dart @@ -5,6 +5,7 @@ import 'package:diplomaticquarterapp/core/model/my_balance/patient_info_and_mobi import 'package:diplomaticquarterapp/core/viewModels/medical/my_balance_view_model.dart'; import 'package:diplomaticquarterapp/models/Appointments/AppoimentAllHistoryResultList.dart'; import 'package:diplomaticquarterapp/models/Authentication/authenticated_user.dart'; +import 'package:diplomaticquarterapp/models/apple_pay_response.dart'; import 'package:diplomaticquarterapp/pages/base/base_view.dart'; import 'package:diplomaticquarterapp/routes.dart'; import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsList.dart'; @@ -42,19 +43,12 @@ class _ConfirmPaymentPageState extends State { AppSharedPreferences sharedPref = AppSharedPreferences(); String transID = ""; + ApplePayResponse applePayResponse; Pay _payClient = Pay.withAssets([ 'applepay.json', ]); - var _paymentItems = [ - PaymentItem( - label: 'Total', - amount: '99.99', - status: PaymentItemStatus.final_price, - ) - ]; - void submit(MyBalanceViewModel model, code) { final activationCode = code; GifLoaderDialogUtils.showMyDialog(AppGlobal.context); @@ -65,25 +59,6 @@ class _ConfirmPaymentPageState extends State { appo.projectID = widget.patientInfoAndMobileNumber.projectID; if (widget.selectedPaymentMethod == "ApplePay") { - // _payClient.userCanPay(PayProvider.apple_pay).then((value) { - // print(value); - // }); - - // return FutureBuilder( - // builder: (context, snapshot) { - // if (snapshot.connectionState == ConnectionState.done) { - // if (snapshot.data == true) { - // return RawGooglePayButton( - // style: GooglePayButtonStyle.black, - // type: GooglePayButtonType.pay, - // onPressed: onGooglePayPressed); - // } else { - // // userCanPay returned false - // // Consider showing an alternative payment method - // } - // } - // }, - // ); } else { openPayment(widget.selectedPaymentMethod, widget.authenticatedUser, double.parse(widget.advanceModel.amount), null); } @@ -215,14 +190,7 @@ class _ConfirmPaymentPageState extends State { child: DefaultButton( TranslationBase.of(context).confirm.toUpperCase(), () { - _payClient.userCanPay(PayProvider.apple_pay).then((value) async { - print(value); - final result = await _payClient.showPaymentSelector( - provider: PayProvider.apple_pay, - paymentItems: _paymentItems, - ); - print(result); - }); + startApplePayPayment(); // GifLoaderDialogUtils.showMyDialog(context); // model.sendActivationCodeForAdvancePayment(patientID: int.parse(widget.advanceModel.fileNumber), projectID: widget.advanceModel.hospitalsModel.iD).then((value) { // GifLoaderDialogUtils.hideDialog(context); @@ -328,6 +296,24 @@ class _ConfirmPaymentPageState extends State { }); } + startApplePayPayment() { + var _paymentItems = [ + PaymentItem( + label: TranslationBase.of(context).advancePayment, + amount: widget.advanceModel.amount, + status: PaymentItemStatus.final_price, + ) + ]; + _payClient.userCanPay(PayProvider.apple_pay).then((value) async { + print(value); + final result = await _payClient.showPaymentSelector( + provider: PayProvider.apple_pay, + paymentItems: _paymentItems, + ); + print(result); + }); + } + addAdvancedNumberRequest(String advanceNumber, String paymentReference, dynamic appointmentID, AppoitmentAllHistoryResultList appo) { DoctorsListService service = new DoctorsListService(); service.addAdvancedNumberRequest(advanceNumber, paymentReference, appointmentID, AppGlobal.context).then((res) {