getStockHistory method

dynamic getStockHistory(
  1. BuildContext context,
  2. String? date,
  3. String partnerId, {
  4. String? state,
  5. String? fromDate,
  6. String? toDate,
  7. int offset = 0,
  8. String? orderId,
})

Implementation

getStockHistory(
  BuildContext context,
  String? date,
  String partnerId, {
  String? state,
  String? fromDate,
  String? toDate,
  int offset = 0,
  String? orderId,
}) async {
  Helper.hideKeyboard();
  try {
    if (offset == 0) {
      Helper.progressDialog(context, "Please wait..");
    }
    // printLogs(dio);
    var query = [
      {
        "action": null,
        "query": "category",
        "value": "sell-thru,spot-sell-thru"
      },
      {
        "action": null,
        "query": "relatedParty",
        "value": "ToDistributorId:${storage.read("PARTNER_ID_LOGIN")}"
      },
      {
        "action": null,
        "query": "state",
        "value": state ?? "ACKNOWLEDGED,INPROGRESS,COMPLETED,FAILED"
      }
    ];
    if (fromDate != null && toDate != null) {
      query
          .add({"query": "fromOrderDate", "value": fromDate, "action": null});
      query.add({"query": "toOrderDate", "value": toDate, "action": null});
    }
    if (orderId != null && orderId.isNotEmpty) {
      query.add({"query": "id", "value": orderId, "action": null});
    }
    dio
        .post(
      '${ApiConstant.romBaseUrl}rom-core-svc/tmf-api/productOrderingManagement/v4/elastic/productOrder',
      queryParameters: {
        'fieldName': 'orderDate',
        'sortBy': 'DESC',
        'offset': offset,
        'limit': 10,
      },
      data: json.encode({"hsQuery": query}),
      options: Options(
        headers: {
          'X-User-Id': storage.read("XUSER_ID"),
          'X-User-Name': storage.read("XUSER_ID")
        },
      ),
    )
        .then((response) {
      if (response.data != null &&
          response.data.toString().trim().isNotEmpty) {
        // print('getStockHistory${response.data}');
        List<dynamic> jsonList = response.data;
        List<StockHistoryResponse> myModels = jsonList
            .map((json) => StockHistoryResponse.fromJson(json))
            .toList();
        if (offset == 0) {
          getStockHistoryList1.value = myModels;
        } else {
          getStockHistoryList1.addAll(myModels);
        }
        isLoadingMore.value = false;

        debugPrint('getStockHistoryList1-->');
        // for (var _ in getStockHistoryList1) {
        //   debugPrint(_.toString());
        // }
      }
      if (offset == 0) {
        Get.back();
      }
    }).catchError((error) {
      print(error.toString());
      if (offset == 0) {
        Get.back();
      }
      MainController mainController = Get.put(MainController());
      mainController.showErrorPopup();
    });
  } catch (e) {
    if (offset == 0) {
      Get.back();
    }
  }
}