knowledge-api/api/crontab/questionQaExpire.go
2024-09-27 10:58:05 +08:00

45 lines
1.1 KiB
Go

package crontab
import (
"knowledge/api/dao"
"knowledge/global"
"knowledge/utils"
"time"
)
// HandleQuestionQaExpire 题目题库过期处理
func HandleQuestionQaExpire() {
// 获取过期题目
questionQaDao := dao.QuestionQaDao{}
// 验证数量
maps := make(map[string]interface{})
maps["qa_status"] = 1
// 当前时间
now := time.Now()
endTime := now.Format("2006-01-02 15:04")
// 今天开始时间
year, month, day := now.Date()
location := now.Location()
startTime := time.Date(year, month, day, 00, 00, 00, 0, location).Format("2006-01-02 15:04")
questionQas, err := questionQaDao.GetQuestionQaListByQaExpireTime(maps, startTime, endTime)
if err == nil && len(questionQas) > 0 {
for _, qa := range questionQas {
// 检测状态
if qa.QaStatus == 2 {
continue
}
// 修改为失效
questionQaData := make(map[string]interface{})
questionQaData["qa_status"] = 2
err := questionQaDao.EditQuestionQaById(global.Db, qa.QaId, questionQaData)
if err != nil {
utils.LogJsonErr("处理题目题库过期失败:", err)
}
}
}
}