Files
epic-go/internal/controller/hero/hero_v1.go
hu xiaotong 89a6cdc001 refactor(hero): 重构英雄相关接口和数据结构
- 修改 GetDetailReq 结构体,将 Code 字段改为 HeroCode
- 更新 GetDetailRes 结构体,将 Rarity 字段改为 Stars,类型从 string 改为 int
-调整 EpicHeroVO 结构体,移除 orm 标签,将 Rarity 改为 Stars- 更新相关控制器和逻辑层代码,以适应上述变更
2025-06-23 09:22:57 +08:00

44 lines
959 B
Go

// internal/controller/hero/hero_v1.go
package hero
import (
"context"
"epic/api/hero/v1"
"epic/internal/service"
)
func (c *ControllerV1) GetOne(ctx context.Context, req *v1.GetOneReq) (res *v1.GetOneRes, err error) {
hero, err := service.Hero().GetHeroByCode(ctx, req.Code)
if err != nil {
return nil, err
}
res = &v1.GetOneRes{
EpicHeroInfo: hero,
}
return res, nil
}
func (c *ControllerV1) GetList(ctx context.Context, req *v1.GetListReq) (res *v1.GetListRes, err error) {
// 获取 VO 列表
list, err := service.Hero().GetHeroList(ctx)
if err != nil {
return nil, err
}
// 构造响应
res = (*v1.GetListRes)(&list)
return res, nil
}
func (c *ControllerV1) GetDetail(ctx context.Context, req *v1.GetDetailReq) (res *v1.GetDetailRes, err error) {
detail, err := service.Hero().GetHeroDetailByCode(ctx, req.HeroCode)
if err != nil {
return nil, err
}
res = &v1.GetDetailRes{
HeroDetailVO: detail,
}
return res, nil
}