initPayment method

void initPayment()

Implementation

void initPayment() {
  if (isAgreedTerms.isFalse) {
    CustomFlashWidget.showFlashMessage(
      type: FlashType.info,
      title: "Important",
      message:
          "Please review and accept our terms and conditions to access our services. Failure to do so will prevent you from proceeding",
    );
    return;
  }

  if (isAgreedPayment.isFalse) {
    CustomFlashWidget.showFlashMessage(
      type: FlashType.info,
      title: "Important",
      message:
          "Please review and accept our terms and conditions to access our services. Failure to do so will prevent you from proceeding",
    );
    return;
  }

  if (type.value == SubscriptionType.corporateAddon) {
    if (passengerAddonsPricing.value == null) {
      CustomFlashWidget.showFlashMessage(
      type: FlashType.error,
        title: "Error2",
        message: "Please select an addon first",
      );
      return;
    }

    if (corporatePassengersNumber.value < 1) {
      CustomFlashWidget.showFlashMessage(
      type: FlashType.error,
        title: "Error",
        message: "Please select the number of passengers first",
      );
      return;
    }
  } else {
    if (selectedPackage.value == null) {
      CustomFlashWidget.showFlashMessage(
        type: FlashType.error,
        title: "Error",
        message: 'Please select a package first',
      );
      return;
    }
  }
  paymentController.subscriptionName.value= selectedPackage.value?.name??"";
  paymentController.paymentType.value = PaymentType.membership;
  paymentController.selectedPaymentMethod.value = selectedPaymentMethod.value;
  paymentController.subscriptionType.value = type.value;
  paymentController.selectedUpgradeOption.value = selectedUpgradeOption.value;
  paymentController.passengerAddonsPricing.value =
      passengerAddonsPricing.value;
  paymentController.corporatePassengersNumber.value =
      corporatePassengersNumber.value;
  paymentController.selectedPackage.value = selectedPackage.value;

  if (selectedPaymentMethod.value == PaymentMethod.cryptoCurrency) {
    paymentController.paymentExpireStartDate.value = DateTime.now();
    paymentController.getAllCryptoCurrencies();
  } else if (selectedPaymentMethod.value == PaymentMethod.cardPayment) {
    paymentController.initiateCardPayment();
  } else if (selectedPaymentMethod.value == PaymentMethod.bankTransfer) {
    paymentController.initiateBankPayment();
  }
}