fix: 统一分页请求的 offset 语义

This commit is contained in:
zetaloop
2026-04-07 17:56:38 +08:00
parent 424b2b1cca
commit d153b5cf51
46 changed files with 334 additions and 346 deletions
@@ -30,9 +30,9 @@ func NewSearchUsersLogic(ctx context.Context, svcCtx *svc.ServiceContext) *Searc
var SearUsersErr = errors.New("search users failed")
func (l *SearchUsersLogic) SearchUsers(in *pb.SearchUsersReq) (out *pb.SearchUsersResp, err error) {
if in.Page == nil || *in.Page < 0 {
logx.Errorf("Invalid page number: %v", in.Page)
return nil, errors.New("invalid page number")
if in.Offset == nil || *in.Offset < 0 {
logx.Errorf("invalid offset: %v", in.Offset)
return nil, errors.New("invalid offset")
}
if *in.Limit > 1000 {
logx.Errorf("Limit exceeds max limit: %d", in.Limit)
@@ -45,7 +45,7 @@ func (l *SearchUsersLogic) SearchUsers(in *pb.SearchUsersReq) (out *pb.SearchUse
users.EmailContainsFold(*in.Username),
users.CurrentRole(*in.CurrentRole),
)).
Offset(int(*in.Page * *in.Limit)).
Offset(int(*in.Offset)).
Limit(int(*in.Limit)).
All(l.ctx)
if err != nil {