event_transfer_group.go 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. package model
  2. import (
  3. "kpt-pasture/util"
  4. pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
  5. )
  6. type EventTransferGroup struct {
  7. Id int64 `json:"id"`
  8. PastureId int64 `json:"pastureId"`
  9. CowId int64 `json:"cowId"`
  10. PenInId int32 `json:"penInId"`
  11. PenOutId int32 `json:"penOutId"`
  12. DayAge int32 `json:"dayAge"`
  13. Lact int32 `json:"lact"`
  14. TransferDate string `json:"transferDate"`
  15. TransferReasonId int64 `json:"transferReasonId"`
  16. TransferReasonName string `json:"TransferReasonName"`
  17. Remarks string `json:"remarks"`
  18. MessageId int64 `json:"messageId"`
  19. MessageName string `json:"messageName"`
  20. OperationId int64 `json:"operationId"`
  21. OperationName string `json:"operationName"`
  22. CreatedAt int64 `json:"createdAt"`
  23. UpdatedAt int64 `json:"updatedAt"`
  24. }
  25. func (e *EventTransferGroup) TableName() string {
  26. return "event_transfer_group"
  27. }
  28. func NewEventTransferGroup(pastureId int64, cow *Cow, req *pasturePb.TransferGroupEventData, transferPenMap map[int32]string, currentUser *SystemUser, operationUser *SystemUser) *EventTransferGroup {
  29. eventAt := util.DateTimeParseLocalUnix(req.TransferDate)
  30. return &EventTransferGroup{
  31. PastureId: pastureId,
  32. CowId: cow.Id,
  33. PenInId: req.TransferInPenId,
  34. PenOutId: cow.PenId,
  35. Lact: cow.Lact,
  36. DayAge: cow.GetEventDayAge(eventAt),
  37. TransferDate: req.TransferDate,
  38. TransferReasonId: int64(req.TransferReasonId),
  39. TransferReasonName: transferPenMap[req.TransferReasonId],
  40. Remarks: req.Remarks,
  41. MessageId: currentUser.Id,
  42. MessageName: currentUser.Name,
  43. OperationId: operationUser.Id,
  44. OperationName: operationUser.Name,
  45. }
  46. }