getInvoice method

Future<void> getInvoice(
  1. String transactionId,
  2. String? orderId
)

Implementation

Future<void> getInvoice(String transactionId, String? orderId) async {
  var docUrl = transactionId;
  if (await canLaunchUrl(Uri.parse(docUrl))) {
    await launchUrl(Uri.parse(docUrl), mode: LaunchMode.inAppBrowserView);
  }
  return;
  BuildContext context = Get.context!;
  Helper.progressDialog(context, "Please wait..");

  var body = {
    "sourceSystem": "MobileApp",
    "saleOrderId": orderId,
    "partnerId": storage.read("DEALER_ID") ?? "",
  };
  try {
    InvoiceReceiptModel model = await ApiClient(baseUrl: ApiConstant.posBL)
        .invoiceReceipt(
            status: "generate",
            body: body,
            orderId: orderId ?? "",
            xUserName: storage.read("XUSER_ID"),
            xUserId: storage.read("XUSER_ID"));

    if (model.status == "POS200") {
      Get.back();
      if (model.data != null) {
        var docUrl = model.data!.downloadURL ?? "";
        if (await canLaunchUrl(Uri.parse(docUrl))) {
          await launchUrl(Uri.parse(docUrl),
              mode: LaunchMode.inAppBrowserView);
        }
      }
    } else {
      Get.back();
      if (model.errors != null) {
        Helper.messageDialog(
            Get.context!,
            model.errors![0].errorItem!.errorCode ?? "Try again!!",
            model.errors![0].errorItem!.errorMessage ??
                "Something went wrong");
      }
    }
  } catch (err, stacktrace) {
    Get.back();
    log(err.toString());
    print(stacktrace);
    MainController mainController = Get.put(MainController());
    mainController.showErrorPopup();
  }
}