getWorkingPumpByCodeLogic.go 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package logic
  2. import (
  3. "GtDataStore/app/cmd/organization/internal/svc"
  4. "GtDataStore/app/cmd/organization/pb"
  5. "GtDataStore/app/model"
  6. "context"
  7. "github.com/zeromicro/go-zero/core/logx"
  8. )
  9. type GetWorkingPumpByCodeLogic struct {
  10. ctx context.Context
  11. svcCtx *svc.ServiceContext
  12. logx.Logger
  13. }
  14. func NewGetWorkingPumpByCodeLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetWorkingPumpByCodeLogic {
  15. return &GetWorkingPumpByCodeLogic{
  16. ctx: ctx,
  17. svcCtx: svcCtx,
  18. Logger: logx.WithContext(ctx),
  19. }
  20. }
  21. func (l *GetWorkingPumpByCodeLogic) GetWorkingPumpByCode(in *pb.DcWorkingReq) (*pb.GetWorkingPumpByCodeResp, error) {
  22. offset := (in.Page - 1) * in.PageSize
  23. res, err := l.svcCtx.WorkingPump.Search(l.ctx, in.ProjectId, in.DeviceCode, in.Stime, in.Etime, offset, in.PageSize, in.Order)
  24. if err != nil && err != model.ErrNotFound {
  25. return nil, err
  26. }
  27. list := make([]*pb.WorkingPump, len(res))
  28. for i, one := range res {
  29. list[i] = &pb.WorkingPump{
  30. Id: one.Id,
  31. ProjectId: one.ProjectId,
  32. DeviceCode: one.DeviceCode,
  33. FeedPressure: one.FeedPressure,
  34. OutPressure: one.OutPressure,
  35. Duration: one.Duration,
  36. Current: one.Current,
  37. Frequency: one.Frequency,
  38. Lift: one.Lift,
  39. Efficiency: one.Efficiency,
  40. RunStatus: one.RunStatus,
  41. FaultStatus: one.FaultStatus,
  42. CTime: one.CTime.Format("2006-01-02 15:04:05"),
  43. }
  44. }
  45. return &pb.GetWorkingPumpByCodeResp{
  46. List: list,
  47. }, nil
  48. }