package crontab import ( "kpt-pasture/config" "kpt-pasture/service/asynqsvc" "kpt-pasture/service/redis" "kpt-pasture/store/kptstore" "gitee.com/xuyiping_admin/pkg/di" "go.uber.org/dig" ) var Module = di.Options(di.Provide(NewCrontab)) type Entry struct { dig.In Cfg *config.AppConfig DB *kptstore.DB AsynqClient asynqsvc.Client Redis *redis.CacheStoreRedisEntry } func NewCrontab(entry Entry) Crontab { return &entry } type Crontab interface { UpdateCowInfo() error Indicators() error GenerateAsynqWorkOrder() error ImmunizationPlan() error SameTimePlan() error UpdateSameTime() error SystemBasicCrontab() error DeleteOldOriginal() error // UpdateCowEstrus 脖环数据 UpdateCowEstrus() error // 获取牛只发情数据 2小时执行一下 NeckRingOriginalMergeData() error // 合并脖环数据 NeckRingCalculate() error // 更新脖环数据 }