getDeliveryManagement method
Implementation
Future<void> getDeliveryManagement({String? search}) async {
BuildContext context = Get.context!;
Helper.progressDialog(context, "Please wait..");
String requestTime = "";
String responseTime = "";
try {
await ApiClient(
baseUrl: ApiConstant.baseUrl,
onFetchRequestTime: (time) {
requestTime = time;
},
onFetchResponseTime: (time) {
responseTime = time;
},
screenName: "orderStock",
)
.getDeliveryManagement(
page: 1,
size: 500,
search: search,
)
.then((response) {
DeliveryManagementModel model = response;
if (model.content != null) {
Helper.close();
Helper.logEvent(
"RESPONSE_EVENT",
success: true,
endPoint: Api.deliveryManagement,
responseDate: responseTime,
screenName: "orderStock",
requestDate: requestTime,
);
deliveryMangamentnList.value = model.content ?? [];
if (search == "PICKUP") {
var pickupDelivery = deliveryMangamentnList.value.firstWhere(
(delivery) => delivery.deliveryType == 'PICKUP',
orElse: () => DeliveryContent(),
);
pickUpTimeSelect.value =
"${pickupDelivery.deliveryTime ?? ""} ${pickupDelivery.timeUnit ?? ""}";
} else {
var expressDelivery = deliveryMangamentnList.value.firstWhere(
(delivery) => delivery.deliveryType == 'EXPRESS',
orElse: () => DeliveryContent(),
);
expressTimeSelect.value =
"${expressDelivery.deliveryTime ?? ""} ${expressDelivery.timeUnit ?? ""}";
var standardDelivery = deliveryMangamentnList.value.firstWhere(
(delivery) => delivery.deliveryType == 'STANDARD',
orElse: () => DeliveryContent(),
);
standardTimeSelect.value =
"${standardDelivery.deliveryTime ?? ""} ${standardDelivery.timeUnit ?? ""}";
}
} else {
Helper.close();
}
}).catchError((error) {
ConditionalLogs().customLog("$error");
if (error is DioException) {
UDID.setTraceId(
error.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
);
Helper.logEvent(
"ERROR_EVENT",
failure: true,
requestDate: requestTime,
endPoint: Api.deliveryManagement,
responseDate: DateTime.now().toString(),
screenName: "stockOrder",
error: error,
);
}
Helper.close();
MainController mainController = Get.put(MainController());
mainController.showErrorPopup();
});
} catch (error, stacktrace) {
Helper.close();
ConditionalLogs().customLog("$stacktrace");
if (error is DioException) {
UDID.setTraceId(
error.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
);
Helper.logEvent(
"ERROR_EVENT",
failure: true,
requestDate: requestTime,
endPoint: Api.deliveryManagement,
responseDate: DateTime.now().toString(),
screenName: "stockOrder",
error: error,
);
}
}
}