Files
lotteryLaravel/app/Models/PlayConfigItem.php

48 lines
1.2 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
/** {@see play_config_items} — 与 {@see PlayType::play_code} 对齐。 */
final class PlayConfigItem extends Model
{
protected $fillable = [
'version_id',
'play_code',
'is_enabled',
'min_bet_amount',
'max_bet_amount',
'display_order',
'rule_text_zh',
'rule_text_en',
'rule_text_ne',
'extra_config_json',
];
protected function casts(): array
{
return [
'version_id' => 'integer',
'is_enabled' => 'boolean',
'min_bet_amount' => 'integer',
'max_bet_amount' => 'integer',
'display_order' => 'integer',
'extra_config_json' => 'json',
];
}
/** @return BelongsTo<PlayConfigVersion, PlayConfigItem> */
public function version(): BelongsTo
{
return $this->belongsTo(PlayConfigVersion::class, 'version_id');
}
/** @return BelongsTo<PlayType, PlayConfigItem> */
public function playType(): BelongsTo
{
return $this->belongsTo(PlayType::class, 'play_code', 'play_code');
}
}