fix: 修正 player-api 列表返回逻辑与分页偏移转换

This commit is contained in:
zetaloop
2026-04-04 01:43:02 +08:00
parent 9bbc54ea66
commit 82e83ca30f
4 changed files with 19 additions and 7 deletions
@@ -38,7 +38,8 @@ func (l *GetServiceLogic) GetService(req *types.GetServiceReq) (resp *types.Play
return nil, err return nil, err
} }
err = copier.Copy(resp, &s) resp = &types.PlayerService{}
err = copier.Copy(resp, s.PlayerServices)
if err != nil { if err != nil {
logx.Errorf("GetServiceLogic.GetService err: %v", err) logx.Errorf("GetServiceLogic.GetService err: %v", err)
return nil, err return nil, err
@@ -31,8 +31,12 @@ func NewListPlayerServicesLogic(ctx context.Context, svcCtx *svc.ServiceContext)
func (l *ListPlayerServicesLogic) ListPlayerServices(req *types.ListPlayerServicesReq) (resp *types.PlayerServiceListResp, err error) { func (l *ListPlayerServicesLogic) ListPlayerServices(req *types.ListPlayerServicesReq) (resp *types.PlayerServiceListResp, err error) {
resp = &types.PlayerServiceListResp{} resp = &types.PlayerServiceListResp{}
page := int64(0)
if req.Limit > 0 {
page = req.Offset / req.Limit
}
s, err := l.svcCtx.PlayerRpc.SearchPlayerServices(l.ctx, &playerservice.SearchPlayerServicesReq{ s, err := l.svcCtx.PlayerRpc.SearchPlayerServices(l.ctx, &playerservice.SearchPlayerServicesReq{
Page: req.Offset, Page: page,
Limit: req.Limit, Limit: req.Limit,
PlayerId: req.Id, PlayerId: req.Id,
}) })
@@ -42,7 +46,7 @@ func (l *ListPlayerServicesLogic) ListPlayerServices(req *types.ListPlayerServic
for _, v := range s.PlayerServices { for _, v := range s.PlayerServices {
temp := types.PlayerService{} temp := types.PlayerService{}
err = copier.Copy(&temp, &v) err = copier.Copy(&temp, &v)
if err == nil { if err != nil {
logx.Errorf("ListPlayerServicesLogic.ListPlayerServices copier.Copy err: %v", err) logx.Errorf("ListPlayerServicesLogic.ListPlayerServices copier.Copy err: %v", err)
continue continue
} }
@@ -30,9 +30,12 @@ func NewListPlayersLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ListP
} }
func (l *ListPlayersLogic) ListPlayers(req *types.PlayerListReq) (resp *types.PlayerListResp, err error) { func (l *ListPlayersLogic) ListPlayers(req *types.PlayerListReq) (resp *types.PlayerListResp, err error) {
// todo: add your logic here and delete this line page := int64(0)
if req.Limit > 0 {
page = req.Offset / req.Limit
}
p, err := l.svcCtx.PlayerRpc.SearchPlayers(l.ctx, &pb.SearchPlayersReq{ p, err := l.svcCtx.PlayerRpc.SearchPlayers(l.ctx, &pb.SearchPlayersReq{
Page: &req.Offset, Page: &page,
Limit: &req.Limit, Limit: &req.Limit,
Gender: &req.Gender, Gender: &req.Gender,
}) })
@@ -31,8 +31,12 @@ func NewListServicesLogic(ctx context.Context, svcCtx *svc.ServiceContext) *List
func (l *ListServicesLogic) ListServices(req *types.PageReq) (resp *types.PlayerServiceListResp, err error) { func (l *ListServicesLogic) ListServices(req *types.PageReq) (resp *types.PlayerServiceListResp, err error) {
resp = &types.PlayerServiceListResp{} resp = &types.PlayerServiceListResp{}
page := int64(0)
if req.Limit > 0 {
page = req.Offset / req.Limit
}
s, err := l.svcCtx.PlayerRpc.SearchPlayerServices(l.ctx, &playerservice.SearchPlayerServicesReq{ s, err := l.svcCtx.PlayerRpc.SearchPlayerServices(l.ctx, &playerservice.SearchPlayerServicesReq{
Page: req.Offset, Page: page,
Limit: req.Limit, Limit: req.Limit,
PlayerId: 0, PlayerId: 0,
}) })
@@ -42,7 +46,7 @@ func (l *ListServicesLogic) ListServices(req *types.PageReq) (resp *types.Player
for _, v := range s.PlayerServices { for _, v := range s.PlayerServices {
temp := types.PlayerService{} temp := types.PlayerService{}
err = copier.Copy(&temp, &v) err = copier.Copy(&temp, &v)
if err == nil { if err != nil {
logx.Errorf("ListPlayerServicesLogic.ListPlayerServices copier.Copy err: %v", err) logx.Errorf("ListPlayerServicesLogic.ListPlayerServices copier.Copy err: %v", err)
continue continue
} }