|
@@ -169,12 +169,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
@Resource
|
|
@Resource
|
|
private BasicOperationLogService basicOperationLogService;
|
|
private BasicOperationLogService basicOperationLogService;
|
|
@Resource
|
|
@Resource
|
|
- private TeachCourseService teachCourseService;
|
|
|
|
- @Resource
|
|
|
|
- private TeachClazzService teachClazzService;
|
|
|
|
- @Resource
|
|
|
|
- private TeachStudentService teachStudentService;
|
|
|
|
- @Resource
|
|
|
|
private RedisCounterUtil redisCounterUtil;
|
|
private RedisCounterUtil redisCounterUtil;
|
|
@Resource
|
|
@Resource
|
|
private FileUploadService fileUploadService;
|
|
private FileUploadService fileUploadService;
|
|
@@ -182,14 +176,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
private TikuUtils tikuUtils;
|
|
private TikuUtils tikuUtils;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- 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) {
|
|
|
|
|
|
+ public IPage<ExamTaskDto> list(Long semesterId, Long examId, Boolean enable, String status, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
userName = SystemConstant.translateSpecificSign(userName);
|
|
userName = SystemConstant.translateSpecificSign(userName);
|
|
- createName = SystemConstant.translateSpecificSign(createName);
|
|
|
|
SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
|
|
Page<ExamTaskDto> page = new Page<>(pageNumber, pageSize);
|
|
- IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, semesterId, examId, enable, status, cardRuleId, courseCode, paperNumber, startTime, endTime, dpr, userName, createName);
|
|
|
|
|
|
+ IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listPage(page, schoolId, semesterId, examId, enable, status, courseId, paperNumber, startTime, endTime, userName, dpr);
|
|
for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
|
|
for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
|
|
// 判断审批表状态
|
|
// 判断审批表状态
|
|
String cellPaperNumber = record.getPaperNumber();
|
|
String cellPaperNumber = record.getPaperNumber();
|
|
@@ -339,7 +332,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examTask.setReview(basicPrintConfig.getReview());
|
|
examTask.setReview(basicPrintConfig.getReview());
|
|
// 取课程所在机构
|
|
// 取课程所在机构
|
|
BasicCourse basicCourse = basicCourseService.getById(examTask.getCourseId());
|
|
BasicCourse basicCourse = basicCourseService.getById(examTask.getCourseId());
|
|
- if(basicCourse == null){
|
|
|
|
|
|
+ if (basicCourse == null) {
|
|
throw ExceptionResultEnum.ERROR.exception("课程不存在");
|
|
throw ExceptionResultEnum.ERROR.exception("课程不存在");
|
|
}
|
|
}
|
|
examTask.setTeachingRoomId(basicCourse.getTeachingRoomId());
|
|
examTask.setTeachingRoomId(basicCourse.getTeachingRoomId());
|
|
@@ -392,19 +385,22 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
String excelCourseCode = userImportDto.getCourseCode();
|
|
String excelCourseCode = userImportDto.getCourseCode();
|
|
String excelCourseName = userImportDto.getCourseName();
|
|
String excelCourseName = userImportDto.getCourseName();
|
|
|
|
+ String teachingRoomName = userImportDto.getTeachingRoomName();
|
|
String excelPaperNumber = userImportDto.getPaperNumber();
|
|
String excelPaperNumber = userImportDto.getPaperNumber();
|
|
String excelTeacherAccount = userImportDto.getUserAccount();
|
|
String excelTeacherAccount = userImportDto.getUserAccount();
|
|
String excelTeacherName = userImportDto.getUserName();
|
|
String excelTeacherName = userImportDto.getUserName();
|
|
|
|
|
|
|
|
+ List<SysOrg> sysOrgList = sysOrgService.getSecondOrg(schoolId, teachingRoomName);
|
|
|
|
+ if (CollectionUtils.isEmpty(sysOrgList)) {
|
|
|
|
+ excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行开课学院[" + teachingRoomName + "]在组织架构中不存在"));
|
|
|
|
+ }
|
|
// 课程是否存在并且与名称对应
|
|
// 课程是否存在并且与名称对应
|
|
- QueryWrapper<BasicCourse> queryWrapper = new QueryWrapper<>();
|
|
|
|
- queryWrapper.lambda().eq(BasicCourse::getSchoolId, schoolId).eq(BasicCourse::getCode, excelCourseCode);
|
|
|
|
- BasicCourse course = basicCourseService.getOne(queryWrapper);
|
|
|
|
|
|
+ BasicCourse basicCourse = basicCourseService.getByTeachRoomIdAndCode(sysOrgList.get(0).getId(), excelCourseCode);
|
|
// 校验课程名称和课程代码
|
|
// 校验课程名称和课程代码
|
|
- if (course == null) {
|
|
|
|
|
|
+ if (basicCourse == null) {
|
|
excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]在系统中不存在"));
|
|
excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]在系统中不存在"));
|
|
- } else if (!course.getName().equals(excelCourseName)) {
|
|
|
|
- excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]对应的课程名称与课程管理中不一致。文件中为[" + excelCourseName + "],课程管理为[" + course.getName() + "]"));
|
|
|
|
|
|
+ } else if (!basicCourse.getName().equals(excelCourseName)) {
|
|
|
|
+ excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行课程代码[" + excelCourseCode + "]对应的课程名称与课程管理中不一致。文件中为[" + excelCourseName + "],课程管理为[" + basicCourse.getName() + "]"));
|
|
}
|
|
}
|
|
if (courseCodePaperNumberMap.containsKey(excelCourseCode)) {
|
|
if (courseCodePaperNumberMap.containsKey(excelCourseCode)) {
|
|
String paperNumber = courseCodePaperNumberMap.get(excelCourseCode);
|
|
String paperNumber = courseCodePaperNumberMap.get(excelCourseCode);
|
|
@@ -425,7 +421,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
|
|
|
|
// 校验命题老师
|
|
// 校验命题老师
|
|
- AssignTeacherDto assignTeacherDto = sysUserService.listUser(excelCourseCode, null);
|
|
|
|
|
|
+ AssignTeacherDto assignTeacherDto = sysUserService.listUser(basicCourse.getId(), null);
|
|
List<SysUserResult> listUser = Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>();
|
|
List<SysUserResult> listUser = Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>();
|
|
Map<String, String> userMap = listUser.stream().collect(Collectors.toMap(SysUserResult::getLoginName, SysUserResult::getRealName));
|
|
Map<String, String> userMap = listUser.stream().collect(Collectors.toMap(SysUserResult::getLoginName, SysUserResult::getRealName));
|
|
if (userMap == null) {
|
|
if (userMap == null) {
|
|
@@ -441,7 +437,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师姓名不能为空"));
|
|
excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师姓名不能为空"));
|
|
} else {
|
|
} else {
|
|
if (StringUtils.isBlank(userMap.get(excelTeacherAccount))) {
|
|
if (StringUtils.isBlank(userMap.get(excelTeacherAccount))) {
|
|
- excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师账号[" + excelTeacherAccount + "]系统中不存在"));
|
|
|
|
|
|
+ excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师工号[" + excelTeacherAccount + "]系统中不存在"));
|
|
} else {
|
|
} else {
|
|
String teacherName = userMap.get(excelTeacherAccount);
|
|
String teacherName = userMap.get(excelTeacherAccount);
|
|
if (!excelTeacherName.equals(teacherName)) {
|
|
if (!excelTeacherName.equals(teacherName)) {
|
|
@@ -451,7 +447,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
if (StringUtils.isNotBlank(excelTeacherName)) {
|
|
if (StringUtils.isNotBlank(excelTeacherName)) {
|
|
- excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师账号必填"));
|
|
|
|
|
|
+ excelErrorTemp.add(new ExcelError(y + 1, "第" + (y + 1) + "行命题老师工号必填"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -502,6 +498,10 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examTaskTempService.save(examTaskTemp);
|
|
examTaskTempService.save(examTaskTemp);
|
|
|
|
|
|
ExamTaskDto examTaskDto = new ExamTaskDto();
|
|
ExamTaskDto examTaskDto = new ExamTaskDto();
|
|
|
|
+ List<SysOrg> sysOrgList = sysOrgService.getSecondOrg(schoolId, examTaskTemp.getTeachingRoomName());
|
|
|
|
+ // 课程是否存在并且与名称对应
|
|
|
|
+ BasicCourse basicCourse = basicCourseService.getByTeachRoomIdAndCode(sysOrgList.get(0).getId(), examTaskTemp.getCourseCode());
|
|
|
|
+ examTaskDto.setCourseId(basicCourse.getId());
|
|
examTaskDto.setCourseCode(examTaskTemp.getCourseCode());
|
|
examTaskDto.setCourseCode(examTaskTemp.getCourseCode());
|
|
examTaskDto.setCourseName(examTaskTemp.getCourseName());
|
|
examTaskDto.setCourseName(examTaskTemp.getCourseName());
|
|
examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
examTaskDto.setPaperNumber(examTaskTemp.getPaperNumber());
|
|
@@ -511,9 +511,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
SysUser sysUser1 = sysUserService.getOne(queryWrapper);
|
|
SysUser sysUser1 = sysUserService.getOne(queryWrapper);
|
|
AssignTeacherDto assignTeacherDto;
|
|
AssignTeacherDto assignTeacherDto;
|
|
if (sysUser1 != null) {
|
|
if (sysUser1 != null) {
|
|
- assignTeacherDto = listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser1.getId()));
|
|
|
|
|
|
+ assignTeacherDto = sysUserService.listUser(basicCourse.getId(), String.valueOf(sysUser1.getId()));
|
|
} else {
|
|
} else {
|
|
- assignTeacherDto = listUsers(examTaskTemp.getCourseCode(), null);
|
|
|
|
|
|
+ assignTeacherDto = sysUserService.listUser(basicCourse.getId(), null);
|
|
}
|
|
}
|
|
examTaskDto.setUsers(Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>());
|
|
examTaskDto.setUsers(Objects.nonNull(assignTeacherDto) ? assignTeacherDto.getAllUserList() : new ArrayList<>());
|
|
String userName = examTaskImportDto.getUserName();
|
|
String userName = examTaskImportDto.getUserName();
|
|
@@ -561,10 +561,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
return examTaskImportResultDto;
|
|
return examTaskImportResultDto;
|
|
}
|
|
}
|
|
|
|
|
|
- private AssignTeacherDto listUsers(String courseCode, String userId) {
|
|
|
|
- return sysUserService.listUser(courseCode, userId);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
@Override
|
|
@Override
|
|
public List<ExamTask> saveBatch(ExamTask task) {
|
|
public List<ExamTask> saveBatch(ExamTask task) {
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
@@ -660,12 +656,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long cardRuleId, String
|
|
|
|
- courseCode, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
|
|
|
|
|
|
+ public IPage<ExamTaskDto> listTaskApply(Long semesterId, Long examId, String auditStatus, Long courseId, String paperNumber, Long startTime, Long endTime, String userName, Integer pageNumber, Integer pageSize) {
|
|
userName = SystemConstant.translateSpecificSign(userName);
|
|
userName = SystemConstant.translateSpecificSign(userName);
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
- IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, auditStatus, cardRuleId, courseCode, paperNumber, startTime, endTime, sysUser.getId(), userName);
|
|
|
|
|
|
+ IPage<ExamTaskDto> examTaskDtoIPage = this.baseMapper.listTaskApply(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, auditStatus, courseId, paperNumber, startTime, endTime, sysUser.getId(), userName);
|
|
for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
|
|
for (ExamTaskDto record : examTaskDtoIPage.getRecords()) {
|
|
if ((Objects.nonNull(record.getReview()) && record.getReview() && FlowStatusEnum.FINISH.name().equals(record.getAuditStatus()) && !ExamModelEnum.MODEL3.equals(record.getExamModel()))) {
|
|
if ((Objects.nonNull(record.getReview()) && record.getReview() && FlowStatusEnum.FINISH.name().equals(record.getAuditStatus()) && !ExamModelEnum.MODEL3.equals(record.getExamModel()))) {
|
|
record.setApproveFormStatus(true);
|
|
record.setApproveFormStatus(true);
|
|
@@ -677,22 +672,19 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, String courseCode, String paperNumber, Long userId, Long
|
|
|
|
- cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize) {
|
|
|
|
|
|
+ public IPage<ExamTaskDto> listTaskReviewUnaudited(Long semesterId, Long examId, Long courseId, String paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize) {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
- createName = SystemConstant.translateSpecificSign(createName);
|
|
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
- return this.baseMapper.listTaskReviewUnaudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, startCreateTime, endCreateTime, createName, sysUser.getId());
|
|
|
|
|
|
+ return this.baseMapper.listTaskReviewUnaudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseId, paperNumber, userId, startTime, endTime, startCreateTime, endCreateTime, sysUser.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, String reviewStatus, String courseCode, String
|
|
|
|
- paperNumber, Long userId, Long cardRuleId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, String createName, Integer pageNumber, Integer pageSize) {
|
|
|
|
- createName = SystemConstant.translateSpecificSign(createName);
|
|
|
|
|
|
+ public IPage<ExamTaskDto> listTaskReviewAudited(Long semesterId, Long examId, Long courseId, String
|
|
|
|
+ paperNumber, Long userId, Long startTime, Long endTime, Long startCreateTime, Long endCreateTime, Integer pageNumber, Integer pageSize) {
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
- return this.baseMapper.listTaskReviewAudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, reviewStatus, courseCode, paperNumber, userId, cardRuleId, startTime, endTime, orgIds, startCreateTime, endCreateTime, createName, sysUser.getId());
|
|
|
|
|
|
+ return this.baseMapper.listTaskReviewAudited(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseId, paperNumber, userId, startTime, endTime, orgIds, startCreateTime, endCreateTime, sysUser.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Transactional
|
|
@Transactional
|
|
@@ -718,17 +710,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long startTime, Long endTime, MakeMethodEnum makeMethod, Long cardRuleId, Integer pageNumber, Integer pageSize) {
|
|
|
|
|
|
+ public IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize) {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
- // 查询用户角色是否包含命题老师
|
|
|
|
-// List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
|
|
|
|
-// boolean containsQuestionTeacher = list.stream().anyMatch(m -> RoleTypeEnum.QUESTION_TEACHER.equals(m.getType()));
|
|
|
|
boolean containsQuestionTeacher = false;
|
|
boolean containsQuestionTeacher = false;
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, requestUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
|
|
Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
|
|
- return this.baseMapper.listTaskPaper(page, schoolId, semesterId, examId, courseCode, paperNumber, startTime, endTime, dpr, containsQuestionTeacher, sysUser.getId(), makeMethod, cardRuleId);
|
|
|
|
|
|
+ return this.baseMapper.listTaskPaper(page, schoolId, semesterId, examId, courseId, paperNumber, startTime, endTime, dpr, containsQuestionTeacher, sysUser.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -1003,7 +992,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NOT_EXIST.getMessage(), courseName, courseCode, paperNumber));
|
|
stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NOT_EXIST.getMessage(), courseName, courseCode, paperNumber));
|
|
} else {
|
|
} else {
|
|
if (examTask.getReview()) {
|
|
if (examTask.getReview()) {
|
|
- examTask = examTaskService.findExamTaskByFlowStatus(schoolId, examPrintPlan.getExamId(), examDetailCourse.getCourseCode(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
|
|
|
|
|
|
+ examTask = examTaskService.findExamTaskByFlowStatus(schoolId, examPrintPlan.getExamId(), examDetailCourse.getCourseId(), examDetailCourse.getPaperNumber(), FlowStatusEnum.FINISH);
|
|
if (examTask == null) {
|
|
if (examTask == null) {
|
|
stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NULL.getMessage(), courseName, courseCode, paperNumber));
|
|
stringSet.add(String.format("课程[%s(%s)],试卷编号[%s]的" + ExceptionResultEnum.EXAM_TASK_IS_NULL.getMessage(), courseName, courseCode, paperNumber));
|
|
}
|
|
}
|
|
@@ -1033,22 +1022,21 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long
|
|
|
|
|
|
+ public List<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long
|
|
endTime) {
|
|
endTime) {
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
// 查询用户角色是否包含命题老师
|
|
// 查询用户角色是否包含命题老师
|
|
List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
|
|
List<SysRole> list = sysUserRoleService.listRoleByUserId(sysUser.getId());
|
|
-// boolean containsQuestionTeacher = list.stream().filter(m -> RoleTypeEnum.QUESTION_TEACHER.equals(m.getType())).count() > 0;
|
|
|
|
boolean containsQuestionTeacher = false;
|
|
boolean containsQuestionTeacher = false;
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, sysUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(schoolId, sysUser.getId(), ServletUtil.getRequest().getServletPath());
|
|
- return this.baseMapper.listTaskPaper(schoolId, semesterId, examId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime, dpr, orgIds, containsQuestionTeacher, sysUser.getId());
|
|
|
|
|
|
+ return this.baseMapper.listTaskPaper(schoolId, semesterId, examId, courseId, paperNumber, startTime, endTime, dpr, orgIds, containsQuestionTeacher, sysUser.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public TBTask taskDownloadPdf(Long semesterId, Long examId, String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime) {
|
|
|
|
- List<ExamTaskDetailDto> examTasks = this.listTaskPaper(semesterId, examId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime);
|
|
|
|
|
|
+ public TBTask taskDownloadPdf(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime) {
|
|
|
|
+ List<ExamTaskDetailDto> examTasks = this.listTaskPaper(semesterId, examId, courseId, paperNumber, startTime, endTime);
|
|
if (CollectionUtils.isEmpty(examTasks)) {
|
|
if (CollectionUtils.isEmpty(examTasks)) {
|
|
throw ExceptionResultEnum.ERROR.exception("没有可导出数据");
|
|
throw ExceptionResultEnum.ERROR.exception("没有可导出数据");
|
|
}
|
|
}
|
|
@@ -1087,20 +1075,14 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
/**
|
|
/**
|
|
* 根据流程状态查找命题任务
|
|
* 根据流程状态查找命题任务
|
|
- *
|
|
|
|
- * @param schoolId
|
|
|
|
- * @param courseCode
|
|
|
|
- * @param paperNumber
|
|
|
|
- * @param flowStatus
|
|
|
|
- * @return
|
|
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, String courseCode, String paperNumber, FlowStatusEnum flowStatus) {
|
|
|
|
- List<ExamTask> examTaskList = this.baseMapper.findExamTaskByFlowStatus(schoolId, examId, courseCode, paperNumber, Objects.nonNull(flowStatus) ? flowStatus.name() : null);
|
|
|
|
|
|
+ public ExamTask findExamTaskByFlowStatus(Long schoolId, Long examId, Long courseId, String paperNumber, FlowStatusEnum flowStatus) {
|
|
|
|
+ List<ExamTask> examTaskList = this.baseMapper.findExamTaskByFlowStatus(schoolId, examId, courseId, paperNumber, Objects.nonNull(flowStatus) ? flowStatus.name() : null);
|
|
if (CollectionUtils.isEmpty(examTaskList)) {
|
|
if (CollectionUtils.isEmpty(examTaskList)) {
|
|
throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
|
|
throw ExceptionResultEnum.EXAM_TASK_IS_NULL.exception();
|
|
} else if (examTaskList.size() != 1) {
|
|
} else if (examTaskList.size() != 1) {
|
|
- throw ExceptionResultEnum.ERROR.exception("命题任务查询异常:" + ExceptionResultEnum.DATA_COUNT_EXCEPTION.getMessage() + String.format("考试ID[%s],课程代码[%s],试卷编号[%s]", examId, courseCode, paperNumber));
|
|
|
|
|
|
+ throw ExceptionResultEnum.ERROR.exception("命题任务查询异常:" + ExceptionResultEnum.DATA_COUNT_EXCEPTION.getMessage() + String.format("考试ID[%s],课程ID[%s],试卷编号[%s]", examId, courseId, paperNumber));
|
|
} else {
|
|
} else {
|
|
ExamTask examTask = examTaskList.get(0);
|
|
ExamTask examTask = examTaskList.get(0);
|
|
if (!examTask.getEnable()) {
|
|
if (!examTask.getEnable()) {
|
|
@@ -1222,11 +1204,8 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examTask.setPaperNumber(paperNumber);
|
|
examTask.setPaperNumber(paperNumber);
|
|
}
|
|
}
|
|
|
|
|
|
- String sequence = printCommonService.createCourseSequence(schoolId, examTask.getCourseCode());
|
|
|
|
- examTask.setSequence(sequence);
|
|
|
|
examTask.setId(SystemConstant.getDbUuid());
|
|
examTask.setId(SystemConstant.getDbUuid());
|
|
examTask.setSchoolId(schoolId);
|
|
examTask.setSchoolId(schoolId);
|
|
- examTask.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examTask.getCourseCode()));
|
|
|
|
examTask.setReview(basicPrintConfig.getReview());
|
|
examTask.setReview(basicPrintConfig.getReview());
|
|
examTask.setUserId(sysUser.getId());
|
|
examTask.setUserId(sysUser.getId());
|
|
examTask.setStatus(ExamStatusEnum.SUBMIT);
|
|
examTask.setStatus(ExamStatusEnum.SUBMIT);
|
|
@@ -1396,8 +1375,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
examDetailCourse.setId(SystemConstant.getDbUuid());
|
|
examDetailCourse.setId(SystemConstant.getDbUuid());
|
|
examDetailCourse.setSchoolId(schoolId);
|
|
examDetailCourse.setSchoolId(schoolId);
|
|
examDetailCourse.setExamDetailId(examDetail.getId());
|
|
examDetailCourse.setExamDetailId(examDetail.getId());
|
|
- examDetailCourse.setCourseCode(examTask.getCourseCode());
|
|
|
|
- examDetailCourse.setCourseName(examTask.getCourseName());
|
|
|
|
|
|
+ examDetailCourse.setCourseId(examTask.getCourseId());
|
|
examDetailCourse.setPaperNumber(paperNumber);
|
|
examDetailCourse.setPaperNumber(paperNumber);
|
|
examDetailCourse.setCoursePaperId(String.valueOf(examTask.getId()));
|
|
examDetailCourse.setCoursePaperId(String.valueOf(examTask.getId()));
|
|
examDetailCourse.setClazzId(examDetailList.getClassId());
|
|
examDetailCourse.setClazzId(examDetailList.getClassId());
|
|
@@ -1696,11 +1674,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Override
|
|
@Override
|
|
- public List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, String courseCode, String teacher, String className, SysUser requestUser) {
|
|
|
|
|
|
+ public List<ExamTaskStudentObjectResult> findExamTaskStudentObject(Long examId, Long courseId, String teacher, String className, SysUser requestUser) {
|
|
Long schoolId = requestUser.getSchoolId();
|
|
Long schoolId = requestUser.getSchoolId();
|
|
List<ExamTaskStudentObjectResult> result = new ArrayList<>();
|
|
List<ExamTaskStudentObjectResult> result = new ArrayList<>();
|
|
// 基础班级对象
|
|
// 基础班级对象
|
|
- List<BasicExamStudentResult> basicStudentResultList = basicStudentService.basicStudentList(schoolId, examId, courseCode, teacher, className, null);
|
|
|
|
|
|
+ List<BasicExamStudentResult> basicStudentResultList = basicStudentService.basicStudentList(schoolId, examId, courseId, teacher, className, null);
|
|
if (!CollectionUtils.isEmpty(basicStudentResultList)) {
|
|
if (!CollectionUtils.isEmpty(basicStudentResultList)) {
|
|
LinkedMultiValueMap<Long, StudentInfo> studentInfoLinkedMultiValueMap = new LinkedMultiValueMap<>();
|
|
LinkedMultiValueMap<Long, StudentInfo> studentInfoLinkedMultiValueMap = new LinkedMultiValueMap<>();
|
|
Map<Long, ExamTaskStudentObjectResult> examTaskStudentObjectResultMap = new LinkedHashMap<>();
|
|
Map<Long, ExamTaskStudentObjectResult> examTaskStudentObjectResultMap = new LinkedHashMap<>();
|
|
@@ -2027,6 +2005,18 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
return this.getOne(queryWrapper);
|
|
return this.getOne(queryWrapper);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
+ public ExamTask getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber) {
|
|
|
|
+ QueryWrapper<ExamTask> queryWrapper = new QueryWrapper<>();
|
|
|
|
+ LambdaQueryWrapper<ExamTask> lambdaQueryWrapper = queryWrapper.lambda();
|
|
|
|
+ lambdaQueryWrapper.eq(ExamTask::getExamId, examId);
|
|
|
|
+ if (courseId != null) {
|
|
|
|
+ lambdaQueryWrapper.eq(ExamTask::getCourseId, courseId);
|
|
|
|
+ }
|
|
|
|
+ lambdaQueryWrapper.eq(ExamTask::getPaperNumber, paperNumber);
|
|
|
|
+ return this.getOne(queryWrapper);
|
|
|
|
+ }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize) {
|
|
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) {
|
|
if (semesterId == null) {
|