|
@@ -2061,6 +2061,47 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
return this.baseMapper.getExamTaskByCourseCodeAndCardId(schoolId, courseCode, cardId);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<String> listPaperNumber(String param, List<Long> printPlanIdList) {
|
|
|
+ Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
|
|
|
+ SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
|
|
|
+ SysOrg sysOrg = sysOrgService.getById(sysUser.getOrgId());
|
|
|
+ Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
|
|
|
+ if (printPlanIdList.size() == 0) {
|
|
|
+ // 查询命题任务中的试卷编号
|
|
|
+ QueryWrapper<ExamTask> queryWrapperExamTask = new QueryWrapper<>();
|
|
|
+ queryWrapperExamTask.lambda().eq(ExamTask::getSchoolId, schoolId);
|
|
|
+ if (sysOrg != null && !OrgTypeEnum.PRINTING_HOUSE.equals(sysOrg.getType()) && orgIds.size() > 0) {
|
|
|
+ queryWrapperExamTask.lambda().in(ExamTask::getOrgId, orgIds);
|
|
|
+ }
|
|
|
+ List<String> list = new ArrayList<>();
|
|
|
+ if (StringUtils.isNotBlank(param)) {
|
|
|
+ queryWrapperExamTask.lambda().and(i -> i.like(ExamTask::getCourseCode, SystemConstant.translateSpecificSign(param)).or().like(ExamTask::getCourseName, SystemConstant.translateSpecificSign(param)));
|
|
|
+ }
|
|
|
+ List<ExamTask> examTasks = this.list(queryWrapperExamTask);
|
|
|
+ if (examTasks != null && examTasks.size() > 0) {
|
|
|
+ list = examTasks.stream().map(ExamTask::getPaperNumber).distinct().collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
+ // 查询考务-科目中的试卷编号
|
|
|
+ QueryWrapper<ExamDetailCourse> queryWrapperExamDetailCourse = new QueryWrapper<>();
|
|
|
+ queryWrapperExamDetailCourse.lambda().eq(ExamDetailCourse::getSchoolId, schoolId);
|
|
|
+ List<String> list2 = new ArrayList<>();
|
|
|
+ if (StringUtils.isNotBlank(param)) {
|
|
|
+ queryWrapperExamDetailCourse.lambda().and(i -> i.like(ExamDetailCourse::getCourseCode, SystemConstant.translateSpecificSign(param))
|
|
|
+ .or().like(ExamDetailCourse::getCourseName, SystemConstant.translateSpecificSign(param)));
|
|
|
+ }
|
|
|
+ List<ExamDetailCourse> ExamDetailCourses = examDetailCourseService.list(queryWrapperExamDetailCourse);
|
|
|
+ if (ExamDetailCourses != null && ExamDetailCourses.size() > 0) {
|
|
|
+ list2 = ExamDetailCourses.stream().map(ExamDetailCourse::getPaperNumber).distinct().collect(Collectors.toList());
|
|
|
+ }
|
|
|
+ list.addAll(list2);
|
|
|
+ return list.stream().distinct().collect(Collectors.toList());
|
|
|
+ } else {
|
|
|
+ return examDetailCourseService.listPaperNumberByPrintPlanId(param, printPlanIdList, orgIds);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 简单校验提交参数
|
|
|
*
|