diff --git a/cv/cp_cv/cp.go b/cv/cp_cv/cp.go index 82def3338ceca36de4ad89e962b70b5712736965..4525dd34ec16b217c40fc2b06f59d98eefb2e7fe 100644 --- a/cv/cp_cv/cp.go +++ b/cv/cp_cv/cp.go @@ -8,3 +8,10 @@ type CvCp struct { CpLevel CvCpLevel `json:"cpLevel"` // cp等级 MyPrivilegeList []CvPrivilege `json:"myPrivilegeList"` // 等级特权 } + +// cp关系 +type CvCpRelation struct { + CpId uint64 `json:"cpId"` + UserId uint64 `json:"userId"` + CpUserId uint64 `json:"cpUserId"` +} diff --git a/route/router.go b/route/router.go index be5a1ce7373a2692c26c80cd3f0b4c03a2f46cd5..3074dc2074c440aad0c3d92d7eededf60008c913 100755 --- a/route/router.go +++ b/route/router.go @@ -50,6 +50,7 @@ func InitRouter() *gin.Engine { innerUser.GET("/levels", wrapper(user_r.MGetUserLevels)) innerUser.GET("/bag/id", wrapper(user_r.GetUserBagId)) innerUser.GET("/cp", wrapper(user_r.GetUserCp)) + innerUser.GET("/cpRelation", wrapper(user_r.GetUserCpRelation)) } // 道具相关 innerProp := inner.Group("/prop") diff --git a/route/user_r/inner.go b/route/user_r/inner.go index 4ed1ca726a8862df5b3bda153a88e06582ff6fc3..c2a5e9c559a7f5d5a3c32859cc5801cd7eef4468 100644 --- a/route/user_r/inner.go +++ b/route/user_r/inner.go @@ -116,6 +116,7 @@ func GetUserCp(c *gin.Context) (*mycontext.MyContext, error) { cpRelation, exists := cp_m.GetCpRelation(model, userId) if !exists { resp.ResponseOk(c, response) + return myContext, nil } var myPrivilegeList []cp_cv.CvPrivilege level := cp_m.GetCpLevel(model, cpRelation.ID) @@ -160,3 +161,35 @@ func GetUserCp(c *gin.Context) (*mycontext.MyContext, error) { resp.ResponseOk(c, response) return myContext, nil } + +// @Tags 用户-内部 +// @Summary 获取用户cp关系 +// @Param id query int true "用户id" +// @Success 200 {object} cp_cv.CvCpRelation +// @Router /inner/user/cpRelation [get] +func GetUserCpRelation(c *gin.Context) (*mycontext.MyContext, error) { + myContext := mycontext.CreateMyContext(c.Keys) + var model = domain.CreateModelContext(myContext) + var req GetUserCpReq + if err := c.ShouldBindQuery(&req); err != nil { + return myContext, err + } + userId := req.Id + var response cp_cv.CvCpRelation + cpRelation, exists := cp_m.GetCpRelation(model, userId) + if !exists { + resp.ResponseOk(c, response) + return myContext, nil + } + cpUserId := cpRelation.UserId2 + if cpUserId == userId { + cpUserId = cpRelation.UserId1 + } + response = cp_cv.CvCpRelation{ + CpId: cpRelation.ID, + UserId: userId, + CpUserId: cpUserId, + } + resp.ResponseOk(c, response) + return myContext, nil +}