Explorar o código

定时清理报告保存日志

hsun hai 1 ano
pai
achega
b74f8350bc
Modificáronse 3 ficheiros con 30 adicións e 0 borrados
  1. 8 0
      models/report.go
  2. 18 0
      services/report.go
  3. 4 0
      services/task.go

+ 8 - 0
models/report.go

@@ -255,3 +255,11 @@ func ModifyReportMsgIsSend(reportId int) (err error) {
 	_, err = o.Raw(sql, reportId).Exec()
 	return
 }
+
+// ClearReportSaveLog 清理报告保存日志
+func ClearReportSaveLog(date string) (err error) {
+	o := orm.NewOrmUsingDB("rddp")
+	sql := `DELETE FROM report_save_log WHERE create_time <= ?`
+	_, err = o.Raw(sql, date).Exec()
+	return
+}

+ 18 - 0
services/report.go

@@ -369,3 +369,21 @@ func CheckTwoWeekOrMonthReport(classifyId int, classifyName string) (ok bool) {
 	}
 	return
 }
+
+// ClearReportSaveLog 每天清理两周前的报告保存日志
+func ClearReportSaveLog(cont context.Context) (err error) {
+	defer func() {
+		if err != nil {
+			tips := fmt.Sprintf("报告日志记录, SaveReportLogs error: %s", err.Error())
+			fmt.Println(tips)
+			go alarm_msg.SendAlarmMsg(tips, 2)
+		}
+	}()
+
+	twoWeek := time.Now().Local().AddDate(0, 0, -14).Format(utils.FormatDateTime)
+	e := models.ClearReportSaveLog(twoWeek)
+	if e != nil {
+		err = fmt.Errorf("ClearReportSaveLog: %s", e.Error())
+	}
+	return
+}

+ 4 - 0
services/task.go

@@ -74,6 +74,10 @@ func releaseTask() {
 	// 定时发布英文研报
 	publishEnglishReport := task.NewTask("publishEnglishReport", "0 */1 * * * *", PublishEnglishReport)
 	task.AddTask("定时发布英文研报", publishEnglishReport)
+
+	// 每天清理两周前的报告保存日志
+	clearReportSaveLog := task.NewTask("clearReportSaveLog", "0 15 23 * * *", ClearReportSaveLog)
+	task.AddTask("定时清理报告保存日志", clearReportSaveLog)
 }
 
 func RefreshData(cont context.Context) (err error) {