Files
36Wisdom/biz/controller/redemption.go
T
2026-08-14 12:13:02 +08:00

38 lines
879 B
Go

package controller
import (
"context"
"github.com/gogf/gf/v2/database/gdb"
"36wisdom/biz/model/dto"
"36wisdom/biz/service"
)
type redemption struct{}
var Redemption = &redemption{}
func (c *redemption) ListByUser(ctx context.Context, req *dto.RedemptionListReq) (*dto.RedemptionListRes, error) {
recs, err := service.Redemption.ListByUser(ctx, req.UserId)
if err != nil {
return nil, err
}
res := &dto.RedemptionListRes{List: make([]dto.RedemptionItem, 0, len(recs))}
for _, r := range recs {
res.List = append(res.List, redemptionItem(r))
}
return res, nil
}
func redemptionItem(r gdb.Record) dto.RedemptionItem {
return dto.RedemptionItem{
Id: r["id"].Int64(),
UserId: r["user_id"].Int64(),
PrizeId: r["prize_id"].Int64(),
PointsCost: r["points_cost"].Int(),
Status: r["status"].Int(),
Code: r["code"].String(),
}
}