|
@@ -12,12 +12,10 @@ import com.google.gson.Gson;
|
|
import com.qmth.distributed.print.business.bean.dto.*;
|
|
import com.qmth.distributed.print.business.bean.dto.*;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.entity.*;
|
|
import com.qmth.distributed.print.business.entity.*;
|
|
-import com.qmth.distributed.print.business.enums.DrawRuleEnum;
|
|
|
|
-import com.qmth.distributed.print.business.enums.ExamCardStatusEnum;
|
|
|
|
-import com.qmth.distributed.print.business.enums.ExamStatusEnum;
|
|
|
|
-import com.qmth.distributed.print.business.enums.ReviewStatusEnum;
|
|
|
|
|
|
+import com.qmth.distributed.print.business.enums.*;
|
|
import com.qmth.distributed.print.business.mapper.ExamTaskMapper;
|
|
import com.qmth.distributed.print.business.mapper.ExamTaskMapper;
|
|
import com.qmth.distributed.print.business.service.*;
|
|
import com.qmth.distributed.print.business.service.*;
|
|
|
|
+import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
|
|
import com.qmth.distributed.print.business.util.ConvertUtil;
|
|
import com.qmth.distributed.print.business.util.ConvertUtil;
|
|
import com.qmth.distributed.print.business.util.ExcelUtil;
|
|
import com.qmth.distributed.print.business.util.ExcelUtil;
|
|
import com.qmth.distributed.print.business.util.ServletUtil;
|
|
import com.qmth.distributed.print.business.util.ServletUtil;
|
|
@@ -25,6 +23,7 @@ import com.qmth.distributed.print.business.util.excel.ExcelError;
|
|
import com.qmth.distributed.print.common.contant.SystemConstant;
|
|
import com.qmth.distributed.print.common.contant.SystemConstant;
|
|
import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
|
|
import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
+import org.apache.velocity.runtime.directive.contrib.For;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -88,6 +87,15 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
@Autowired
|
|
@Autowired
|
|
private ConvertUtil convertUtil;
|
|
private ConvertUtil convertUtil;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private ExamDetailService examDetailService;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ TBTaskService tbTaskService;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ AsyncCreatePdfTempleteService asyncCreatePdfTempleteService;
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public List<ExamTask> listByCourseCode(Long schoolId, String code) {
|
|
public List<ExamTask> listByCourseCode(Long schoolId, String code) {
|
|
QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
@@ -754,4 +762,41 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void checkDataByExamination(Long examDetailId,SysUser user) throws IOException {
|
|
|
|
+ boolean judge = true;
|
|
|
|
+ ExamDetail examDetail = examDetailService.getById(examDetailId);
|
|
|
|
+ if (Objects.isNull(examDetail)){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("考务-考场不存在");
|
|
|
|
+ }
|
|
|
|
+ List<ExamDetailCourse> examDetailCourseList = examDetailCourseService.list(new QueryWrapper<ExamDetailCourse>().lambda()
|
|
|
|
+ .eq(ExamDetailCourse::getExamDetailId,examDetailId)
|
|
|
|
+ .eq(ExamDetailCourse::getSchoolId,examDetail.getSchoolId()));
|
|
|
|
+ if (examDetailCourseList.size() < 1){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("考务-课程不存在");
|
|
|
|
+ }
|
|
|
|
+ for (ExamDetailCourse examDetailCourse : examDetailCourseList) {
|
|
|
|
+ String courseCode = examDetailCourse.getCourseCode();
|
|
|
|
+ String paperNumber = examDetailCourse.getPaperNumber();
|
|
|
|
+ Long schoolId = examDetailCourse.getSchoolId();
|
|
|
|
+ ExamTask examTask = this.getOne(new QueryWrapper<ExamTask>().lambda()
|
|
|
|
+ .eq(ExamTask::getSchoolId,schoolId)
|
|
|
|
+ .eq(ExamTask::getCourseCode,courseCode)
|
|
|
|
+ .eq(ExamTask::getPaperNumber,paperNumber));
|
|
|
|
+ if (examTask == null){
|
|
|
|
+ judge = false;
|
|
|
|
+ }else if (!ExamStatusEnum.FINISH.equals(examTask.getStatus())){
|
|
|
|
+ judge = false;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (judge){
|
|
|
|
+ Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.CREATE_PDF, examDetail.getPrintPlanId(), user);
|
|
|
|
+ if (Objects.nonNull(examDetail.getId())) {
|
|
|
|
+ map.computeIfAbsent("examDetailId", v -> examDetail.getId());
|
|
|
|
+ }
|
|
|
|
+ map.computeIfAbsent("schoolId", v -> examDetail.getSchoolId());
|
|
|
|
+ asyncCreatePdfTempleteService.createPdf(map, null);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|