feat: 添加结算功能,更新 TicketItem 模型以支持最新结算详情,增强 DrawTickService 以自动处理结算,更新 TicketWalletService 以支持派彩入账,扩展 API 路由以管理结算批次和奖池

This commit is contained in:
2026-05-11 15:34:34 +08:00
parent 6a55fa9592
commit 19003f5041
50 changed files with 3604 additions and 3 deletions

View File

@@ -0,0 +1,40 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
/** 注单项结算明细 {@see ticket_settlement_details} */
class TicketSettlementDetail extends Model
{
protected $fillable = [
'settlement_batch_id',
'ticket_item_id',
'matched_prize_tier',
'win_amount',
'jackpot_allocation_amount',
'match_detail_json',
];
protected function casts(): array
{
return [
'settlement_batch_id' => 'integer',
'ticket_item_id' => 'integer',
'win_amount' => 'integer',
'jackpot_allocation_amount' => 'integer',
'match_detail_json' => 'json',
];
}
public function batch(): BelongsTo
{
return $this->belongsTo(SettlementBatch::class, 'settlement_batch_id');
}
public function ticketItem(): BelongsTo
{
return $this->belongsTo(TicketItem::class, 'ticket_item_id');
}
}