From 533fde9cfe493b4a3ba18c367a87efa04d183f2c Mon Sep 17 00:00:00 2001 From: 王家文 Date: Tue, 23 Apr 2024 19:36:54 +0800 Subject: [PATCH] feat✨:通用的获取随机名字和头像的接口 --- controllers/common.go | 43 +++++++++++++++++++++++++++++++++++++++++++ models/common.go | 25 +++++++++++++++++++++++++ routers/router.go | 6 ++++++ service-common/svcommon/simulate.go | 4 ++-- service/roomrank/player.go | 2 +- 5 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 controllers/common.go create mode 100644 models/common.go diff --git a/controllers/common.go b/controllers/common.go new file mode 100644 index 0000000..751d64c --- /dev/null +++ b/controllers/common.go @@ -0,0 +1,43 @@ +package controllers + +import ( + "apigame/models" + "apigame/service-common/svcommon" + "apigame/service/code-msg" + "github.com/samber/lo" +) + +// CommonController 绑定控制器 +type CommonController struct { + BaseController +} + +// GetName 获取随机名字 +func (c *CommonController) GetName() { + req := new(models.ReqCommonGetName) + if !c.GetPostData(req) { + return + } + rsp := models.RspCommonGetName{} + count := lo.Clamp(req.Count, 1, 100) + for i := 0; i < count; i++ { + rsp.Values = append(rsp.Values, svcommon.GetName(req.GameID)) + } + + c.RetRspCodeData(code_msg.RECODE_OK, rsp) +} + +// GetAvatar 获取随机头像 +func (c *CommonController) GetAvatar() { + req := new(models.ReqCommonGetAvatar) + if !c.GetPostData(req) { + return + } + rsp := models.RspCommonGetAvatar{} + count := lo.Clamp(req.Count, 1, 100) + for i := 0; i < count; i++ { + rsp.Values = append(rsp.Values, svcommon.GetAvatar(req.GameID)) + } + + c.RetRspCodeData(code_msg.RECODE_OK, rsp) +} diff --git a/models/common.go b/models/common.go new file mode 100644 index 0000000..4443214 --- /dev/null +++ b/models/common.go @@ -0,0 +1,25 @@ +package models + +// ReqCommonGetName 请求 +type ReqCommonGetName struct { + BaseLoginInfo + BaseSign + Count int `form:"count" json:"count"` // 请求数量 +} + +// RspCommonGetName 返回 +type RspCommonGetName struct { + Values []string `form:"values" json:"values"` // 结果列表 +} + +// ReqCommonGetAvatar 请求 +type ReqCommonGetAvatar struct { + BaseLoginInfo + BaseSign + Count int `form:"count" json:"count"` // 请求数量 +} + +// RspCommonGetAvatar 返回 +type RspCommonGetAvatar struct { + Values []string `form:"values" json:"values"` // 结果列表 +} diff --git a/routers/router.go b/routers/router.go index 0d5a9e3..373a6bb 100644 --- a/routers/router.go +++ b/routers/router.go @@ -10,6 +10,12 @@ func init() { prefix := "/3ad7e4ab95ae2249" + // 通用 + // 获取随机名字 + beego.Router(prefix+"/common/getname", &controllers.CommonController{}, "post:GetName") + // 获取随机头像 + beego.Router(prefix+"/common/getavatar", &controllers.CommonController{}, "post:GetAvatar") + // 卡包卡牌活动 // 活动配置 beego.Router(prefix+"/cardholder/getconfig", &controllers.CardHolderController{}, "post:GetConfig") diff --git a/service-common/svcommon/simulate.go b/service-common/svcommon/simulate.go index 8d33935..5433ed6 100644 --- a/service-common/svcommon/simulate.go +++ b/service-common/svcommon/simulate.go @@ -17,8 +17,8 @@ func GetName(gameId string) string { return "李四" } -// GetIcon 随机模拟玩家头像 -func GetIcon(gameId string) string { +// GetAvatar 随机模拟玩家头像 +func GetAvatar(gameId string) string { config, err := confglobal.GetConfig(gameId) if err == nil { count := len(config.Avatars) diff --git a/service/roomrank/player.go b/service/roomrank/player.go index 38dd566..89c3a08 100644 --- a/service/roomrank/player.go +++ b/service/roomrank/player.go @@ -42,7 +42,7 @@ func NewRoomRobot(gameId string, robotConfigId int, userType int) *RoomPlayer { d := &RoomPlayer{ Uid: rand.Int63(), Name: svcommon.GetName(gameId), - Icon: svcommon.GetIcon(gameId), + Icon: svcommon.GetAvatar(gameId), Score: 0, JoinTime: lxtime.NowUninx(), UserType: userType, -- libgit2 0.21.0