Files
bl/modules/config/model/shiny.go
昔念 7e840cbf17 ```
feat(config): 添加炫彩皮肤配置服务和数据库查询功能

- 新增ShinyService服务,提供Args方法用于根据ID查询炫彩皮肤配置
- 修改ColorfulSkin模型,将BindElfIds字段的gorm类型从json改为jsonb以支持数组查询
- 移除ColorfulSkin模型中嵌入的cool.Model的json标签,优化序列化
- 实现基于JSONB数组查询的精灵绑定功能,支持概率随机和刷新计数统计

debug(common): 添加数据库缓存清除调试信息

- 在ModifyAfter方法中添加er1变量接收ClearCache返回值
- 使用println输出缓存清除结果,便于调试缓存机制

refactor(player): 重构玩家宠物异色信息生成逻辑

- 引入config服务包,通过配置动态生成宠物炫彩效果
- 注释掉原有的固定炫彩效果生成代码
- 添加条件判断,仅当配置存在时才
2025-12-26 23:46:10 +08:00

59 lines
2.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package model
import (
"blazing/cool"
)
// 表名常量定义:炫彩皮肤表
const (
TableNameColorfulSkin = "colorful_skin" // 炫彩皮肤表(记录炫彩皮肤颜色、光环、绑定精灵等核心配置)
)
// ColorfulSkin 炫彩皮肤核心配置模型(完整保留原有字段,仅更名适配)
type ColorfulSkin struct {
*cool.Model
// 核心必填字段
Color string `gorm:"not null;default:'';comment:'炫彩皮肤颜色(唯一标识每条配置)'" json:"color" description:"炫彩皮肤颜色"`
IsEnabled uint32 `gorm:"not null;default:1;comment:'是否启用0-禁用 1-启用)'" json:"is_enabled" description:"是否启用"`
Author string `gorm:"not null;size:64;default:'';comment:'炫彩皮肤配置作者(创建人/配置者名称)'" json:"author" description:"作者"`
RefreshCount uint32 `gorm:"not null;default:0;comment:'累计刷新次数(炫彩皮肤外观刷新次数统计)'" json:"refresh_count" description:"刷新次数"`
UsageCount uint32 `gorm:"not null;default:0;comment:'累计使用次数(炫彩皮肤使用次数统计)'" json:"usage_count" description:"使用次数"`
BindElfIds []uint32 `gorm:"not null;type:jsonb;default:'[]';comment:'绑定精灵ID数组关联config_pet_boss表主键空数组表示未绑定具体精灵'" json:"bind_elf_ids" description:"绑定精灵数组"`
//野生精灵概率
ElfProbability uint32 `gorm:"not null;default:0;comment:'野生精灵概率0-10000'" json:"elf_probability" description:"野生精灵概率"`
// 辅助备注字段
Remark string `gorm:"size:512;default:'';comment:'炫彩皮肤备注'" json:"remark" description:"备注信息"`
}
// -------------------------- 核心配套方法(仅更名适配,逻辑不变)--------------------------
func (*ColorfulSkin) TableName() string {
return TableNameColorfulSkin
}
func (*ColorfulSkin) GroupName() string {
return "default"
}
func NewColorfulSkin() *ColorfulSkin {
return &ColorfulSkin{
Model: cool.NewModel(),
Color: "",
IsEnabled: 1,
Author: "",
RefreshCount: 0,
UsageCount: 0,
BindElfIds: []uint32{},
Remark: "",
}
}
// -------------------------- 表结构自动同步 --------------------------
func init() {
cool.CreateTable(&ColorfulSkin{})
}