38 lines
713 B
Go
38 lines
713 B
Go
package cron
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"micro-bundle/internal/logic"
|
|
|
|
"github.com/robfig/cron/v3"
|
|
)
|
|
|
|
func InitCronJob() {
|
|
c := cron.New(cron.WithSeconds())
|
|
|
|
spec := "0 0 0 1 * *"
|
|
|
|
_, err := c.AddFunc(spec, func() {
|
|
log.Printf("执行余量每月数据更新")
|
|
logic.UpdateBundleBalance()
|
|
})
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
// 避免冲突,任务余额每月更新定时任务 - 每月1号1点执行
|
|
taskBalanceSpec := "0 0 1 1 * *"
|
|
_, err = c.AddFunc(taskBalanceSpec, func() {
|
|
log.Printf("执行任务余额每月数据更新")
|
|
logic.UpdateTaskBalanceEveryMonLogic()
|
|
})
|
|
if err != nil {
|
|
fmt.Println("添加任务余额每月数据更新定时任务失败", err)
|
|
panic(err)
|
|
}
|
|
|
|
c.Start()
|
|
|
|
}
|