package holder import ( "context" "github.com/robfig/cron/v3" "github.com/zeromicro/go-zero/core/logx" "nova_task/internal/logic/nft" "nova_task/internal/svc" ) type Cron struct { ctx context.Context svcCtx *svc.ServiceContext } func NewCron(ctx context.Context, svcCtx *svc.ServiceContext) cron.Job { pg := &Cron{ ctx: ctx, svcCtx: svcCtx, } if svcCtx.Config.NftTaskCron.HolderCheckRunOnStart { pg.Run() } return pg } func (c *Cron) Spec() string { return c.svcCtx.Config.NftTaskCron.HolderSpec } func (c *Cron) Run() { logx.Debugw("run Cron cron task") lg := nft.NewHolderUpdateLogic(c.ctx, c.svcCtx) lg.HolderUpdate() }