// Code scaffolded by goctl. Safe to edit. // goctl 1.10.2 package logic import ( "context" "udeServer/internal/svc" "udeServer/internal/types" "github.com/zeromicro/go-zero/core/logx" ) type ListServicesLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } func NewListServicesLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ListServicesLogic { return &ListServicesLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx, } } func (l *ListServicesLogic) ListServices(req *types.ListServiceReq) (*types.ServiceListResp, error) { page, pageSize := normalizePage(req.Page, req.PageSize) list, total, err := l.svcCtx.ServiceModel.FindPage(l.ctx, page, pageSize) if err != nil { l.Errorf("list services failed: %v", err) return nil, err } resp := &types.ServiceListResp{ List: make([]types.ServiceResp, 0, len(list)), Total: total, } for i := range list { resp.List = append(resp.List, *toServiceResp(&list[i])) } return resp, nil }