diff --git a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobIndexController.php b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobIndexController.php index 6112c90..b5e0033 100644 --- a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobIndexController.php +++ b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobIndexController.php @@ -31,10 +31,7 @@ final class ReportJobIndexController extends Controller 'admin_user_id' => $j->admin_user_id !== null ? (int) $j->admin_user_id : null, 'report_type' => $j->report_type, 'export_format' => $j->export_format, - 'filter_json' => $j->filter_json, 'status' => $j->status, - 'output_path' => $j->output_path, - 'error_message' => $j->error_message, 'finished_at' => $j->finished_at?->toIso8601String(), 'created_at' => $j->created_at?->toIso8601String(), ]; diff --git a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobShowController.php b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobShowController.php index 370bcd8..59b412e 100644 --- a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobShowController.php +++ b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobShowController.php @@ -18,10 +18,7 @@ final class ReportJobShowController extends Controller 'admin_user_id' => $report_job->admin_user_id !== null ? (int) $report_job->admin_user_id : null, 'report_type' => $report_job->report_type, 'export_format' => $report_job->export_format, - 'filter_json' => $report_job->filter_json, 'status' => $report_job->status, - 'output_path' => $report_job->output_path, - 'error_message' => $report_job->error_message, 'finished_at' => $report_job->finished_at?->toIso8601String(), 'created_at' => $report_job->created_at?->toIso8601String(), ]); diff --git a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobStoreController.php b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobStoreController.php index 0e4690e..697fa89 100644 --- a/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobStoreController.php +++ b/app/Http/Controllers/Api/V1/Admin/Reports/ReportJobStoreController.php @@ -33,7 +33,6 @@ final class ReportJobStoreController extends Controller 'report_type' => $job->report_type, 'export_format' => $job->export_format, 'status' => $job->status, - 'output_path' => $job->output_path, ]); } } diff --git a/app/Http/Controllers/Api/V1/Ticket/TicketDrawMyMatchController.php b/app/Http/Controllers/Api/V1/Ticket/TicketDrawMyMatchController.php index 31bd927..a470d0a 100644 --- a/app/Http/Controllers/Api/V1/Ticket/TicketDrawMyMatchController.php +++ b/app/Http/Controllers/Api/V1/Ticket/TicketDrawMyMatchController.php @@ -61,7 +61,7 @@ final class TicketDrawMyMatchController extends Controller $itemIds = TicketItem::query() ->where('draw_id', $draw->id) ->where('player_id', $player->id) - ->whereIn('status', ['success', 'settled_win', 'settled_lose']) + ->whereIn('status', ['pending_draw', 'settled_win', 'settled_lose']) ->pluck('id'); $hasBets = $itemIds->isNotEmpty(); diff --git a/app/Services/Settlement/SettlementOrchestrator.php b/app/Services/Settlement/SettlementOrchestrator.php index d745f58..3875d4d 100644 --- a/app/Services/Settlement/SettlementOrchestrator.php +++ b/app/Services/Settlement/SettlementOrchestrator.php @@ -99,7 +99,7 @@ final class SettlementOrchestrator $ticketItems = TicketItem::query() ->where('draw_id', $locked->id) - ->where('status', 'success') + ->where('status', 'pending_draw') ->with(['combinations', 'order']) ->orderBy('id') ->get(); diff --git a/app/Services/Ticket/TicketPendingConfirmReconcileService.php b/app/Services/Ticket/TicketPendingConfirmReconcileService.php index cba2de9..85facd0 100644 --- a/app/Services/Ticket/TicketPendingConfirmReconcileService.php +++ b/app/Services/Ticket/TicketPendingConfirmReconcileService.php @@ -50,7 +50,7 @@ final class TicketPendingConfirmReconcileService ->where('order_id', $lockedOrder->id) ->where('status', 'pending_confirm') ->update([ - 'status' => 'success', + 'status' => 'pending_draw', 'fail_reason_code' => null, 'fail_reason_text' => null, 'updated_at' => now(), diff --git a/app/Services/Ticket/TicketPlacementService.php b/app/Services/Ticket/TicketPlacementService.php index abb7a20..573c947 100644 --- a/app/Services/Ticket/TicketPlacementService.php +++ b/app/Services/Ticket/TicketPlacementService.php @@ -282,7 +282,7 @@ final class TicketPlacementService ->get(); foreach ($successfulItems as $item) { - $item->forceFill(['status' => 'success'])->save(); + $item->forceFill(['status' => 'pending_draw'])->save(); $this->jackpotContribution->recordFromPlacedTicketItem($item, $draw, (string) $placement['currency_code']); } @@ -332,7 +332,7 @@ final class TicketPlacementService { $order = TicketOrder::query()->whereKey($order->id)->firstOrFail(); $draw = Draw::query()->whereKey((int) $order->draw_id)->firstOrFail(); - $successCount = TicketItem::query()->where('order_id', $order->id)->where('status', 'success')->count(); + $successCount = TicketItem::query()->where('order_id', $order->id)->where('status', 'pending_draw')->count(); $failureCount = TicketItem::query()->where('order_id', $order->id)->where('status', 'failed')->count(); if ($balanceAfter === null) { $walletTxn = WalletTxn::query() diff --git a/database/seeders/DashboardHallFixtureSeeder.php b/database/seeders/DashboardHallFixtureSeeder.php index a4a64f2..030db4b 100644 --- a/database/seeders/DashboardHallFixtureSeeder.php +++ b/database/seeders/DashboardHallFixtureSeeder.php @@ -181,7 +181,7 @@ final class DashboardHallFixtureSeeder extends Seeder 'combination_count' => 1, 'estimated_max_payout' => 0, 'risk_locked_amount' => 0, - 'status' => 'success', + 'status' => 'pending_draw', 'fail_reason_code' => null, 'fail_reason_text' => null, 'win_amount' => 15_000, @@ -212,7 +212,7 @@ final class DashboardHallFixtureSeeder extends Seeder 'combination_count' => 1, 'estimated_max_payout' => 0, 'risk_locked_amount' => 0, - 'status' => 'success', + 'status' => 'pending_draw', 'fail_reason_code' => null, 'fail_reason_text' => null, 'win_amount' => 0, @@ -259,7 +259,7 @@ final class DashboardHallFixtureSeeder extends Seeder 'combination_count' => 1, 'estimated_max_payout' => 0, 'risk_locked_amount' => 0, - 'status' => 'success', + 'status' => 'pending_draw', 'fail_reason_code' => null, 'fail_reason_text' => null, 'win_amount' => 0, diff --git a/tests/Feature/TicketBettingApiTest.php b/tests/Feature/TicketBettingApiTest.php index 2cd52c3..1347a74 100644 --- a/tests/Feature/TicketBettingApiTest.php +++ b/tests/Feature/TicketBettingApiTest.php @@ -440,14 +440,14 @@ test('ticket place can return mixed success and failed risk results', function ( ->assertJsonPath('code', ErrorCode::Success->value) ->assertJsonPath('data.summary.success_count', 1) ->assertJsonPath('data.summary.failure_count', 1) - ->assertJsonPath('data.items.0.status', 'success') + ->assertJsonPath('data.items.0.status', 'pending_draw') ->assertJsonPath('data.items.1.status', 'failed') ->assertJsonPath('data.items.1.fail_reason_code', (string) ErrorCode::RiskPoolSoldOut->value); $order = TicketOrder::query()->firstOrFail(); expect($order->status)->toBe('partial_failed') ->and((int) $order->total_actual_deduct)->toBe(120) - ->and(TicketItem::query()->where('status', 'success')->count())->toBe(1) + ->and(TicketItem::query()->where('status', 'pending_draw')->count())->toBe(1) ->and(TicketItem::query()->where('status', 'failed')->count())->toBe(1); $wallet = PlayerWallet::query()->where('player_id', $player->id)->firstOrFail(); @@ -825,7 +825,7 @@ test('ticket pending confirmation reconcile confirms order when wallet deduction ->assertExitCode(0); expect($order->fresh()->status)->toBe('placed') - ->and($item->fresh()->status)->toBe('success') + ->and($item->fresh()->status)->toBe('pending_draw') ->and((int) RiskPool::query()->where('draw_id', $draw->id)->where('normalized_number', '1234')->value('locked_amount'))->toBe(3000); }); diff --git a/tests/Feature/TicketItemsApiTest.php b/tests/Feature/TicketItemsApiTest.php index 55e6b07..e2ceee6 100644 --- a/tests/Feature/TicketItemsApiTest.php +++ b/tests/Feature/TicketItemsApiTest.php @@ -450,7 +450,7 @@ test('my-match only highlights settled winning tickets', function (): void { 'combination_count' => 1, 'estimated_max_payout' => 20_000, 'risk_locked_amount' => 20_000, - 'status' => 'success', + 'status' => 'pending_draw', 'win_amount' => 0, 'jackpot_win_amount' => 0, ]);