getWalletTransactions method
dynamic
getWalletTransactions({})
Implementation
getWalletTransactions({
int page = 1,
String? selectedPartnerId,
int? status,
String? startDate,
String? endDate,
String? correlationId,
String? walletUsageType,
}) {
String requestTime = "";
String responseTime = "";
try {
if (page == 1) {
Helper.progressDialog(Get.context!, "");
}
final String loginPartnerId = SecureStorageService.readSecureData(
SecureStorageService.partnerIdLogin,
) ??
'';
final bool isSubResellerUser = SecureStorageService.readSecureData(
SecureStorageService.levelIdLogin,
) ==
subResellerLevelId.value;
final String? partnerIdForRequest = isSubResellerUser
? loginPartnerId
: selectedPartnerId ??
selectedSubResellerFilter.value?.partnerId ??
loginPartnerId;
final int? statusForRequest = status ??
int.tryParse(selectedStatusFilter.value?.dropDownId ?? "") ??
selectedStatusFilter.value?.id;
final String? selectedDateForRequest =
selectedDateFilter.value.isNotEmpty ? selectedDateFilter.value : null;
final String? startDateForRequest = startDate ??
(selectedDateForRequest != null
? "$selectedDateForRequest 00:00:00"
: null);
final String? endDateForRequest = endDate ??
(selectedDateForRequest != null
? "$selectedDateForRequest 23:59:59"
: null);
ApiClient(
baseUrl: ApiConstant.baseUrl,
onFetchRequestTime: (time) {
requestTime = time;
},
onFetchResponseTime: (time) {
responseTime = time;
},
screenName: "wallet",
)
.getWalletTransactions(
partnerId: partnerIdForRequest ?? loginPartnerId,
status: statusForRequest,
startDate: startDateForRequest,
endDate: endDateForRequest,
correlationId: correlationId,
walletUsageType: walletUsageType,
page: page,
size: 10,
sort: "transactionTime",
order: "desc")
.then(
(value) {
if (page == 1) {
transactionList.value = value.content ?? [];
paymentTransactionList.value = transactionList;
Helper.close();
isLoadingMore.value = false;
} else {
transactionList.addAll(value.content ?? []);
paymentTransactionList.value = transactionList;
isLoadingMore.value = false;
}
totalTransaction = value.totalElements ?? 0;
Helper.logEvent(
"RESPONSE_EVENT",
success: true,
endPoint: Api.fetchWalletTransactions,
responseDate: DateTime.now().toString(),
screenName: "wallet",
requestDate: requestTime,
);
isResponseRecieved.value = true;
},
).catchError((e) {
isLoadingMore.value = false;
isResponseRecieved.value = true;
ConditionalLogs().customLog("error $e");
if (e is DioException) {
UDID.setTraceId(
e.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
);
Helper.logEvent(
"ERROR_EVENT",
failure: true,
requestDate: requestTime,
endPoint: Api.fetchWalletTransactions,
responseDate: DateTime.now().toString(),
screenName: "wallet",
error: e,
);
}
if (page == 1) {
Helper.close();
}
});
} catch (e) {
isLoadingMore.value = false;
isResponseRecieved.value = true;
ConditionalLogs().customLog("error $e");
if (e is DioException) {
UDID.setTraceId(
e.response?.headers.map[Constants.traceIdKey]?[0] ?? "",
);
Helper.logEvent(
"ERROR_EVENT",
failure: true,
requestDate: requestTime,
endPoint: Api.fetchWalletTransactions,
responseDate: DateTime.now().toString(),
screenName: "wallet",
error: e,
);
}
if (page == 1) {
Helper.close();
}
}
}