package logic import ( "GtDataStore/app/cmd/organization/internal/svc" "GtDataStore/app/cmd/organization/pb" "GtDataStore/app/model" "GtDataStore/common/xerr" "context" "github.com/pkg/errors" "time" "github.com/zeromicro/go-zero/core/logx" ) type MultiAddItemHistoryDataLogic struct { ctx context.Context svcCtx *svc.ServiceContext logx.Logger } func NewMultiAddItemHistoryDataLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MultiAddItemHistoryDataLogic { return &MultiAddItemHistoryDataLogic{ ctx: ctx, svcCtx: svcCtx, Logger: logx.WithContext(ctx), } } func (l *MultiAddItemHistoryDataLogic) MultiAddItemHistoryData(in *pb.MultiAddItemHistoryDataReq) (*pb.MultiAddItemHistoryDataResp, error) { ts := make([]model.DcItemHistoryData, len(in.List)) for i, data := range in.List { layout := "2006-01-02 15:04:05" t, _ := time.Parse(layout, data.CTime) ts[i] = model.DcItemHistoryData{ ProjectId: data.ProjectId, ItemName: data.ItemName, Val: data.Val, CTime: t, } } _, err := l.svcCtx.ItemHistoryData.MultiInsert(l.ctx, ts) if err != nil { return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "item history data table multi Insert err:%v", err) } return &pb.MultiAddItemHistoryDataResp{}, nil }