|
@@ -1,11 +1,18 @@
|
|
package com.qmth.teachcloud.task.job.service.impl;
|
|
package com.qmth.teachcloud.task.job.service.impl;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
import com.qmth.boot.redis.uid.RedisMachineService;
|
|
import com.qmth.boot.redis.uid.RedisMachineService;
|
|
|
|
+import com.qmth.distributed.print.business.entity.ExamPrintPlan;
|
|
|
|
+import com.qmth.distributed.print.business.enums.PrintPlanStatusEnum;
|
|
import com.qmth.distributed.print.business.service.BasicMessageService;
|
|
import com.qmth.distributed.print.business.service.BasicMessageService;
|
|
|
|
+import com.qmth.distributed.print.business.service.ExamPrintPlanService;
|
|
import com.qmth.distributed.print.business.service.ExamTaskService;
|
|
import com.qmth.distributed.print.business.service.ExamTaskService;
|
|
import com.qmth.distributed.print.business.service.PrintCommonService;
|
|
import com.qmth.distributed.print.business.service.PrintCommonService;
|
|
import com.qmth.teachcloud.common.bean.dto.MqDto;
|
|
import com.qmth.teachcloud.common.bean.dto.MqDto;
|
|
|
|
+import com.qmth.teachcloud.common.bean.dto.SchoolDto;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
|
|
+import com.qmth.teachcloud.common.service.BasicSchoolService;
|
|
import com.qmth.teachcloud.common.util.RedisUtil;
|
|
import com.qmth.teachcloud.common.util.RedisUtil;
|
|
import com.qmth.teachcloud.task.job.service.JobService;
|
|
import com.qmth.teachcloud.task.job.service.JobService;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
@@ -14,9 +21,11 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
|
+import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
import java.util.concurrent.TimeUnit;
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* @Description: job service impl
|
|
* @Description: job service impl
|
|
@@ -38,6 +47,12 @@ public class JobServiceImpl implements JobService {
|
|
@Resource
|
|
@Resource
|
|
BasicMessageService basicMessageService;
|
|
BasicMessageService basicMessageService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ BasicSchoolService basicSchoolService;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ ExamPrintPlanService examPrintPlanService;
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
RedisUtil redisUtil;
|
|
RedisUtil redisUtil;
|
|
|
|
|
|
@@ -74,6 +89,25 @@ public class JobServiceImpl implements JobService {
|
|
redisUtil.set(SystemConstant.TASK_MACHINE_ID + redisMachineService.getMachineId(), redisMachineService.getMachineId(), 30, TimeUnit.SECONDS);
|
|
redisUtil.set(SystemConstant.TASK_MACHINE_ID + redisMachineService.getMachineId(), redisMachineService.getMachineId(), 30, TimeUnit.SECONDS);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public void updatePrintPlanStatus() {
|
|
|
|
+ List<SchoolDto> schoolDtos = basicSchoolService.listSchool();
|
|
|
|
+ for (SchoolDto schoolDto : schoolDtos) {
|
|
|
|
+ QueryWrapper<ExamPrintPlan> queryWrapper = new QueryWrapper<>();
|
|
|
|
+ queryWrapper.lambda().eq(ExamPrintPlan::getSchoolId, schoolDto.getId())
|
|
|
|
+ .ne(ExamPrintPlan::getStatus, PrintPlanStatusEnum.END)
|
|
|
|
+ .le(ExamPrintPlan::getExamEndTime, System.currentTimeMillis());
|
|
|
|
+ List<ExamPrintPlan> examPrintPlanList = examPrintPlanService.list(queryWrapper);
|
|
|
|
+
|
|
|
|
+ List<Long> ids = examPrintPlanList.stream().map(ExamPrintPlan::getId).collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ UpdateWrapper<ExamPrintPlan> updateWrapper = new UpdateWrapper<>();
|
|
|
|
+ updateWrapper.lambda().set(ExamPrintPlan::getStatus, PrintPlanStatusEnum.END)
|
|
|
|
+ .in(ExamPrintPlan::getId, ids);
|
|
|
|
+ examPrintPlanService.update(updateWrapper);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 组装job
|
|
* 组装job
|
|
*
|
|
*
|