callPaymentModesApi method

Future<void> callPaymentModesApi({
  1. required String sellerType,
})

Implementation

Future<void> callPaymentModesApi({required String sellerType}) async {
  // BuildContext context = Get.context!;
  String requestTime = DateTime.now().toString();
  try {
    Helper.progressDialog(Get.context!, "Please wait..");
    print(
        "object   ${'${ApiConstant.posBL}pos-payment-service-svc/payment-modes?sellerType=$sellerType&transactionType=SELL_OUT&contractType=SALE_ORDER'}");
    await dio
        .get(
      '${ApiConstant.posBL}pos-payment-service-svc/payment-modes?sellerType=$sellerType&transactionType=SELL_OUT&contractType=SALE_ORDER',
      options: Options(
        headers: {
          'X-User-Id': SingletonSotrage.secureStorageInterface.readSecureData(
            SecureStorageService.xUserId,
          ),
          'X-UserId': SingletonSotrage.secureStorageInterface.readSecureData(
            SecureStorageService.xUserId,
          ),
          'X-Channel': Constants.xChannel,
          'Accept-Language': storage.read("selected_language") ?? "en",
          'x-request-txn-id': UDID.uDID,
          "Authorization":
              "Bearer ${SingletonSotrage.secureStorageInterface.readSecureData(
            SecureStorageService.accessToken,
          )}",
        },
      ),
    )
        .then((response) {
      UDID.setTraceId(response.headers.map[Constants.traceIdKey]?[0] ?? "");

      Helper.logEvent(
        "RESPONSE_EVENT",
        success: true,
        endPoint:
            "pos-customer-sales-svc/payments/list?page=1&size=10&keyword=",
        responseDate: DateTime.now().toString(),
        screenName: "sellthruPayment",
        requestDate: requestTime,
      );
      if (response.data != null) {
        ConditionalLogs().customLog("${response.data}");
        isLoading.value = false;
        Map<String, dynamic> data = response.data;
        PaymentModeModel model = PaymentModeModel.fromJson(response.data);
        final paymentData = model.data ?? [];
        Helper.close();
        paymentModeList.value = paymentData;
        getPaymentModes(paymentData!);
      } else {
        isLoading.value = false;
        Helper.close();
      }
    }).catchError((error) {
      ConditionalLogs().customLog("$error");
      isLoading.value = false;
      Helper.close();
      if (error is DioException) {
        UDID.setTraceId(
          error.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
        );
        Helper.logEvent(
          "ERROR_EVENT",
          failure: true,
          endPoint:
              "pos-customer-sales-svc/payments/list?page=1&size=10&keyword=",
          requestDate: requestTime,
          responseDate: DateTime.now().toString(),
          screenName: "sellthruPayment",
          error: error,
        );
      }
      MainController mainController = Get.put(MainController());
      mainController.showErrorPopup();
    });
  } catch (err, stacktrace) {
    Helper.close();
    isLoading.value = false;
    ConditionalLogs().customLog("$err");
    ConditionalLogs().customLog("$stacktrace");
    if (err is DioException) {
      UDID.setTraceId(
        err.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
      );
      Helper.logEvent(
        "ERROR_EVENT",
        failure: true,
        endPoint:
            "pos-customer-sales-svc/payments/list?page=1&size=10&keyword=",
        requestDate: requestTime,
        responseDate: DateTime.now().toString(),
        screenName: "sellthruPayment",
        error: err,
      );
    }
  }
}