package model import "time" // RoomTurnoverRewardConfig 保存房间流水奖励的系统级配置。 type RoomTurnoverRewardConfig struct { ID int64 `gorm:"column:id;primaryKey"` SysOrigin string `gorm:"column:sys_origin;size:32;uniqueIndex:uk_room_turnover_reward_sys_origin"` Enabled bool `gorm:"column:enabled;index:idx_room_turnover_reward_enabled"` Timezone string `gorm:"column:timezone;size:64"` CreateTime time.Time `gorm:"column:create_time"` UpdateTime time.Time `gorm:"column:update_time"` } func (RoomTurnoverRewardConfig) TableName() string { return "room_turnover_reward_config" } // RoomTurnoverRewardLevel 保存达到某个流水门槛后发放的金币奖励。 type RoomTurnoverRewardLevel struct { ID int64 `gorm:"column:id;primaryKey"` ConfigID int64 `gorm:"column:config_id;uniqueIndex:uk_room_turnover_reward_level,priority:1;uniqueIndex:uk_room_turnover_reward_threshold,priority:1;index:idx_room_turnover_reward_level_config"` Level int `gorm:"column:level;uniqueIndex:uk_room_turnover_reward_level,priority:2"` TurnoverThreshold int64 `gorm:"column:turnover_threshold;uniqueIndex:uk_room_turnover_reward_threshold,priority:2"` RewardGold int64 `gorm:"column:reward_gold"` Enabled bool `gorm:"column:enabled"` CreateTime time.Time `gorm:"column:create_time"` UpdateTime time.Time `gorm:"column:update_time"` } func (RoomTurnoverRewardLevel) TableName() string { return "room_turnover_reward_level" } // RoomTurnoverRewardRecord 记录每周给房主发放的最高档房间流水奖励。 type RoomTurnoverRewardRecord struct { ID int64 `gorm:"column:id;primaryKey"` ConfigID int64 `gorm:"column:config_id;index:idx_room_turnover_reward_record_config"` SysOrigin string `gorm:"column:sys_origin;size:32;uniqueIndex:uk_room_turnover_reward_record_room,priority:1;index:idx_room_turnover_reward_record_cycle,priority:1"` CycleKey string `gorm:"column:cycle_key;size:32;uniqueIndex:uk_room_turnover_reward_record_room,priority:2;index:idx_room_turnover_reward_record_cycle,priority:2"` PeriodStartAt time.Time `gorm:"column:period_start_at"` PeriodEndAt time.Time `gorm:"column:period_end_at"` RoomID int64 `gorm:"column:room_id;uniqueIndex:uk_room_turnover_reward_record_room,priority:3;index:idx_room_turnover_reward_record_room"` RoomAccount string `gorm:"column:room_account;size:64"` RoomName string `gorm:"column:room_name;size:255"` RoomCover string `gorm:"column:room_cover;size:1024"` OwnerUserID int64 `gorm:"column:owner_user_id;index:idx_room_turnover_reward_record_owner"` CountryCode string `gorm:"column:country_code;size:32"` CountryName string `gorm:"column:country_name;size:128"` TurnoverAmount int64 `gorm:"column:turnover_amount"` Level int `gorm:"column:level"` TurnoverThreshold int64 `gorm:"column:turnover_threshold"` RewardGold int64 `gorm:"column:reward_gold"` TrackID string `gorm:"column:track_id;size:128;uniqueIndex:uk_room_turnover_reward_track"` Status string `gorm:"column:status;size:32;index:idx_room_turnover_reward_record_status"` RetryCount int `gorm:"column:retry_count"` LastError string `gorm:"column:last_error;size:1024"` SentAt *time.Time `gorm:"column:sent_at"` CreateTime time.Time `gorm:"column:create_time"` UpdateTime time.Time `gorm:"column:update_time"` } func (RoomTurnoverRewardRecord) TableName() string { return "room_turnover_reward_record" }