diff --git a/web/src/main/java/com/ibeetl/jlw/job/TeacherOpenCourseScoreDashboardJob.java b/web/src/main/java/com/ibeetl/jlw/job/TeacherOpenCourseScoreDashboardJob.java new file mode 100644 index 00000000..913c8f79 --- /dev/null +++ b/web/src/main/java/com/ibeetl/jlw/job/TeacherOpenCourseScoreDashboardJob.java @@ -0,0 +1,45 @@ +package com.ibeetl.jlw.job; + +import cn.jlw.util.DateUtil; +import com.ibeetl.jlw.entity.Quartz; +import com.ibeetl.jlw.entity.TeacherOpenCourseScoreDashboard; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import com.ibeetl.jlw.service.*; +import lombok.extern.slf4j.Slf4j; +import com.ibeetl.jlw.dao.TeacherOpenCourseDao; +import com.ibeetl.jlw.entity.TeacherOpenCourse; + +import java.util.Date; +import java.util.List; + +/** + * 定时任务更新成绩 + */ +@Slf4j +@Component +public class TeacherOpenCourseScoreDashboardJob implements Job { + + @Autowired private TeacherOpenCourseDao teacherOpenCourseDao; + + @Autowired private TeacherOpenCourseScoreDashboardService dashboardService; + + @Override + public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { + List courseList = teacherOpenCourseDao.createLambdaQuery().andEq(TeacherOpenCourse::getTeacherOpenCourseStatus, 1) + .andBetween(TeacherOpenCourse::getEndTime, DateUtil.addDays(new Date(), -60), DateUtil.addDays(new Date(), 300)).select(); + for (TeacherOpenCourse teacherOpenCourse : courseList) { + try{ + dashboardService.updateGrades(teacherOpenCourse.getTeacherOpenCourseId()); + }catch (Exception ex) { + log.error(ex.getMessage()); + } + + } + } + + +} \ No newline at end of file diff --git a/web/src/main/java/com/ibeetl/jlw/web/ApplicationRunnerController.java b/web/src/main/java/com/ibeetl/jlw/web/ApplicationRunnerController.java index 57588d80..188d3296 100644 --- a/web/src/main/java/com/ibeetl/jlw/web/ApplicationRunnerController.java +++ b/web/src/main/java/com/ibeetl/jlw/web/ApplicationRunnerController.java @@ -143,6 +143,17 @@ public class ApplicationRunnerController implements ApplicationRunner { quartzService.save(quartz, null); } + { + Quartz quartz = new Quartz(); + quartz.setJobName("启动TeacherOpenCourseScoreDashboardJob"); + quartz.setJobGroup("定时任务更新成绩"); + quartz.setJobClassName("com.ibeetl.jlw.job.TeacherOpenCourseScoreDashboardJob"); + quartz.setDescription("计划任务启动TeacherOpenCourseScoreDashboardJob"); + // 每天二十三点 执行任务 + quartz.setCronExpression("0 0 23 * * ?"); + quartzService.save(quartz, null); + } + System.out.println("启动加载用时:" + (System.currentTimeMillis() - l)); } }