|
@@ -35,7 +35,6 @@ import org.activiti.engine.task.Task;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
@@ -66,62 +65,62 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
private static final Logger logger = LoggerFactory.getLogger(ExamTaskServiceImpl.class);
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamTaskTempService examTaskTempService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private BasicExamRuleService basicExamRuleService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamTaskReviewLogService examTaskReviewLogService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamTaskDetailService examTaskDetailService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private BasicAttachmentService basicAttachmentService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
@Lazy
|
|
|
private PrintCommonService printCommonService;
|
|
|
|
|
|
@Resource
|
|
|
ExamTaskMapper examTaskMapper;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private BasicCourseService basicCourseService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private SysUserService sysUserService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private SysUserRoleService sysUserRoleService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamCardService examCardService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamCardDetailService examCardDetailService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamDetailCourseService examDetailCourseService;
|
|
|
|
|
|
@Resource
|
|
|
private ExamDetailService examDetailService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private BasicTemplateService basicTemplateService;
|
|
|
|
|
|
@Resource
|
|
|
TBTaskService tbTaskService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private ExamTaskPaperLogService examTaskPaperLogService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private SysConfigService sysConfigService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
private BasicMessageService basicMessageService;
|
|
|
|
|
|
@Resource
|
|
@@ -142,7 +141,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
@Resource
|
|
|
BasicCardRuleService basicCardRuleService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
ExamPrintPlanService examPrintPlanService;
|
|
|
|
|
|
@Resource
|
|
@@ -166,7 +165,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
@Resource
|
|
|
BasicCampusService basicCampusService;
|
|
|
|
|
|
- @Autowired
|
|
|
+ @Resource
|
|
|
ExamStudentService examStudentService;
|
|
|
|
|
|
@Resource
|
|
@@ -175,6 +174,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
@Resource
|
|
|
CreatePdfUtil createPdfUtil;
|
|
|
|
|
|
+ @Resource
|
|
|
+ BasicPrintConfigService basicPrintConfigService;
|
|
|
+
|
|
|
@Override
|
|
|
public List<ExamTask> listByCourseCode(Long schoolId, String code) {
|
|
|
QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
@@ -183,13 +185,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public IPage<ExamTaskDto> list(Boolean enable, String status, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, String userName, String createName, Integer pageNumber, Integer pageSize) {
|
|
|
+ public IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long cardRuleId, String courseCode, String paperNumber, Long startTime, Long endTime, String userName, String createName, Integer pageNumber, Integer pageSize) {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
userName = SystemConstant.translateSpecificSign(userName);
|
|
|
createName = SystemConstant.translateSpecificSign(createName);
|
|
|
Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
|
Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
|
|
|
- IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, enable, status, cardRuleId, courseCode, paperNumber, startTime, endTime, orgIds, userName, createName);
|
|
|
+ IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, semesterId, examId, enable, status, cardRuleId, courseCode, paperNumber, startTime, endTime, orgIds, userName, createName);
|
|
|
for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
|
|
|
// 判断审批表状态
|
|
|
String cellPaperNumber = record.getPaperNumber();
|
|
@@ -391,9 +393,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
public ExamTask saveExamTaskNew(ExamTask examTask) {
|
|
|
try {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
+ Long examId = examTask.getExamId();
|
|
|
+ String courseCode = examTask.getCourseCode();
|
|
|
+ BasicPrintConfig basicPrintConfig = basicPrintConfigService.getByExamIdAndCourseCode(examId, courseCode);
|
|
|
+ examTask.setExamId(examId);
|
|
|
+ examTask.setCardRuleId(basicPrintConfig.getCardRuleId());
|
|
|
examTask.setSchoolId(schoolId);
|
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
-
|
|
|
if (StringUtils.isNotBlank(examTask.getPaperNumber())) {
|
|
|
QueryWrapper<ExamTask> taskQueryWrapper = new QueryWrapper<>();
|
|
|
taskQueryWrapper.lambda().eq(ExamTask::getSchoolId, schoolId).eq(ExamTask::getPaperNumber, examTask.getPaperNumber());
|
|
@@ -416,9 +422,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
}
|
|
|
examTask.insertInfo(sysUser.getId());
|
|
|
examTask.updateInfo(sysUser.getId());
|
|
|
- examTask.setReview(basicExamRule.getReview());
|
|
|
+ // TODO: 2022/2/21 新建命题任务先屏蔽流程
|
|
|
+ examTask.setReview(false);
|
|
|
+// examTask.setReview(basicExamRule.getReview());
|
|
|
// 取课程所在机构
|
|
|
- Long teachingRoomId = basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examTask.getCourseCode());
|
|
|
+ Long teachingRoomId = basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, courseCode);
|
|
|
examTask.setOrgId(teachingRoomId);
|
|
|
examTask.setTeachingRoomId(teachingRoomId);
|
|
|
Long flowEntityId = null;
|
|
@@ -426,10 +434,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
examTask.setStatus(ExamStatusEnum.DRAFT);
|
|
|
} else if (examTask.getReview()) {
|
|
|
examTask.setStatus(ExamStatusEnum.STAGE);
|
|
|
-// Map<String, Object> map = new HashMap<>();
|
|
|
-// map.computeIfAbsent(SystemConstant.APPROVE_ID, v -> String.valueOf(examTask.getUserId()));
|
|
|
-// map.computeIfAbsent(SystemConstant.TEACHING_ROOM_ID, v -> examTask.getTeachingRoomId());
|
|
|
-// ProcessInstance processInstance = activitiService.flowStart(map);
|
|
|
Map<String, Object> map = activitiService.customFlowStart(examTask.getId(), examTask.getUserId());
|
|
|
examTask.setFlowId(SystemConstant.convertIdToLong((String) map.get(SystemConstant.FLOW_ID)));
|
|
|
flowEntityId = SystemConstant.convertIdToLong((String) map.get(SystemConstant.FLOW_ENTITY_ID));
|
|
@@ -437,12 +441,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
examTask.setStatus(ExamStatusEnum.STAGE);
|
|
|
}
|
|
|
this.save(examTask);
|
|
|
- Map<String, Object> texamTaskFlowMap = new HashMap<>();
|
|
|
- texamTaskFlowMap.computeIfAbsent(SystemConstant.SCHOOL_ID, v -> examTask.getSchoolId());
|
|
|
- texamTaskFlowMap.computeIfAbsent(SystemConstant.EXAM_TASK_ID, v -> examTask.getId());
|
|
|
- texamTaskFlowMap.computeIfAbsent(SystemConstant.FLOW_ID, v -> examTask.getFlowId());
|
|
|
- texamTaskFlowMap.put(SystemConstant.FLOW_ENTITY_ID, flowEntityId);
|
|
|
- tExamTaskFlowService.saveOrUpdate(texamTaskFlowMap);
|
|
|
+ // TODO: 2022/2/22 流程相关
|
|
|
+// Map<String, Object> texamTaskFlowMap = new HashMap<>();
|
|
|
+// texamTaskFlowMap.computeIfAbsent(SystemConstant.SCHOOL_ID, v -> examTask.getSchoolId());
|
|
|
+// texamTaskFlowMap.computeIfAbsent(SystemConstant.EXAM_TASK_ID, v -> examTask.getId());
|
|
|
+// texamTaskFlowMap.computeIfAbsent(SystemConstant.FLOW_ID, v -> examTask.getFlowId());
|
|
|
+// texamTaskFlowMap.put(SystemConstant.FLOW_ENTITY_ID, flowEntityId);
|
|
|
+// tExamTaskFlowService.saveOrUpdate(texamTaskFlowMap);
|
|
|
} catch (Exception e) {
|
|
|
log.error(SystemConstant.LOG_ERROR, e);
|
|
|
if (e instanceof ActivitiObjectNotFoundException) {
|
|
@@ -649,6 +654,8 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
@Override
|
|
|
public List<ExamTask> saveBatch(ExamTask task) {
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
+ Long examId = task.getExamId();
|
|
|
+
|
|
|
task.setSchoolId(schoolId);
|
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
|
|
@@ -668,12 +675,19 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
List<Map<String, String>> userList = task.getUsers();
|
|
|
|
|
|
for (Map<String, String> userMap : userList) {
|
|
|
+ String courseCode = userMap.get("courseCode");
|
|
|
+ // 配置信息
|
|
|
+ BasicPrintConfig basicPrintConfig = basicPrintConfigService.getByExamIdAndCourseCode(examId,courseCode);
|
|
|
+ Long cardRuleId = basicPrintConfig.getCardRuleId();
|
|
|
+
|
|
|
ExamTask examTask = new ExamTask();
|
|
|
examTask.setSchoolId(task.getSchoolId());
|
|
|
- examTask.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, userMap.get("courseCode")));
|
|
|
+ examTask.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, courseCode));
|
|
|
examTask.setCourseCode(userMap.get("courseCode"));
|
|
|
examTask.setCourseName(userMap.get("courseName"));
|
|
|
examTask.setSpecialty(userMap.get("specialty"));
|
|
|
+ examTask.setExamId(examId);
|
|
|
+ examTask.setCardRuleId(cardRuleId);
|
|
|
|
|
|
if (StringUtils.isNotBlank(userMap.get("paperNumber"))) {
|
|
|
if (paperNumbers.contains(userMap.get("paperNumber"))) {
|
|
@@ -699,7 +713,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
examTask.setStartTime(task.getStartTime());
|
|
|
examTask.setEndTime(task.getEndTime());
|
|
|
examTask.setEnable(true);
|
|
|
- examTask.setCardRuleId(task.getCardRuleId());
|
|
|
examTask.setBatchNo(task.getBatchNo());
|
|
|
examTask.insertInfo(sysUser.getId());
|
|
|
|
|
@@ -725,6 +738,8 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
}
|
|
|
this.saveBatch(list);
|
|
|
for (ExamTask examTask : list) {
|
|
|
+ // TODO: 2022/2/23 先不走流程
|
|
|
+ examTask.setReview(false);
|
|
|
if (examTask.getReview() && Objects.nonNull(examTask.getUserId()) && Objects.isNull(examTask.getFlowId())) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.computeIfAbsent(SystemConstant.APPROVE_ID, v -> String.valueOf(examTask.getUserId()));
|