Files
lckt-server/initialize/timer.go

63 lines
1.8 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package initialize
import (
"fmt"
"git.echol.cn/loser/lckt/task"
"github.com/robfig/cron/v3"
"git.echol.cn/loser/lckt/global"
)
func Timer() {
go func() {
var option []cron.Option
option = append(option, cron.WithSeconds())
// 清理DB定时任务
_, err := global.GVA_Timer.AddTaskByFunc("ClearDB", "@daily", func() {
err := task.ClearTable(global.GVA_DB) // 定时任务方法定在task文件包中
if err != nil {
fmt.Println("timer error:", err)
}
}, "定时清理数据库【日志,黑名单】内容", option...)
if err != nil {
fmt.Println("add timer error:", err)
}
// 定时清理过期VIP用户
_, err = global.GVA_Timer.AddTaskByFunc("ClearVip", "@daily", func() {
err2 := task.CheckVip(global.GVA_DB)
if err2 != nil {
fmt.Println("清理过期VIP定时任务失败:", err2)
}
}, "定时清理过期VIP日志内容", option...)
if err != nil {
fmt.Println("add timer error:", err)
}
// 定时发布文章
fmt.Println("注册定时任务: PublishArticles")
_, err = global.GVA_Timer.AddTaskByFunc("PublishArticles", "0 0/1 * * * ?", func() {
fmt.Println("执行定时任务: PublishArticles")
err3 := task.PublishArticles(global.GVA_DB)
if err3 != nil {
fmt.Println("定时发布文章失败:", err3)
}
}, "定时发布文章任务,每分钟检查一次", option...)
if err != nil {
fmt.Println("add timer error:", err)
}
// 清理超时订单
_, err = global.GVA_Timer.AddTaskByFunc("ClearExpiredOrders", "0 0/5 * * * ?", func() {
err4 := task.ClearExpiredOrders(global.GVA_DB)
if err4 != nil {
fmt.Println("清理超时订单失败:", err4)
}
}, "定时清理超时订单任务每5分钟检查一次", option...)
if err != nil {
fmt.Println("add timer error:", err)
}
}()
}