|
@@ -1,33 +1,22 @@
|
|
|
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.distributed.print.business.entity.ExamDetail;
|
|
|
-import com.qmth.distributed.print.business.entity.ExamPrintPlan;
|
|
|
-import com.qmth.distributed.print.business.enums.ExamDetailStatusEnum;
|
|
|
-import com.qmth.distributed.print.business.enums.PrintPlanStatusEnum;
|
|
|
-import com.qmth.distributed.print.business.service.*;
|
|
|
+import com.qmth.distributed.print.business.service.BasicMessageService;
|
|
|
+import com.qmth.distributed.print.business.service.PrintCommonService;
|
|
|
+import com.qmth.distributed.print.business.service.SmsSendService;
|
|
|
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.service.BasicSchoolService;
|
|
|
import com.qmth.teachcloud.common.util.RedisUtil;
|
|
|
import com.qmth.teachcloud.task.job.service.JobService;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.io.IOException;
|
|
|
-import java.util.Collection;
|
|
|
-import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Objects;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Description: job service impl
|
|
@@ -46,21 +35,9 @@ public class JobServiceImpl implements JobService {
|
|
|
@Resource
|
|
|
SmsSendService smsSendService;
|
|
|
|
|
|
- @Resource
|
|
|
- ExamTaskService examTaskService;
|
|
|
-
|
|
|
@Resource
|
|
|
BasicMessageService basicMessageService;
|
|
|
|
|
|
- @Resource
|
|
|
- BasicSchoolService basicSchoolService;
|
|
|
-
|
|
|
- @Resource
|
|
|
- ExamPrintPlanService examPrintPlanService;
|
|
|
-
|
|
|
- @Resource
|
|
|
- ExamDetailService examDetailService;
|
|
|
-
|
|
|
@Resource
|
|
|
RedisUtil redisUtil;
|
|
|
|
|
@@ -97,42 +74,6 @@ public class JobServiceImpl implements JobService {
|
|
|
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);
|
|
|
-
|
|
|
- // 更新计划状态为结束
|
|
|
- if (!CollectionUtils.isEmpty(examPrintPlanList)) {
|
|
|
- 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);
|
|
|
-
|
|
|
- // 更新考场状态,未结束改为已过期,已结束保持原状态
|
|
|
- QueryWrapper<ExamDetail> examDetailQueryWrapper = new QueryWrapper<>();
|
|
|
- examDetailQueryWrapper.lambda().in(ExamDetail::getPrintPlanId, ids)
|
|
|
- .ne(ExamDetail::getStatus, ExamDetailStatusEnum.FINISH);
|
|
|
- List<ExamDetail> examDetails = examDetailService.list(examDetailQueryWrapper);
|
|
|
- if (!CollectionUtils.isEmpty(examDetails)) {
|
|
|
- List<Long> examDetailIds = examDetails.stream().map(ExamDetail::getId).collect(Collectors.toList());
|
|
|
-
|
|
|
- UpdateWrapper<ExamDetail> examDetailUpdateWrapper = new UpdateWrapper<>();
|
|
|
- examDetailUpdateWrapper.lambda().set(ExamDetail::getStatus, ExamDetailStatusEnum.EXPIRED)
|
|
|
- .in(ExamDetail::getId, examDetailIds);
|
|
|
- examDetailService.update(examDetailUpdateWrapper);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 组装job
|
|
|
*
|