package yarn import ( "context" "muyu-apiserver/gateway/internal/svc" "muyu-apiserver/gateway/internal/types" "muyu-apiserver/pkg/ctxdata" "muyu-apiserver/rpc/inventory/pb" "github.com/zeromicro/go-zero/core/logx" ) type GetYarnLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } func NewGetYarnLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetYarnLogic { return &GetYarnLogic{Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx} } func (l *GetYarnLogic) GetYarn() (*types.YarnInfo, error) { id := ctxdata.GetPathId(l.ctx) resp, err := l.svcCtx.InventoryRpc.GetYarn(l.ctx, &pb.GetYarnReq{YarnId: id}) if err != nil { return nil, err } out := yarnInfoFromPB(resp) return &out, nil }