vars.go 931 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package handler
  2. import (
  3. "GtDataStore/app/cmd/events/internal/logic/job"
  4. "context"
  5. "time"
  6. )
  7. const (
  8. EVENT_NOTIFY = "EVENT_NOTIFY"
  9. EVENT_SINGLE_ITEM = "SINGLE_ITEM_EVENT" // 单点位值事件
  10. EVENT_MULTI_ITEM = "MULTI_ITEM_EVENT" // 多点位值事件
  11. )
  12. type (
  13. // 事件信息
  14. eventInfo struct {
  15. ProjectId int64
  16. DeviceCode string
  17. Item string
  18. EventName string
  19. OldValue string
  20. NewValue string
  21. Time time.Time
  22. }
  23. )
  24. var (
  25. eventChan chan eventInfo
  26. EventIntervalTable = map[string]time.Duration{
  27. EVENT_SINGLE_ITEM: 60 * time.Second,
  28. EVENT_MULTI_ITEM: 60 * time.Second,
  29. EVENT_NOTIFY: 50 * time.Second,
  30. }
  31. EventHandlerTable = map[string]func(ctx context.Context, task *job.Task, technologyName string) error{
  32. EVENT_SINGLE_ITEM: EventSingle,
  33. EVENT_MULTI_ITEM: EventMulti,
  34. EVENT_NOTIFY: handlerEvent,
  35. }
  36. )
  37. func init() {
  38. eventChan = make(chan eventInfo, 50)
  39. }