diff --git a/modules/base/service/base_sys_login.go b/modules/base/service/base_sys_login.go index 2d99d38c..6691870b 100644 --- a/modules/base/service/base_sys_login.go +++ b/modules/base/service/base_sys_login.go @@ -52,7 +52,8 @@ func (s *BaseSysLoginService) Login(ctx context.Context, req *v1.BaseOpenLoginRe // 调用方法 userInfo, err := GetUserInfo(username, password) if err != nil { - log.Fatal(err) + err = gerror.New("用户系统错误") + return } // // 输出结果 @@ -75,7 +76,7 @@ func (s *BaseSysLoginService) Login(ctx context.Context, req *v1.BaseOpenLoginRe } } else { - m := cool.DBM(baseSysUser).Where("username=?", username).Where("status=?", 1) + m := cool.DBM(baseSysUser).Where("username=?", username) m.Scan(&user) if user == nil { //这里实现注册用户 @@ -83,9 +84,14 @@ func (s *BaseSysLoginService) Login(ctx context.Context, req *v1.BaseOpenLoginRe // return NewBaseSysUserService().Gen(userInfo.Data.Attributes) - m := cool.DBM(baseSysUser).Where("username=?", username).Where("status=?", 1) + m := cool.DBM(baseSysUser).Where("username=?", username) m.Scan(&user) } else { + if *user.Status == 0 { + + err = gerror.New("账户被封禁~") + return + } user.HeadImg = &userInfo.Data.Attributes.AvatarUrl var ttt = *user.PasswordV + 1 user.PasswordV = &ttt @@ -94,7 +100,7 @@ func (s *BaseSysLoginService) Login(ctx context.Context, req *v1.BaseOpenLoginRe log.Fatal(err) } - cool.CacheManager.Set(ctx, fmt.Sprintf("admin:passwordVersion:%d", user.ID), user.PasswordV, 0) + cool.CacheManager.Set(ctx, fmt.Sprintf("admin:passwordVersion:%d", user.ID), ttt, 0) } } diff --git a/modules/config/controller/admin/task.go b/modules/config/controller/admin/task.go new file mode 100644 index 00000000..3e8d8626 --- /dev/null +++ b/modules/config/controller/admin/task.go @@ -0,0 +1,22 @@ +package admin + +import ( + "blazing/cool" + "blazing/modules/config/service" +) + +type TaskController struct { + *cool.Controller +} + +func init() { + + // 注册路由 + cool.RegisterController(&TaskController{ + &cool.Controller{ + Prefix: "/admin/config/task", + Api: []string{"Add", "Delete", "Update", "Info", "List", "Page"}, + Service: service.NewTaskService(), + }, + }) +} diff --git a/modules/config/model/TaskConfig.go b/modules/config/model/TaskConfig.go index 383c9f4a..87b58522 100644 --- a/modules/config/model/TaskConfig.go +++ b/modules/config/model/TaskConfig.go @@ -6,7 +6,7 @@ import ( // 表名常量定义:任务配置表 const ( - TableNameTaskConfig = "task_config" // 任务配置表(记录任务ID、类型、目标、奖励、状态等核心信息) + TableNameTaskConfig = "config_task" // 任务配置表(记录任务ID、类型、目标、奖励、状态等核心信息) ) // TaskConfig 任务核心配置模型 @@ -14,12 +14,11 @@ type TaskConfig struct { *cool.Model // 核心字段 - TaskId uint32 `gorm:"not null;uniqueIndex;comment:'任务唯一ID'" json:"task_id" description:"任务唯一ID"` - TaskName string `gorm:"not null;size:128;comment:'任务名称'" json:"task_name" description:"任务名称"` + TaskId uint32 `gorm:"not null;uniqueIndex;comment:'任务唯一ID'" json:"task_id" description:"任务唯一ID"` // 奖励配置 ItemRewardIds []uint32 `gorm:"not null;type:json;default:'[]';comment:'绑定奖励物品ID数组,关联item_gift表主键'" json:"item_reward_ids" description:"奖励物品数组"` - ElfRewardIds []uint32 `gorm:"not null;type:json;default:'[]';comment:'绑定奖励精灵ID数组,关联config_pet_boss表主键'" json:"elf_reward_ids" description:"奖励精灵数组"` + ElfRewardIds uint32 `gorm:"not null;default:0;comment:'绑定奖励精灵ID,关联elf_gift表主键'" json:"elf_reward_ids" description:"绑定奖励精灵ID"` // 任务状态和周期 IsEnabled uint32 `gorm:"not null;default:1;comment:'是否启用该任务(0-禁用 1-启用)'" json:"is_enabled" description:"是否启用"` diff --git a/modules/config/model/pet_gift.go b/modules/config/model/pet_gift.go index 503e925a..1d4b0dba 100644 --- a/modules/config/model/pet_gift.go +++ b/modules/config/model/pet_gift.go @@ -11,14 +11,15 @@ const ( // PetReward 精灵奖励基础配置模型(核心存储结构,与数据库表字段一一对应) type PetReward struct { - *cool.Model // 嵌入通用Model(包含ID/创建时间/更新时间等通用字段,保持与BossConfig一致) - IsEnabled uint32 `gorm:"not null;default:0;comment:'是否启用(0-禁用 1-启用)'" json:"is_enabled"` - MonID int32 `gorm:"not null;comment:'BOSS对应的精灵ID'" json:"mon_id"` - DV int32 `gorm:"not null;default:0;comment:'成长值'" json:"dv"` - Nature uint32 `gorm:"not null;default:0;comment:'BOSS属性-性格'" json:"nature"` - Effect uint32 `gorm:"not null;comment:'BOSS特性'" json:"effect"` - Lv int32 `gorm:"not null;comment:'BOSS等级(LvHpMatchUser非0时此配置无效)'" json:"lv"` - IsEgg uint32 `gorm:"not null;default:0;comment:'是否蛋'" json:"is_egg"` //奖励是否为扭蛋奖励 + *cool.Model // 嵌入通用Model(包含ID/创建时间/更新时间等通用字段,保持与BossConfig一致) + IsEnabled uint32 `gorm:"not null;default:0;comment:'是否启用(0-禁用 1-启用)'" json:"is_enabled"` + MonID int32 `gorm:"not null;comment:'BOSS对应的精灵ID'" json:"mon_id"` + DV int32 `gorm:"not null;default:0;comment:'成长值'" json:"dv"` + Nature uint32 `gorm:"not null;default:0;comment:'BOSS属性-性格'" json:"nature"` + Effect int32 `gorm:"not null;comment:'BOSS特性'" json:"effect"` + Lv int32 `gorm:"not null;comment:'BOSS等级(LvHpMatchUser非0时此配置无效)'" json:"lv"` + IsEgg uint32 `gorm:"not null;default:0;comment:'是否蛋'" json:"is_egg"` //奖励是否为扭蛋奖励 + Desc *string `gorm:"size:512;default:'';comment:'BOSS描述'" json:"desc"` } // TableName 指定PetReward对应的数据库表名(遵循现有代码规范) diff --git a/modules/config/service/task.go b/modules/config/service/task.go new file mode 100644 index 00000000..4123d740 --- /dev/null +++ b/modules/config/service/task.go @@ -0,0 +1,18 @@ +package service + +import ( + "blazing/cool" + "blazing/modules/config/model" +) + +type TaskService struct { + *cool.Service +} + +func NewTaskService() *TaskService { + return &TaskService{ + &cool.Service{ + Model: model.NewTaskConfig(), + }, + } +}