work_order_user.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package model
  2. import (
  3. "kpt-pasture/util"
  4. "strconv"
  5. "strings"
  6. pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
  7. )
  8. type WorkOrderUser struct {
  9. Id int64 `json:"id"`
  10. WorkOrderMasterId int64 `json:"WorkOrderMasterId"`
  11. WorkOrderSubId int64 `json:"workOrderSubId"`
  12. UserId int64 `json:"userId"`
  13. StartTime int64 `json:"startTime"`
  14. ExecTime int64 `json:"execTime"`
  15. EndTime int64 `json:"endTime"`
  16. Status pasturePb.WorkOrderStatus_Kind `json:"status"`
  17. IsShow pasturePb.IsShow_Kind `json:"isShow"`
  18. Remarks string `json:"remarks"`
  19. CreatedAt int64 `json:"createdAt"`
  20. UpdatedAt int64 `json:"updatedAt"`
  21. }
  22. func (w *WorkOrderUser) TableName() string {
  23. return "work_order_user"
  24. }
  25. func NewWorkOrderUser(master *WorkOrderMaster, sub *WorkOrderSub) []*WorkOrderUser {
  26. res := make([]*WorkOrderUser, 0)
  27. userList := strings.Split(master.ExecPersons, ",")
  28. if len(userList) <= 0 {
  29. return res
  30. }
  31. startTime, _ := util.ConvertParseLocalUnix(master.ExecTime)
  32. for _, userIdStr := range userList {
  33. userId, _ := strconv.ParseInt(userIdStr, 10, 64)
  34. res = append(res, &WorkOrderUser{
  35. WorkOrderMasterId: master.Id,
  36. WorkOrderSubId: sub.Id,
  37. UserId: userId,
  38. StartTime: startTime,
  39. Status: pasturePb.WorkOrderStatus_Distribute,
  40. IsShow: pasturePb.IsShow_Ok,
  41. Remarks: "",
  42. })
  43. }
  44. return res
  45. }