data_warning_items.go 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  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. UserId int64 `json:"userId"`
  8. WarningId int64 `json:"warningId"`
  9. GroupId int32 `json:"groupId"`
  10. FieldName string `json:"fieldName"`
  11. FieldDesc string `json:"fieldDesc"`
  12. Operator string `json:"operator"`
  13. Value string `json:"value"`
  14. IsShow pasturePb.IsShow_Kind `json:"isShow"`
  15. CreatedAt int64 `json:"createdAt"`
  16. UpdatedAt int64 `json:"updatedAt"`
  17. }
  18. func (d *DataWarningItems) TableName() string {
  19. return "data_warning_items"
  20. }
  21. func NewDataWarningItems(userId int64, dataWarning *DataWarning, req *pasturePb.WarningDataSet) *DataWarningItems {
  22. return &DataWarningItems{
  23. UserId: userId,
  24. WarningId: dataWarning.Id,
  25. GroupId: req.GroupId,
  26. FieldName: req.FieldName,
  27. FieldDesc: req.FieldDesc,
  28. Operator: req.Operator,
  29. Value: req.Value,
  30. IsShow: req.IsShow,
  31. }
  32. }
  33. type DataWarningItemsSlice []*DataWarningItems
  34. func (d DataWarningItemsSlice) ToPB(dataWarning []*DataWarning) []*pasturePb.WarningDataSet {
  35. res := make([]*pasturePb.WarningDataSet, len(d))
  36. for i, v := range d {
  37. name, kind := "", ""
  38. for _, w := range dataWarning {
  39. if w.Id == v.WarningId {
  40. name = w.Name
  41. kind = w.Kind
  42. }
  43. }
  44. if name == "" || v.Id <= 0 {
  45. continue
  46. }
  47. res[i] = &pasturePb.WarningDataSet{
  48. Id: int32(v.Id),
  49. WarningId: int32(v.WarningId),
  50. GroupId: v.GroupId,
  51. Name: name,
  52. Kind: kind,
  53. FieldDesc: v.FieldDesc,
  54. FieldName: v.FieldName,
  55. Operator: v.Operator,
  56. Value: v.Value,
  57. IsShow: v.IsShow,
  58. }
  59. }
  60. return res
  61. }