|
@@ -14,10 +14,7 @@ import com.qmth.distributed.print.business.bean.dto.*;
|
|
import com.qmth.distributed.print.business.bean.dto.approvalForm.*;
|
|
import com.qmth.distributed.print.business.bean.dto.approvalForm.*;
|
|
import com.qmth.distributed.print.business.bean.dto.examObject.ExamObjectDto;
|
|
import com.qmth.distributed.print.business.bean.dto.examObject.ExamObjectDto;
|
|
import com.qmth.distributed.print.business.bean.dto.excel.ExamStudentImportDto;
|
|
import com.qmth.distributed.print.business.bean.dto.excel.ExamStudentImportDto;
|
|
-import com.qmth.distributed.print.business.bean.params.ExamDetailList;
|
|
|
|
-import com.qmth.distributed.print.business.bean.params.ExamDetailParams;
|
|
|
|
-import com.qmth.distributed.print.business.bean.params.ExamTaskReApplyParam;
|
|
|
|
-import com.qmth.distributed.print.business.bean.params.ExamTaskStudentObjectParam;
|
|
|
|
|
|
+import com.qmth.distributed.print.business.bean.params.*;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.bean.result.WorkResult;
|
|
import com.qmth.distributed.print.business.bean.result.examTaskStudent.ExamTaskExamStudentImportResult;
|
|
import com.qmth.distributed.print.business.bean.result.examTaskStudent.ExamTaskExamStudentImportResult;
|
|
import com.qmth.distributed.print.business.bean.result.examTaskStudent.ExamTaskStudentObjectResult;
|
|
import com.qmth.distributed.print.business.bean.result.examTaskStudent.ExamTaskStudentObjectResult;
|
|
@@ -2091,6 +2088,82 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
return this.getOne(queryWrapper);
|
|
return this.getOne(queryWrapper);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize) {
|
|
|
|
+ if(semesterId == null){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("请选择学期");
|
|
|
|
+ }
|
|
|
|
+ if(examId == null){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("请选择考试");
|
|
|
|
+ }
|
|
|
|
+ Page<MakeupExamTaskDto> page = new Page<>(pageNumber, pageSize);
|
|
|
|
+ return this.baseMapper.listMakeupExamTask(page, printPlanId, semesterId, examId, collegeId, courseCode, paperNumber, userName);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void saveMakeupTask(MakeupExamTaskTotalParam makeupExamTaskTotalParam) {
|
|
|
|
+ Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
|
+ SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
+
|
|
|
|
+ ExamPrintPlan examPrintPlan = examPrintPlanService.getById(makeupExamTaskTotalParam.getPrintPlanId());
|
|
|
|
+
|
|
|
|
+ for (MakeupExamTaskParam makeupExamTaskParam : makeupExamTaskTotalParam.getList()) {
|
|
|
|
+ ExamDetail examDetail;
|
|
|
|
+ if (makeupExamTaskParam.getExamDetailId() == null) {
|
|
|
|
+ // 课程是否在其它补考计划已创建任务
|
|
|
|
+ int count = examDetailService.countMakeupUsedByExamIdAndPaperNumber(makeupExamTaskParam.getExamId(), makeupExamTaskParam.getPaperNumber());
|
|
|
|
+ if(count > 0){
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("试卷编号["+makeupExamTaskParam.getPaperNumber()+"]已在其它计划中提交");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ examDetail = new ExamDetail();
|
|
|
|
+ examDetail.setId(SystemConstant.getDbUuid());
|
|
|
|
+ examDetail.setPackageCode("1" + redisCounterUtil.getCounter(schoolId, 6, "packageCode"));
|
|
|
|
+ examDetail.setSchoolId(schoolId);
|
|
|
|
+ examDetail.setOrgId(sysUser.getOrgId());
|
|
|
|
+ examDetail.setPrintPlanId(examPrintPlan.getId());
|
|
|
|
+ examDetail.setPrintPlanName(examPrintPlan.getName());
|
|
|
|
+ examDetail.setExamId(makeupExamTaskParam.getExamId());
|
|
|
|
+ examDetail.setStatus(ExamDetailStatusEnum.NEW);
|
|
|
|
+ examDetail.setExamStartTime(DateDisposeUtils.parseDate(DateDisposeUtils.getDate()+" 00:00:00").getTime());
|
|
|
|
+ examDetail.setExamEndTime(DateDisposeUtils.parseDate(DateDisposeUtils.getDate()+" 23:59:00").getTime());
|
|
|
|
+ examDetail.setTotalSubjects(makeupExamTaskParam.getTotalSubjects());
|
|
|
|
+ examDetail.setExamDataSource(ExamDataSourceEnum.EXAM_TASK);
|
|
|
|
+ examDetail.setNormal(true);
|
|
|
|
+ examDetail.setBackupCount(makeupExamTaskParam.getBackupCount());
|
|
|
|
+ examDetail.setCreateId(sysUser.getId());
|
|
|
|
+ examDetail.setCreateTime(System.currentTimeMillis());
|
|
|
|
+ examDetailService.save(examDetail);
|
|
|
|
+
|
|
|
|
+ ExamDetailCourse examDetailCourse = new ExamDetailCourse();
|
|
|
|
+ examDetailCourse.setId(SystemConstant.getDbUuid());
|
|
|
|
+ examDetailCourse.setSchoolId(schoolId);
|
|
|
|
+ examDetailCourse.setExamDetailId(examDetail.getId());
|
|
|
|
+ examDetailCourse.setCourseCode(makeupExamTaskParam.getCourseCode());
|
|
|
|
+ examDetailCourse.setCourseName(makeupExamTaskParam.getCourseName());
|
|
|
|
+ examDetailCourse.setPaperNumber(makeupExamTaskParam.getPaperNumber());
|
|
|
|
+ examDetailCourse.setTotalSubjects(makeupExamTaskParam.getTotalSubjects());
|
|
|
|
+ examDetailCourse.setCreateId(sysUser.getId());
|
|
|
|
+ examDetailCourseService.save(examDetailCourse);
|
|
|
|
+ } else {
|
|
|
|
+ examDetail = examDetailService.getById(makeupExamTaskParam.getExamDetailId());
|
|
|
|
+ if (examDetail.getTotalSubjects() != makeupExamTaskParam.getTotalSubjects()) {
|
|
|
|
+ examDetail.setTotalSubjects(makeupExamTaskParam.getTotalSubjects());
|
|
|
|
+ examDetail.setStatus(ExamDetailStatusEnum.NEW);
|
|
|
|
+ examDetailService.updateById(examDetail);
|
|
|
|
+
|
|
|
|
+ UpdateWrapper<ExamDetailCourse> updateWrapper = new UpdateWrapper<>();
|
|
|
|
+ updateWrapper.lambda().set(ExamDetailCourse::getTotalSubjects, makeupExamTaskParam.getTotalSubjects())
|
|
|
|
+ .eq(ExamDetailCourse::getExamDetailId, examDetail.getId());
|
|
|
|
+ examDetailCourseService.update(updateWrapper);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 生成pdf
|
|
|
|
+ printCommonService.checkDataMakeup(schoolId, examDetail, makeupExamTaskParam.getCourseCode(), makeupExamTaskParam.getPaperNumber(), sysUser);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 简单校验提交参数
|
|
* 简单校验提交参数
|
|
*
|
|
*
|