|
@@ -419,9 +419,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
if (StringUtils.isBlank(task.getBatchNo())) {
|
|
if (StringUtils.isBlank(task.getBatchNo())) {
|
|
throw ExceptionResultEnum.ERROR.exception("batchNo不能为空");
|
|
throw ExceptionResultEnum.ERROR.exception("batchNo不能为空");
|
|
}
|
|
}
|
|
- QueryWrapper<ExamTaskTemp> queryWrapper = new QueryWrapper<>();
|
|
|
|
- queryWrapper.lambda().eq(ExamTaskTemp::getBatchNo, task.getBatchNo());
|
|
|
|
- List<ExamTaskTemp> examTaskTemps = examTaskTempService.list(queryWrapper);
|
|
|
|
|
|
|
|
QueryWrapper<BasicExamRule> examQueryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<BasicExamRule> examQueryWrapper = new QueryWrapper<>();
|
|
examQueryWrapper.lambda().eq(BasicExamRule::getSchoolId, schoolId);
|
|
examQueryWrapper.lambda().eq(BasicExamRule::getSchoolId, schoolId);
|
|
@@ -430,38 +427,37 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
throw ExceptionResultEnum.ERROR.exception("通用规则未设置");
|
|
throw ExceptionResultEnum.ERROR.exception("通用规则未设置");
|
|
}
|
|
}
|
|
|
|
|
|
- if (examTaskTemps.isEmpty()) {
|
|
|
|
- throw ExceptionResultEnum.ERROR.exception("没有可保存数据");
|
|
|
|
- }
|
|
|
|
List<ExamTask> list = new ArrayList<>();
|
|
List<ExamTask> list = new ArrayList<>();
|
|
Set<String> paperNumbers = new HashSet<>();
|
|
Set<String> paperNumbers = new HashSet<>();
|
|
- for (ExamTaskTemp examTaskTemp : examTaskTemps) {
|
|
|
|
|
|
+ List<Map<String,String>> userList = task.getUsers();
|
|
|
|
+
|
|
|
|
+ for (Map<String, String> userMap : userList) {
|
|
ExamTask examTask = new ExamTask();
|
|
ExamTask examTask = new ExamTask();
|
|
examTask.setSchoolId(task.getSchoolId());
|
|
examTask.setSchoolId(task.getSchoolId());
|
|
- examTask.setCourseCode(examTaskTemp.getCourseCode());
|
|
|
|
- examTask.setCourseName(examTaskTemp.getCourseName());
|
|
|
|
- examTask.setSpecialty(examTaskTemp.getSpecialty());
|
|
|
|
|
|
+ examTask.setCourseCode(userMap.get("courseCode"));
|
|
|
|
+ examTask.setCourseName(userMap.get("courseName"));
|
|
|
|
+ examTask.setSpecialty(userMap.get("specialty"));
|
|
|
|
|
|
- if (StringUtils.isNotBlank(examTaskTemp.getPaperNumber())) {
|
|
|
|
- if (paperNumbers.contains(examTaskTemp.getPaperNumber())) {
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(userMap.get("paperNumber"))) {
|
|
|
|
+ if (paperNumbers.contains(userMap.get("paperNumber"))) {
|
|
// 试卷编号在文件内重复,跳过
|
|
// 试卷编号在文件内重复,跳过
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
QueryWrapper<ExamTask> taskQueryWrapper = new QueryWrapper<>();
|
|
QueryWrapper<ExamTask> taskQueryWrapper = new QueryWrapper<>();
|
|
- taskQueryWrapper.lambda().eq(ExamTask::getSchoolId, schoolId).eq(ExamTask::getPaperNumber, examTaskTemp.getPaperNumber());
|
|
|
|
|
|
+ taskQueryWrapper.lambda().eq(ExamTask::getSchoolId, schoolId).eq(ExamTask::getPaperNumber, userMap.get("paperNumber"));
|
|
ExamTask task1 = this.getOne(taskQueryWrapper);
|
|
ExamTask task1 = this.getOne(taskQueryWrapper);
|
|
if (task1 != null) {
|
|
if (task1 != null) {
|
|
// throw ExceptionResultEnum.ERROR.exception("试卷编号已存在");
|
|
// throw ExceptionResultEnum.ERROR.exception("试卷编号已存在");
|
|
// 试卷编号已存在,直接跳过
|
|
// 试卷编号已存在,直接跳过
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- paperNumbers.add(examTaskTemp.getPaperNumber());
|
|
|
|
|
|
+ paperNumbers.add(userMap.get("paperNumber"));
|
|
} else {
|
|
} else {
|
|
// 试卷编号生成规则:年月日(例如:20100419)+0000(例如:0001)顺序编号
|
|
// 试卷编号生成规则:年月日(例如:20100419)+0000(例如:0001)顺序编号
|
|
String paperNumber = commonService.createPaperNumber(schoolId);
|
|
String paperNumber = commonService.createPaperNumber(schoolId);
|
|
- examTaskTemp.setPaperNumber(paperNumber);
|
|
|
|
|
|
+ userMap.put("paperNumber",paperNumber);
|
|
}
|
|
}
|
|
- examTask.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
|
|
|
|
+ examTask.setPaperNumber(userMap.get("paperNumber"));
|
|
examTask.setStartTime(task.getStartTime());
|
|
examTask.setStartTime(task.getStartTime());
|
|
examTask.setEndTime(task.getEndTime());
|
|
examTask.setEndTime(task.getEndTime());
|
|
examTask.setEnable(true);
|
|
examTask.setEnable(true);
|
|
@@ -469,27 +465,16 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examTask.setBatchNo(task.getBatchNo());
|
|
examTask.setBatchNo(task.getBatchNo());
|
|
examTask.setCreateId(sysUser.getId());
|
|
examTask.setCreateId(sysUser.getId());
|
|
examTask.setCreateTime(System.currentTimeMillis());
|
|
examTask.setCreateTime(System.currentTimeMillis());
|
|
- /*String userId = task.getUsers().stream().map(m -> {
|
|
|
|
- if (examTaskTemp.getCourseCode().equals(m.get("courseCode")) && examTaskTemp.getPaperNumber().equals(m.get("paperNumber"))) {
|
|
|
|
- return m.get("userId");
|
|
|
|
- }
|
|
|
|
- return "";
|
|
|
|
- }).findFirst().get();*/
|
|
|
|
- String userId = null;
|
|
|
|
- String specialty = null;
|
|
|
|
- for (Map<String, String> user : task.getUsers()) {
|
|
|
|
- String ucourseCode = user.get("courseCode");
|
|
|
|
- String upaperNumber = user.get("paperNumber");
|
|
|
|
- if (examTaskTemp.getCourseCode().equals(ucourseCode)) {
|
|
|
|
- userId = user.get("userId");
|
|
|
|
- specialty = user.get("specialty");
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
+ String userId = userMap.get("userId");
|
|
|
|
+ String specialty = userMap.get("specialty");
|
|
|
|
+ if (specialty != null && specialty.length() > 0 && !specialty.equals("null")){
|
|
|
|
+ examTask.setSpecialty(specialty);
|
|
}
|
|
}
|
|
- examTask.setSpecialty(specialty);
|
|
|
|
- if (StringUtils.isNotBlank(userId)) {
|
|
|
|
- examTask.setUserId(Long.valueOf(userId));
|
|
|
|
|
|
+ if (userId != null && userId.length() > 0 && !userId.equals("null")){
|
|
|
|
+ examTask.setUserId(SystemConstant.convertIdToLong(userId));
|
|
examTask.setStatus(ExamStatusEnum.READY);
|
|
examTask.setStatus(ExamStatusEnum.READY);
|
|
- } else {
|
|
|
|
|
|
+ }else {
|
|
examTask.setStatus(ExamStatusEnum.NEW);
|
|
examTask.setStatus(ExamStatusEnum.NEW);
|
|
}
|
|
}
|
|
examTask.setReview(basicExamRule.getReview());
|
|
examTask.setReview(basicExamRule.getReview());
|
|
@@ -498,6 +483,94 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
return this.saveBatch(list);
|
|
return this.saveBatch(list);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+// @Override
|
|
|
|
+// public boolean saveBatch(ExamTask task) {
|
|
|
|
+// Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
|
+// task.setSchoolId(schoolId);
|
|
|
|
+// SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
+//
|
|
|
|
+// if (StringUtils.isBlank(task.getBatchNo())) {
|
|
|
|
+// throw ExceptionResultEnum.ERROR.exception("batchNo不能为空");
|
|
|
|
+// }
|
|
|
|
+// QueryWrapper<ExamTaskTemp> queryWrapper = new QueryWrapper<>();
|
|
|
|
+// queryWrapper.lambda().eq(ExamTaskTemp::getBatchNo, task.getBatchNo());
|
|
|
|
+// List<ExamTaskTemp> examTaskTemps = examTaskTempService.list(queryWrapper);
|
|
|
|
+//
|
|
|
|
+// QueryWrapper<BasicExamRule> examQueryWrapper = new QueryWrapper<>();
|
|
|
|
+// examQueryWrapper.lambda().eq(BasicExamRule::getSchoolId, schoolId);
|
|
|
|
+// BasicExamRule basicExamRule = basicExamRuleService.getOne(examQueryWrapper);
|
|
|
|
+// if (basicExamRule == null) {
|
|
|
|
+// throw ExceptionResultEnum.ERROR.exception("通用规则未设置");
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// if (examTaskTemps.isEmpty()) {
|
|
|
|
+// throw ExceptionResultEnum.ERROR.exception("没有可保存数据");
|
|
|
|
+// }
|
|
|
|
+// List<ExamTask> list = new ArrayList<>();
|
|
|
|
+// Set<String> paperNumbers = new HashSet<>();
|
|
|
|
+// for (ExamTaskTemp examTaskTemp : examTaskTemps) {
|
|
|
|
+// ExamTask examTask = new ExamTask();
|
|
|
|
+// examTask.setSchoolId(task.getSchoolId());
|
|
|
|
+// examTask.setCourseCode(examTaskTemp.getCourseCode());
|
|
|
|
+// examTask.setCourseName(examTaskTemp.getCourseName());
|
|
|
|
+// examTask.setSpecialty(examTaskTemp.getSpecialty());
|
|
|
|
+//
|
|
|
|
+// if (StringUtils.isNotBlank(examTaskTemp.getPaperNumber())) {
|
|
|
|
+// if (paperNumbers.contains(examTaskTemp.getPaperNumber())) {
|
|
|
|
+// // 试卷编号在文件内重复,跳过
|
|
|
|
+// continue;
|
|
|
|
+// }
|
|
|
|
+// QueryWrapper<ExamTask> taskQueryWrapper = new QueryWrapper<>();
|
|
|
|
+// taskQueryWrapper.lambda().eq(ExamTask::getSchoolId, schoolId).eq(ExamTask::getPaperNumber, examTaskTemp.getPaperNumber());
|
|
|
|
+// ExamTask task1 = this.getOne(taskQueryWrapper);
|
|
|
|
+// if (task1 != null) {
|
|
|
|
+//// throw ExceptionResultEnum.ERROR.exception("试卷编号已存在");
|
|
|
|
+// // 试卷编号已存在,直接跳过
|
|
|
|
+// continue;
|
|
|
|
+// }
|
|
|
|
+// paperNumbers.add(examTaskTemp.getPaperNumber());
|
|
|
|
+// } else {
|
|
|
|
+// // 试卷编号生成规则:年月日(例如:20100419)+0000(例如:0001)顺序编号
|
|
|
|
+// String paperNumber = commonService.createPaperNumber(schoolId);
|
|
|
|
+// examTaskTemp.setPaperNumber(paperNumber);
|
|
|
|
+// }
|
|
|
|
+// examTask.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
|
|
+// examTask.setStartTime(task.getStartTime());
|
|
|
|
+// examTask.setEndTime(task.getEndTime());
|
|
|
|
+// examTask.setEnable(true);
|
|
|
|
+// examTask.setCardRuleId(task.getCardRuleId());
|
|
|
|
+// examTask.setBatchNo(task.getBatchNo());
|
|
|
|
+// examTask.setCreateId(sysUser.getId());
|
|
|
|
+// examTask.setCreateTime(System.currentTimeMillis());
|
|
|
|
+// /*String userId = task.getUsers().stream().map(m -> {
|
|
|
|
+// if (examTaskTemp.getCourseCode().equals(m.get("courseCode")) && examTaskTemp.getPaperNumber().equals(m.get("paperNumber"))) {
|
|
|
|
+// return m.get("userId");
|
|
|
|
+// }
|
|
|
|
+// return "";
|
|
|
|
+// }).findFirst().get();*/
|
|
|
|
+// String userId = null;
|
|
|
|
+// String specialty = null;
|
|
|
|
+// for (Map<String, String> user : task.getUsers()) {
|
|
|
|
+// String ucourseCode = user.get("courseCode");
|
|
|
|
+// String upaperNumber = user.get("paperNumber");
|
|
|
|
+// if (examTaskTemp.getCourseCode().equals(ucourseCode)) {
|
|
|
|
+// userId = user.get("userId");
|
|
|
|
+// specialty = user.get("specialty");
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+// examTask.setSpecialty(specialty);
|
|
|
|
+// if (StringUtils.isNotBlank(userId)) {
|
|
|
|
+// examTask.setUserId(Long.valueOf(userId));
|
|
|
|
+// examTask.setStatus(ExamStatusEnum.READY);
|
|
|
|
+// } else {
|
|
|
|
+// examTask.setStatus(ExamStatusEnum.NEW);
|
|
|
|
+// }
|
|
|
|
+// examTask.setReview(basicExamRule.getReview());
|
|
|
|
+// list.add(examTask);
|
|
|
|
+// }
|
|
|
|
+// return this.saveBatch(list);
|
|
|
|
+// }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public IPage<ExamTaskDto> listTaskApply(String auditStatus, String reviewStatus, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
|
|
public IPage<ExamTaskDto> listTaskApply(String auditStatus, String reviewStatus, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|