Files
lotteryLaravel/app/Models/PlayConfigItem.php

59 lines
1.5 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',
'category',
'dimension',
'bet_mode',
'display_name_zh',
'display_name_en',
'display_name_ne',
'is_enabled',
'min_bet_amount',
'max_bet_amount',
'display_order',
'supports_multi_number',
'rule_text_zh',
'rule_text_en',
'rule_text_ne',
'reserved_rule_json',
'extra_config_json',
];
protected function casts(): array
{
return [
'version_id' => 'integer',
'dimension' => 'integer',
'is_enabled' => 'boolean',
'min_bet_amount' => 'integer',
'max_bet_amount' => 'integer',
'display_order' => 'integer',
'supports_multi_number' => 'boolean',
'reserved_rule_json' => 'json',
'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');
}
}