checkDataOnLoad method

Future<void> checkDataOnLoad(
  1. String amount, {
  2. bool isDeepLink = false,
})

Implementation

Future<void> checkDataOnLoad(
  String amount, {
  bool isDeepLink = false,
}) async {
  try {
    BuildContext context = Get.context!;
    if (isDeepLink) {
      ConditionalLogs().customLog(
        'Api polling stopped $paymentStatusName \n isDeepLink : $isDeepLink \n callPaymentTransactionStatusApi invoked for the background case',
      );
      stopApiPolling();
      await callPaymentTransactionStatusApi(
        transactionId,
        true,
        false,
        isFromDeepLink: true,
      );
    }
    // Perform your API call or data fetch here
    if (paymentStatus.value == paymentStatusName) {
      ConditionalLogs().customLog(
        'App resumed from background \n paymentStatusName: $paymentStatusName \n isDeepLink : $isDeepLink',
      );
      stopApiPolling();
      if (paymentmodestatus == 1) {
        ConditionalLogs().customLog(
          'App resumed from background \n paymentmodestatus: $paymentmodestatus',
        );
        await Future.delayed(const Duration(milliseconds: 500), () {
          paymentmodestatus = 0;
          // common.Helper.close();
        });
        ConditionalLogs().customLog(
          'App resumed from background \n callSubmitCouponApi invoked',
        );
        callSubmitCouponApi(paymentCreateTransactionId.value, amount);
      } else if (paymentmodestatus == 2) {
        await Future.delayed(const Duration(milliseconds: 500), () {
          paymentmodestatus = 0;
          stopApiPolling();
          callSubmitCouponApi(paymentCreateTransactionId.value, amount);
        });
      } else if (paymentmodestatus == 2) {
        await Future.delayed(const Duration(milliseconds: 500), () {
          paymentmodestatus = 0;
          stopApiPolling();
          if (isDiscardPayment) {
            navigateToPaymentPendingSuccess();
          }
        });
      }
    } else {
      if (paymentScreenType.value == "Web") {
        stopApiPolling();
        if (paymentmodestatus == 1) {
          //await callPaymentTransactionStatusApi(
          //     paymentCreateTransactionId.value, true, true);
          await Future.delayed(const Duration(milliseconds: 500), () {
            paymentmodestatus = 0;
          });
          paymentStatus.value == "SUCCESS"
              ? navigateToPaymentPendingSuccess()
              : null;
        } else {
          if (isDiscardPayment) {
            paymentmodestatus = 0;
            navigateToPaymentPendingSuccess();
          }
        }
      }
    }
  } catch (e) {
    stopApiPolling();
    if (paymentmodestatus == 1) {
      await Future.delayed(const Duration(milliseconds: 500), () {
        paymentmodestatus = 0;
      });
      navigateToPaymentPendingSuccess();
    } else {
      paymentmodestatus = 0;
      if (isDiscardPayment) {
        navigateToPaymentPendingSuccess();
      }
    }
  }
}