Feat: add client side expirity time transaction

This commit is contained in:
orangdeso 2025-04-19 13:33:11 +07:00
parent d34b170aab
commit 606492e8a0
2 changed files with 13 additions and 1 deletions

View File

@ -1,6 +1,9 @@
import 'dart:async';
import 'dart:developer';
import 'package:get/get.dart';
import '../../data/repositories/transaction_repository_impl.dart';
import '../../presentation/controllers/history_controller.dart';
class TransactionExpiryService {
static final TransactionExpiryService _instance = TransactionExpiryService._internal();
@ -37,6 +40,15 @@ class TransactionExpiryService {
log('[TransactionExpiryService] Memulai pengecekan transaksi kedaluwarsa...');
try {
await _repository.checkAndCancelExpiredTransactions();
try {
final historyController = Get.find<HistoryController>();
historyController.checkExpiredPendingTransactions();
} catch (e) {
// HistoryController mungkin belum ter-inject, itu normal
log('[TransactionExpiryService] HistoryController belum tersedia: $e');
}
log('[TransactionExpiryService] Pengecekan transaksi kedaluwarsa selesai');
} catch (e) {
log('[TransactionExpiryService] Error saat memeriksa transaksi kedaluwarsa: $e');

View File

@ -266,7 +266,7 @@ class _TicketBookingStep4ScreenState extends State<TicketBookingStep4Screen> {
// Persiapkan data expiry time
final DateTime currentTime = DateTime.now();
final DateTime expiryTime = currentTime.add(Duration(seconds: 20));
final DateTime expiryTime = currentTime.add(Duration(days: 1));
// Persiapkan data bandara
final bandaraData = {