35 lines
752 B
Go
35 lines
752 B
Go
package controller
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/gogf/gf/v2/database/gdb"
|
|
|
|
"36wisdom/biz/model/dto"
|
|
"36wisdom/biz/service"
|
|
)
|
|
|
|
type userBadge struct{}
|
|
|
|
var UserBadge = &userBadge{}
|
|
|
|
func (c *userBadge) ListByUser(ctx context.Context, req *dto.UserBadgeListReq) (*dto.UserBadgeListRes, error) {
|
|
recs, err := service.UserBadge.ListByUser(ctx, req.UserId)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
res := &dto.UserBadgeListRes{List: make([]dto.UserBadgeItem, 0, len(recs))}
|
|
for _, r := range recs {
|
|
res.List = append(res.List, userBadgeItem(r))
|
|
}
|
|
return res, nil
|
|
}
|
|
|
|
func userBadgeItem(r gdb.Record) dto.UserBadgeItem {
|
|
return dto.UserBadgeItem{
|
|
Id: r["id"].Int64(),
|
|
UserId: r["user_id"].Int64(),
|
|
BadgeId: r["badge_id"].Int64(),
|
|
}
|
|
}
|