package recommend_r import ( "git.hilo.cn/hilo-common/domain" "git.hilo.cn/hilo-common/mycontext" "git.hilo.cn/hilo-common/resource/mysql" "github.com/gin-gonic/gin" "hilo-user/cv/user_cv" "hilo-user/domain/model/recommend_m" "hilo-user/domain/model/user_m" "hilo-user/resp" ) // @Tags 用户推荐 // @Summary 推荐最近送礼的50人,最近12小时赠送礼物大于100k的用户 // @Param token header string true "token" // @Success 200 {object} []user_cv.UserTiny // @Router /v1/recommend/user/gift [get] func UserRecommendGift(c *gin.Context) (*mycontext.MyContext, error) { myContext := mycontext.CreateMyContext(c.Keys) model := domain.CreateModelContext(myContext) // 获取推荐 recommendUser := recommend_m.GetPastTop50SendGiftUsers(model) var response = make([]*user_cv.UserTiny, 0) if len(recommendUser) <= 0 { resp.ResponseOk(c, response) return myContext, nil } var userIds []mysql.ID for _, v := range recommendUser { userIds = append(userIds, v.SendUserId) } users, err := user_m.GetUserMapByIds(model, userIds) if err != nil { return myContext, err } for _, v := range recommendUser { response = append(response, user_cv.UserToTiny(users[v.SendUserId])) } resp.ResponseOk(c, response) return myContext, nil }