package logic import ( "context" "muyu-apiserver/rpc/inventory/internal/svc" "muyu-apiserver/rpc/inventory/pb" "github.com/zeromicro/go-zero/core/logx" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" ) type ListStockCheckLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewListStockCheckLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ListStockCheckLogic { return &ListStockCheckLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } func (l *ListStockCheckLogic) ListStockCheck(in *pb.ListStockCheckReq) (*pb.ListStockCheckResp, error) { list, total, err := l.svcCtx.StockCheckModel.FindList(l.ctx, in.Page, in.PageSize, in.CheckNo, in.Status, in.StartDate, in.EndDate) if err != nil { return nil, status.Error(codes.Internal, err.Error()) } pbList := make([]*pb.StockCheckInfo, 0, len(list)) for _, c := range list { pbList = append(pbList, &pb.StockCheckInfo{ CheckId: c.CheckId, CheckNo: c.CheckNo, CheckDate: c.CheckDate.Format("2006-01-02"), Checker: c.Checker, Status: c.Status, Remark: c.Remark.String, CreatedAt: c.CreatedAt.Format("2006-01-02 15:04:05"), UpdatedAt: c.UpdatedAt.Format("2006-01-02 15:04:05"), }) } return &pb.ListStockCheckResp{ Total: total, List: pbList, }, nil }