interface.go 921 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package crontab
  2. import (
  3. "kpt-pasture/config"
  4. "kpt-pasture/service/asynqsvc"
  5. "kpt-pasture/service/redis"
  6. "kpt-pasture/store/kptstore"
  7. "gitee.com/xuyiping_admin/pkg/di"
  8. "go.uber.org/dig"
  9. )
  10. var Module = di.Options(di.Provide(NewCrontab))
  11. type Entry struct {
  12. dig.In
  13. Cfg *config.AppConfig
  14. DB *kptstore.DB
  15. AsynqClient asynqsvc.Client
  16. Redis *redis.CacheStoreRedisEntry
  17. }
  18. func NewCrontab(entry Entry) Crontab {
  19. return &entry
  20. }
  21. type Crontab interface {
  22. UpdateCowInfo() error
  23. Indicators() error
  24. GenerateAsynqWorkOrder() error
  25. ImmunizationPlan() error
  26. SameTimePlan() error
  27. UpdateSameTime() error
  28. SystemBasicCrontab() error
  29. DeleteOldOriginal() error
  30. // UpdateCowEstrus 脖环数据
  31. UpdateCowEstrus() error // 获取牛只发情数据 2小时执行一下
  32. NeckRingOriginalMergeData() error // 合并脖环数据
  33. NeckRingCalculate() error // 更新脖环数据
  34. }