package model import ( "blazing/cool" ) const ( TableNameMonsterRefresh = "config_monster_refresh" // 怪物刷新规则表(地图-精灵等级-刷新脚本配置) ) // MonsterRefresh 怪物刷新规则模型(对应前端配置的地图/精灵/等级/脚本配置) type MonsterRefresh struct { *BaseConfig MapID int32 `gorm:"not null;comment:'地图ID'" json:"map_id"` PitID1 []int32 `gorm:"type:int[];not null;comment:'坑位1绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_1"` PitID2 []int32 `gorm:"type:int[];not null;comment:'坑位2绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_2"` PitID3 []int32 `gorm:"type:int[];not null;comment:'坑位3绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_3"` PitID4 []int32 `gorm:"type:int[];not null;comment:'坑位4绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_4"` PitID5 []int32 `gorm:"type:int[];not null;comment:'坑位5绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_5"` PitID6 []int32 `gorm:"type:int[];not null;comment:'坑位6绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_6"` PitID7 []int32 `gorm:"type:int[];not null;comment:'坑位7绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_7"` PitID8 []int32 `gorm:"type:int[];not null;comment:'坑位8绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_8"` PitID9 []int32 `gorm:"type:int[];not null;comment:'坑位9绑定的坑位ID列表(多绑,循环刷)'" json:"pit_id_9"` } type MonsterRefreshEX struct { MonsterRefresh MonsterID []uint32 `json:"monster_id"` ShinyID []uint32 `json:"shiny_id"` // 扩展:便于批量处理9个坑位 PitIDs [9][]uint32 `json:"pit_ids"` // 整合所有坑位ID,前端/业务层批量处理用 } // TableName 指定MonsterRefresh对应的数据库表名 func (*MonsterRefresh) TableName() string { return TableNameMonsterRefresh } // GroupName 指定表所属的分组(保持和参考示例一致) func (*MonsterRefresh) GroupName() string { return "default" } // NewMonsterRefresh 创建一个新的MonsterRefresh实例(初始化通用Model) func NewMonsterRefresh() *MonsterRefresh { return &MonsterRefresh{ BaseConfig: NewBaseConfig(), } } // init 初始化表结构(程序启动时自动创建/同步表) func init() { cool.CreateTable(&MonsterRefresh{}) }