multiAddItemHistoryDataLogic.go 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package logic
  2. import (
  3. "GtDataStore/app/cmd/organization/internal/svc"
  4. "GtDataStore/app/cmd/organization/pb"
  5. "GtDataStore/app/model"
  6. "GtDataStore/common/xerr"
  7. "context"
  8. "github.com/pkg/errors"
  9. "time"
  10. "github.com/zeromicro/go-zero/core/logx"
  11. )
  12. type MultiAddItemHistoryDataLogic struct {
  13. ctx context.Context
  14. svcCtx *svc.ServiceContext
  15. logx.Logger
  16. }
  17. func NewMultiAddItemHistoryDataLogic(ctx context.Context, svcCtx *svc.ServiceContext) *MultiAddItemHistoryDataLogic {
  18. return &MultiAddItemHistoryDataLogic{
  19. ctx: ctx,
  20. svcCtx: svcCtx,
  21. Logger: logx.WithContext(ctx),
  22. }
  23. }
  24. func (l *MultiAddItemHistoryDataLogic) MultiAddItemHistoryData(in *pb.MultiAddItemHistoryDataReq) (*pb.MultiAddItemHistoryDataResp, error) {
  25. ts := make([]model.DcItemHistoryData, len(in.List))
  26. for i, data := range in.List {
  27. layout := "2006-01-02 15:04:05"
  28. t, _ := time.Parse(layout, data.CTime)
  29. ts[i] = model.DcItemHistoryData{
  30. ProjectId: data.ProjectId,
  31. ItemName: data.ItemName,
  32. Val: data.Val,
  33. CTime: time.Now(),
  34. HTime: t,
  35. }
  36. }
  37. _, err := l.svcCtx.ItemHistoryData.MultiInsert(l.ctx, ts)
  38. if err != nil {
  39. return nil, errors.Wrapf(xerr.NewErrCode(xerr.DB_ERROR), "item history data table multi Insert err:%v", err)
  40. }
  41. return &pb.MultiAddItemHistoryDataResp{}, nil
  42. }