data_warning_items.go 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package model
  2. import (
  3. pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
  4. )
  5. type DataWarningItems struct {
  6. Id int64 `json:"id"`
  7. PastureId int64 `json:"pastureId"`
  8. UserId int64 `json:"userId"`
  9. WarningId int64 `json:"warningId"`
  10. GroupId int32 `json:"groupId"`
  11. FieldName string `json:"fieldName"`
  12. FieldDesc string `json:"fieldDesc"`
  13. Operator string `json:"operator"`
  14. Value string `json:"value"`
  15. IsShow pasturePb.IsShow_Kind `json:"isShow"`
  16. CreatedAt int64 `json:"createdAt"`
  17. UpdatedAt int64 `json:"updatedAt"`
  18. }
  19. func (d *DataWarningItems) TableName() string {
  20. return "data_warning_items"
  21. }
  22. func NewDataWarningItems(pastureId, userId int64, dataWarning *DataWarning, req *pasturePb.WarningDataSet) *DataWarningItems {
  23. return &DataWarningItems{
  24. PastureId: pastureId,
  25. UserId: userId,
  26. WarningId: dataWarning.Id,
  27. GroupId: req.GroupId,
  28. FieldName: req.FieldName,
  29. FieldDesc: req.FieldDesc,
  30. Operator: req.Operator,
  31. Value: req.Value,
  32. IsShow: req.IsShow,
  33. }
  34. }
  35. type DataWarningItemsSlice []*DataWarningItems
  36. func (d DataWarningItemsSlice) ToPB(dataWarning []*DataWarning) []*pasturePb.WarningDataSet {
  37. res := make([]*pasturePb.WarningDataSet, len(d))
  38. for i, v := range d {
  39. name := ""
  40. kind := pasturePb.DataWarningType_Invalid
  41. for _, w := range dataWarning {
  42. if w.Id == v.WarningId {
  43. name = w.Name
  44. kind = w.Kind
  45. }
  46. }
  47. if name == "" || v.Id <= 0 {
  48. continue
  49. }
  50. res[i] = &pasturePb.WarningDataSet{
  51. Id: int32(v.Id),
  52. WarningId: int32(v.WarningId),
  53. GroupId: v.GroupId,
  54. Name: name,
  55. Kind: kind,
  56. FieldDesc: v.FieldDesc,
  57. FieldName: v.FieldName,
  58. Operator: v.Operator,
  59. Value: v.Value,
  60. IsShow: v.IsShow,
  61. }
  62. }
  63. return res
  64. }