45 lines
1.1 KiB
Go
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)
|
|
}
|
|
}
|
|
}
|
|
}
|