浏览代码

3.4.0 update

xiaofei 11 月之前
父节点
当前提交
b5dfb54afc
共有 35 个文件被更改,包括 177 次插入129 次删除
  1. 13 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/RelatePaperDto.java
  2. 2 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ConditionMapper.java
  3. 1 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamCardMapper.java
  4. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamTaskMapper.java
  5. 1 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamCardService.java
  6. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskService.java
  7. 4 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicExamStudentServiceImpl.java
  8. 5 1
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ConditionServiceImpl.java
  9. 2 2
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamCardServiceImpl.java
  10. 6 6
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java
  11. 4 4
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java
  12. 24 1
      distributed-print-business/src/main/resources/mapper/ConditionMapper.xml
  13. 2 2
      distributed-print-business/src/main/resources/mapper/ExamCardMapper.xml
  14. 12 11
      distributed-print-business/src/main/resources/mapper/ExamDetailMapper.xml
  15. 29 27
      distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml
  16. 1 1
      distributed-print-business/src/main/resources/mapper/TeachCourseMapper.xml
  17. 2 2
      distributed-print/src/main/java/com/qmth/distributed/print/api/ConditionController.java
  18. 2 2
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamCardController.java
  19. 6 6
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamPrintPlanController.java
  20. 5 1
      distributed-print/src/main/java/com/qmth/distributed/print/api/mark/MarkPaperController.java
  21. 1 1
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/mapper/MarkStudentMapper.java
  22. 2 1
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkDocumentService.java
  23. 2 1
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkPaperService.java
  24. 1 1
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkStudentService.java
  25. 1 1
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/ScanConditionService.java
  26. 4 2
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkDocumentServiceImpl.java
  27. 4 2
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkPaperServiceImpl.java
  28. 2 2
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkStudentServiceImpl.java
  29. 2 2
      teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanConditionServiceImpl.java
  30. 12 16
      teachcloud-mark/src/main/resources/mapper/MarkPaperMapper.xml
  31. 2 2
      teachcloud-mark/src/main/resources/mapper/MarkPaperPackageMapper.xml
  32. 13 18
      teachcloud-mark/src/main/resources/mapper/MarkStudentMapper.xml
  33. 1 2
      teachcloud-mark/src/main/resources/mapper/MarkTaskMapper.xml
  34. 1 2
      teachcloud-mark/src/main/resources/mapper/ScanAnswerCardMapper.xml
  35. 4 4
      teachcloud-mark/src/main/resources/mapper/ScanPackageMapper.xml

+ 13 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/RelatePaperDto.java

@@ -1,5 +1,8 @@
 package com.qmth.distributed.print.business.bean.dto;
 package com.qmth.distributed.print.business.bean.dto;
 
 
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -9,6 +12,8 @@ public class RelatePaperDto {
 
 
     private String id;
     private String id;
     private String schoolId;
     private String schoolId;
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long courseId;
     private String courseCode;
     private String courseCode;
     private String courseName;
     private String courseName;
     private String paperNumber;
     private String paperNumber;
@@ -30,6 +35,14 @@ public class RelatePaperDto {
         this.schoolId = schoolId;
         this.schoolId = schoolId;
     }
     }
 
 
+    public Long getCourseId() {
+        return courseId;
+    }
+
+    public void setCourseId(Long courseId) {
+        this.courseId = courseId;
+    }
+
     public String getCourseCode() {
     public String getCourseCode() {
         return courseCode;
         return courseCode;
     }
     }

+ 2 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ConditionMapper.java

@@ -66,4 +66,6 @@ public interface ConditionMapper {
 
 
     List<BasicCourse> listCultureProgramCourse(@Param("schoolId") Long schoolId, @Param("professionalId") Long professionalId, @Param("cultureProgramId") Long cultureProgramId,
     List<BasicCourse> listCultureProgramCourse(@Param("schoolId") Long schoolId, @Param("professionalId") Long professionalId, @Param("cultureProgramId") Long cultureProgramId,
                                                @Param("semesterId") Long semesterId, @Param("dpr") DataPermissionRule dpr);
                                                @Param("semesterId") Long semesterId, @Param("dpr") DataPermissionRule dpr);
+
+    List<BasicCourse> listCourseForDocument(@Param("examId") Long examId, @Param("dpr") DataPermissionRule dpr);
 }
 }

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamCardMapper.java

@@ -23,7 +23,7 @@ public interface ExamCardMapper extends BaseMapper<ExamCard> {
 
 
     List<ExamCard> listCustom(@Param("schoolId") Long schoolId, @Param("courseId") Long courseId, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
     List<ExamCard> listCustom(@Param("schoolId") Long schoolId, @Param("courseId") Long courseId, @Param("type") String type, @Param("cardRuleId") Long cardRuleId);
 
 
-    IPage<ExamCard> listPage(@Param("page") Page<ExamCard> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cardType") String cardType, @Param("title") String title, @Param("createMethod") String createMethod, @Param("enable") Boolean enable, @Param("createStartTime") Long createStartTime, @Param("createEndTime") Long createEndTime, @Param("dpr") DataPermissionRule dpr);
+    IPage<ExamCard> listPage(@Param("page") Page<ExamCard> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("cardType") String cardType, @Param("title") String title, @Param("createMethod") String createMethod, @Param("enable") Boolean enable, @Param("createStartTime") Long createStartTime, @Param("createEndTime") Long createEndTime, @Param("dpr") DataPermissionRule dpr);
 
 
     List<ExamCard> listCustomByExamStage(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("type") String type);
     List<ExamCard> listCustomByExamStage(@Param("schoolId") Long schoolId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("type") String type);
 }
 }

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamTaskMapper.java

@@ -39,7 +39,7 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
 
     IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
     IPage<ExamTaskDetailDto> listTaskPaper(Page<ExamTaskDetailDto> page, @Param("schoolId") Long schoolId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("dpr") DataPermissionRule dpr, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
 
 
-    List<RelatePaperDto> listPaperNumbers(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
+    List<RelatePaperDto> listPaperNumbers(@Param("schoolId") Long schoolId, @Param("courseId") Long courseId, @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
 
 
     ExamTaskDetailCardDto applyGetOne(@Param("examTaskId") Long examTaskId, @Param("source") String source);
     ExamTaskDetailCardDto applyGetOne(@Param("examTaskId") Long examTaskId, @Param("source") String source);
 
 
@@ -97,6 +97,6 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
      */
      */
     public WorkResult getFlowInfo(@Param("flowId") Long flowId, @Param("taskId") Long taskId);
     public WorkResult getFlowInfo(@Param("flowId") Long flowId, @Param("taskId") Long taskId);
 
 
-    IPage<MakeupExamTaskDto> listMakeupExamTask(@Param("page") Page<MakeupExamTaskDto> page, @Param("printPlanId") Long printPlanId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("collegeId") Long collegeId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("userName") String userName);
+    IPage<MakeupExamTaskDto> listMakeupExamTask(@Param("page") Page<MakeupExamTaskDto> page, @Param("printPlanId") Long printPlanId, @Param("semesterId") Long semesterId, @Param("examId") Long examId, @Param("collegeId") Long collegeId, @Param("courseId") Long courseId, @Param("paperNumber") String paperNumber, @Param("userName") String userName);
 
 
 }
 }

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamCardService.java

@@ -25,7 +25,7 @@ public interface ExamCardService extends IService<ExamCard> {
 
 
     List<ExamCard> listSelectCard(Long examId, Long courseId, String paperNumber);
     List<ExamCard> listSelectCard(Long examId, Long courseId, String paperNumber);
 
 
-    IPage<ExamCard> listPage(Long semesterId, Long examId, String courseCode, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize);
+    IPage<ExamCard> listPage(Long semesterId, Long examId, Long courseId, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize);
 
 
     Map<String, String> saveGeneric(GenericExamCardParams params) throws Exception;
     Map<String, String> saveGeneric(GenericExamCardParams params) throws Exception;
 
 

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamTaskService.java

@@ -64,7 +64,7 @@ public interface ExamTaskService extends IService<ExamTask> {
 
 
     IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize);
     IPage<ExamTaskDetailDto> listTaskPaper(Long semesterId, Long examId, Long courseId, String paperNumber, Long startTime, Long endTime, Integer pageNumber, Integer pageSize);
 
 
-    List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, String courseCode);
+    List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, Long courseId);
 
 
     Map<String, Object> saveExamTaskDetail(ExamTaskDetail examTaskDetail) throws IOException;
     Map<String, Object> saveExamTaskDetail(ExamTaskDetail examTaskDetail) throws IOException;
 
 
@@ -176,7 +176,7 @@ public interface ExamTaskService extends IService<ExamTask> {
 
 
     ExamTask getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber);
     ExamTask getByExamIdAndCourseIdAndPaperNumber(Long examId, Long courseId, String paperNumber);
 
 
-    IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, String courseCode, String paperNumber, String userName, Integer pageNumber, Integer pageSize);
+    IPage<MakeupExamTaskDto> listMakeupExamTask(Long printPlanId, Long semesterId, Long examId, Long collegeId, Long courseId, String paperNumber, String userName, Integer pageNumber, Integer pageSize);
 
 
     void saveMakeupTask(MakeupExamTaskTotalParam makeupExamTaskTotalParam);
     void saveMakeupTask(MakeupExamTaskTotalParam makeupExamTaskTotalParam);
 
 

+ 4 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicExamStudentServiceImpl.java

@@ -202,6 +202,8 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
                     markPaperService.deleteByExamIdAndPaperNumber(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber());
                     markPaperService.deleteByExamIdAndPaperNumber(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber());
                 } else {
                 } else {
                     markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(), null);
                     markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(), null);
+                    markPaperService.updateUploadCount(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber(),
+                            markStudentService.countUploadedByExamIdAndPaperNumber(basicExamStudent.getExamId(), basicExamStudent.getPaperNumber()));
                 }
                 }
             }
             }
             this.removeByIds(idList);
             this.removeByIds(idList);
@@ -434,6 +436,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
                 MarkPaper finalMarkPaper = markPaper;
                 MarkPaper finalMarkPaper = markPaper;
                 entry.getValue().forEach(m -> markStudentService.updateByBasicExamStudent(m, finalMarkPaper, secretNumberSet));
                 entry.getValue().forEach(m -> markStudentService.updateByBasicExamStudent(m, finalMarkPaper, secretNumberSet));
                 markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(examId, entry.getKey(), markPaper.getPaperType());
                 markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(examId, entry.getKey(), markPaper.getPaperType());
+                markPaperService.updateUploadCount(examId, entry.getKey(), markStudentService.countUploadedByExamIdAndPaperNumber(examId, entry.getKey()));
             }
             }
         }
         }
 
 
@@ -443,6 +446,7 @@ public class BasicExamStudentServiceImpl extends ServiceImpl<BasicExamStudentMap
                 long studentCount = markStudentService.countByExamIdAndPaperNumber(examId, paperNumber, null);
                 long studentCount = markStudentService.countByExamIdAndPaperNumber(examId, paperNumber, null);
                 if (studentCount > 0) {
                 if (studentCount > 0) {
                     markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(examId, paperNumber, null);
                     markPaperService.updateStudentCountByExamIdAndPaperNumberAndPaperType(examId, paperNumber, null);
+                    markPaperService.updateUploadCount(examId, paperNumber, markStudentService.countUploadedByExamIdAndPaperNumber(examId, paperNumber));
                 } else {
                 } else {
                     markPaperService.deleteByExamIdAndPaperNumber(examId, paperNumber);
                     markPaperService.deleteByExamIdAndPaperNumber(examId, paperNumber);
                 }
                 }

+ 5 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ConditionServiceImpl.java

@@ -133,7 +133,11 @@ public class ConditionServiceImpl implements ConditionService {
         // 下载管理(653)
         // 下载管理(653)
         else if ("653".equals(privilegeIdString)) {
         else if ("653".equals(privilegeIdString)) {
             return conditionMapper.listCourseFromExamTaskByUserId(examId, dpr);
             return conditionMapper.listCourseFromExamTaskByUserId(examId, dpr);
-        } else {
+        }
+        // 文档管理(577)
+        else if ("577".equals(privilegeIdString)){
+            return conditionMapper.listCourseForDocument(examId, dpr);
+        }else {
             return conditionMapper.listCourse(semesterId, examId, enable, printPlanIds, dpr);
             return conditionMapper.listCourse(semesterId, examId, enable, printPlanIds, dpr);
         }
         }
     }
     }

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamCardServiceImpl.java

@@ -200,11 +200,11 @@ public class ExamCardServiceImpl extends ServiceImpl<ExamCardMapper, ExamCard> i
     }
     }
 
 
     @Override
     @Override
-    public IPage<ExamCard> listPage(Long semesterId, Long examId, String courseCode, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize) {
+    public IPage<ExamCard> listPage(Long semesterId, Long examId, Long courseId, String paperNumber, String cardType, String title, String createMethod, Boolean enable, Long createStartTime, Long createEndTime, Integer pageNumber, Integer pageSize) {
         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());
-        IPage<ExamCard> cardPageDtoIPage = this.baseMapper.listPage(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseCode, paperNumber, cardType, title, createMethod, enable, createStartTime, createEndTime, dpr);
+        IPage<ExamCard> cardPageDtoIPage = this.baseMapper.listPage(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, courseId, paperNumber, cardType, title, createMethod, enable, createStartTime, createEndTime, dpr);
         for (ExamCard record : cardPageDtoIPage.getRecords()) {
         for (ExamCard record : cardPageDtoIPage.getRecords()) {
             if (StringUtils.isNotBlank(record.getJpgAttachment())) {
             if (StringUtils.isNotBlank(record.getJpgAttachment())) {
                 List<JSONObject> mapList = JSON.parseArray(record.getJpgAttachment(), JSONObject.class);
                 List<JSONObject> mapList = JSON.parseArray(record.getJpgAttachment(), JSONObject.class);

+ 6 - 6
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java

@@ -438,15 +438,15 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
         queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
-        if (StringUtils.isNotBlank(param)) {
-            queryWrapper.lambda().like(ExamDetail::getExamPlace, SystemConstant.translateSpecificSign(param));
-        }
         if (examId != null) {
         if (examId != null) {
             queryWrapper.lambda().eq(ExamDetail::getExamId, examId);
             queryWrapper.lambda().eq(ExamDetail::getExamId, examId);
         }
         }
         if (printPlanIdList.size() > 0) {
         if (printPlanIdList.size() > 0) {
             queryWrapper.lambda().in(ExamDetail::getPrintPlanId, printPlanIdList);
             queryWrapper.lambda().in(ExamDetail::getPrintPlanId, printPlanIdList);
         }
         }
+        if (StringUtils.isNotBlank(param)) {
+            queryWrapper.lambda().like(ExamDetail::getExamPlace, SystemConstant.translateSpecificSign(param));
+        }
         List<ExamDetail> examDetail = this.list(queryWrapper);
         List<ExamDetail> examDetail = this.list(queryWrapper);
         return examDetail.stream().filter(m -> StringUtils.isNotBlank(m.getExamPlace())).map(ExamDetail::getExamPlace).distinct().collect(Collectors.toList());
         return examDetail.stream().filter(m -> StringUtils.isNotBlank(m.getExamPlace())).map(ExamDetail::getExamPlace).distinct().collect(Collectors.toList());
     }
     }
@@ -457,15 +457,15 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
         QueryWrapper<ExamDetail> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
         queryWrapper.lambda().eq(ExamDetail::getSchoolId, schoolId);
-        if (StringUtils.isNotBlank(param)) {
-            queryWrapper.lambda().like(ExamDetail::getExamRoom, SystemConstant.translateSpecificSign(param));
-        }
         if (examId != null) {
         if (examId != null) {
             queryWrapper.lambda().eq(ExamDetail::getExamId, examId);
             queryWrapper.lambda().eq(ExamDetail::getExamId, examId);
         }
         }
         if (printPlanIdList.size() > 0) {
         if (printPlanIdList.size() > 0) {
             queryWrapper.lambda().in(ExamDetail::getPrintPlanId, printPlanIdList);
             queryWrapper.lambda().in(ExamDetail::getPrintPlanId, printPlanIdList);
         }
         }
+        if (StringUtils.isNotBlank(param)) {
+            queryWrapper.lambda().like(ExamDetail::getExamRoom, SystemConstant.translateSpecificSign(param));
+        }
         List<ExamDetail> examDetail = this.list(queryWrapper);
         List<ExamDetail> examDetail = this.list(queryWrapper);
         return examDetail.stream().filter(m -> StringUtils.isNotBlank(m.getExamRoom())).map(ExamDetail::getExamRoom).distinct().collect(Collectors.toList());
         return examDetail.stream().filter(m -> StringUtils.isNotBlank(m.getExamRoom())).map(ExamDetail::getExamRoom).distinct().collect(Collectors.toList());
     }
     }

+ 4 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -675,11 +675,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @Override
     @Override
-    public List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, String courseCode) {
+    public List<RelatePaperDto> listPaperTypes(Long examTaskId, Long printPlanId, Long courseId) {
         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());
-        List<RelatePaperDto> list = this.baseMapper.listPaperNumbers(schoolId, courseCode, ExamStatusEnum.SUBMIT.name(), dpr);
+        List<RelatePaperDto> list = this.baseMapper.listPaperNumbers(schoolId, courseId, ExamStatusEnum.SUBMIT.name(), dpr);
         for (RelatePaperDto relatePaperDto : list) {
         for (RelatePaperDto relatePaperDto : list) {
             QueryWrapper<ExamTaskDetail> queryWrapper = new QueryWrapper<>();
             QueryWrapper<ExamTaskDetail> queryWrapper = new QueryWrapper<>();
             queryWrapper.lambda().eq(ExamTaskDetail::getExamTaskId, relatePaperDto.getId()).eq(ExamTaskDetail::getEnable, true);
             queryWrapper.lambda().eq(ExamTaskDetail::getExamTaskId, relatePaperDto.getId()).eq(ExamTaskDetail::getEnable, true);
@@ -1672,7 +1672,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
     }
 
 
     @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, Long courseId, String paperNumber, String userName, Integer pageNumber, Integer pageSize) {
         if (semesterId == null) {
         if (semesterId == null) {
             throw ExceptionResultEnum.ERROR.exception("请选择学期");
             throw ExceptionResultEnum.ERROR.exception("请选择学期");
         }
         }
@@ -1680,7 +1680,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             throw ExceptionResultEnum.ERROR.exception("请选择考试");
             throw ExceptionResultEnum.ERROR.exception("请选择考试");
         }
         }
         Page<MakeupExamTaskDto> page = new Page<>(pageNumber, pageSize);
         Page<MakeupExamTaskDto> page = new Page<>(pageNumber, pageSize);
-        return this.baseMapper.listMakeupExamTask(page, printPlanId, semesterId, examId, collegeId, courseCode, paperNumber, userName);
+        return this.baseMapper.listMakeupExamTask(page, printPlanId, semesterId, examId, collegeId, courseId, paperNumber, userName);
     }
     }
 
 
     @Override
     @Override

+ 24 - 1
distributed-print-business/src/main/resources/mapper/ConditionMapper.xml

@@ -868,5 +868,28 @@
             )
             )
         </where>
         </where>
     </select>
     </select>
-
+    <select id="listCourseForDocument" resultType="com.qmth.teachcloud.common.entity.BasicCourse">
+        SELECT bc.id, bc.code,bc.name
+        FROM
+        mark_paper t
+        left join basic_course bc on t.course_id = bc.id
+        WHERE
+        t.exam_id = #{examId}
+        AND t.status = 'FINISH'
+        <if test="dpr != null">
+            <if test="dpr.requestUserId != null">
+                AND t.user_id = #{dpr.requestUserId}
+            </if>
+            <if test="dpr.courseUserId != null">
+                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{req.examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = t.course_id)
+            </if>
+            <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
+                AND bc.teaching_room_id IN
+                <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </if>
+        ORDER BY t.id desc
+    </select>
 </mapper>
 </mapper>

+ 2 - 2
distributed-print-business/src/main/resources/mapper/ExamCardMapper.xml

@@ -104,8 +104,8 @@
                     <if test="examId != null">
                     <if test="examId != null">
                         AND et.exam_id = #{examId}
                         AND et.exam_id = #{examId}
                     </if>
                     </if>
-                    <if test="courseCode != null">
-                        AND et.course_code = #{courseCode}
+                    <if test="courseId != null">
+                        AND et.course_id = #{courseId}
                     </if>
                     </if>
                     <if test="paperNumber != null">
                     <if test="paperNumber != null">
                         AND et.paper_number = #{paperNumber}
                         AND et.paper_number = #{paperNumber}

+ 12 - 11
distributed-print-business/src/main/resources/mapper/ExamDetailMapper.xml

@@ -139,7 +139,7 @@
                              exam_id = #{examId}) et ON edc.course_id = et.course_id
                              exam_id = #{examId}) et ON edc.course_id = et.course_id
                             AND edc.paper_number = et.paper_number
                             AND edc.paper_number = et.paper_number
                             LEFT JOIN
                             LEFT JOIN
-                                sys_user su ON et.user_id = su.id
+                                basic_course bc ON et.course_id = bc.id
                     WHERE
                     WHERE
                         ed.id = edc.exam_detail_id
                         ed.id = edc.exam_detail_id
                         <if test="courseId != null">
                         <if test="courseId != null">
@@ -156,7 +156,7 @@
                                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                             </if>
                             </if>
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                                AND su.org_id IN
+                                AND bc.teaching_room_id IN
                                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                                     #{item}
                                     #{item}
                                 </foreach>
                                 </foreach>
@@ -195,11 +195,10 @@
         LEFT JOIN
         LEFT JOIN
         basic_course bc ON cou.course_id = bc.id
         basic_course bc ON cou.course_id = bc.id
         LEFT JOIN
         LEFT JOIN
-        basic_exam be on be.id = det.exam_id
+        (select * from basic_exam where enable = true) be on be.id = det.exam_id
         LEFT JOIN
         LEFT JOIN
-        basic_semester bs on bs.id = be.semester_id
+        (select * from basic_semester where enable = true) bs on bs.id = be.semester_id
         <where>
         <where>
-            and be.enable = true
             <if test="schoolId != null and schoolId > 0">
             <if test="schoolId != null and schoolId > 0">
                 AND det.school_id = #{schoolId}
                 AND det.school_id = #{schoolId}
             </if>
             </if>
@@ -235,7 +234,7 @@
                     AND det.create_id = #{dpr.requestUserId}
                     AND det.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND det.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -340,7 +339,7 @@
                         AND b.id = #{dpr.requestUserId}
                         AND b.id = #{dpr.requestUserId}
                     </if>
                     </if>
                     <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                     <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                        AND b.org_id IN
+                        AND bc.teaching_room_id IN
                         <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                             #{item}
                             #{item}
                         </foreach>
                         </foreach>
@@ -500,7 +499,7 @@
                          WHERE
                          WHERE
                              exam_id = #{examId}) et ON edc.course_id = et.course_id
                              exam_id = #{examId}) et ON edc.course_id = et.course_id
                             AND edc.paper_number = et.paper_number
                             AND edc.paper_number = et.paper_number
-                            left join sys_user su ON et.user_id = su.id
+                            left join basic_course bc ON et.course_id = bc.id
                     WHERE
                     WHERE
                         ed.id = edc.exam_detail_id
                         ed.id = edc.exam_detail_id
                         <if test="courseId != null">
                         <if test="courseId != null">
@@ -514,10 +513,10 @@
                                 AND et.user_id = #{dpr.requestUserId}
                                 AND et.user_id = #{dpr.requestUserId}
                             </if>
                             </if>
                             <if test="dpr.courseUserId != null">
                             <if test="dpr.courseUserId != null">
-                                AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = et.course_code)
+                                AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = et.course_id)
                             </if>
                             </if>
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                                AND su.org_id IN
+                                AND bc.teaching_room_id IN
                                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                                     #{item}
                                     #{item}
                                 </foreach>
                                 </foreach>
@@ -683,6 +682,8 @@
         exam_detail det
         exam_detail det
         INNER JOIN
         INNER JOIN
         exam_detail_course cou ON det.id = cou.exam_detail_id
         exam_detail_course cou ON det.id = cou.exam_detail_id
+            LEFT JOIN
+            basic_course bc ON cou.course_id = bc.id
         LEFT JOIN
         LEFT JOIN
         exam_print_plan epp on epp.id = det.print_plan_id
         exam_print_plan epp on epp.id = det.print_plan_id
         LEFT JOIN
         LEFT JOIN
@@ -727,7 +728,7 @@
                     AND det.create_id = #{dpr.requestUserId}
                     AND det.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND det.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>

+ 29 - 27
distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml

@@ -108,7 +108,7 @@
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND d.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -223,20 +223,19 @@
         LEFT JOIN
         LEFT JOIN
             t_f_flow_approve e ON a.flow_id = e.flow_id
             t_f_flow_approve e ON a.flow_id = e.flow_id
         LEFT JOIN
         LEFT JOIN
-            basic_exam f on a.school_id = f.school_id and a.exam_id = f.id
+            (select * from basic_exam where enable = true) f on a.exam_id = f.id
         LEFT JOIN
         LEFT JOIN
-            basic_semester g on f.school_id = g.school_id and f.semester_id = g.id
+            (select * from basic_semester where enable = true) g on f.semester_id = g.id
         LEFT JOIN t_f_flow_join tffj on tffj.flow_id = e.flow_id
         LEFT JOIN t_f_flow_join tffj on tffj.flow_id = e.flow_id
         <where>
         <where>
             a.enable = true
             a.enable = true
-            and f.enable = true
-            <if test="userId != null and userId != ''">
-                and a.user_id = #{userId}
-            </if>
-            <if test="schoolId != null and schoolId != ''">
+            <if test="schoolId != null">
                 and a.school_id = #{schoolId}
                 and a.school_id = #{schoolId}
             </if>
             </if>
-            <if test="semesterId != null and semesterId != ''">
+            <if test="userId != null">
+                and a.user_id = #{userId}
+            </if>
+            <if test="semesterId != null">
                 and g.id = #{semesterId}
                 and g.id = #{semesterId}
             </if>
             </if>
             <if test="examId != null and examId != ''">
             <if test="examId != null and examId != ''">
@@ -500,11 +499,11 @@
         LEFT JOIN
         LEFT JOIN
         basic_card_rule e ON a.card_rule_id = e.id
         basic_card_rule e ON a.card_rule_id = e.id
         LEFT JOIN
         LEFT JOIN
-        basic_exam be ON a.exam_id = be.id
+        (select * from basic_exam where enable = true) be ON a.exam_id = be.id
         LEFT JOIN
         LEFT JOIN
-        basic_semester bs ON be.semester_id = bs.id
+        (select * from basic_semester where enable = true) bs ON be.semester_id = bs.id
         <where>
         <where>
-            and be.enable = true and (a.status = 'SUBMIT' and (a.flow_id is null or (a.flow_id is not null and g.status = 'FINISH')))
+            and (a.status = 'SUBMIT' and (a.flow_id is null or (a.flow_id is not null and g.status = 'FINISH')))
             <if test="schoolId != null and schoolId != ''">
             <if test="schoolId != null and schoolId != ''">
                 and a.school_id = #{schoolId}
                 and a.school_id = #{schoolId}
             </if>
             </if>
@@ -537,7 +536,7 @@
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = a.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND a.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -548,21 +547,22 @@
     </select>
     </select>
     <select id="listPaperNumbers" resultType="com.qmth.distributed.print.business.bean.dto.RelatePaperDto">
     <select id="listPaperNumbers" resultType="com.qmth.distributed.print.business.bean.dto.RelatePaperDto">
         SELECT
         SELECT
-        id,
-        school_id schoolId,
-        course_code courseCode,
-        course_name courseName,
-        paper_number paperNumber
+        et.id,
+        et.school_id schoolId,
+        et.course_id courseId,
+        bc.code courseCode,
+        bc.name courseName,
+        et.paper_number paperNumber
         FROM
         FROM
-        exam_task
+        exam_task et let join basic_course bc on et.course_id = bc.id
         <where>
         <where>
-            school_id = #{schoolId} and course_code = #{courseCode} and status = #{status} and enable = true
+            et.school_id = #{schoolId} and et.course_id = #{courseId} and et.status = #{status} and et.enable = true
             <if test="dpr != null">
             <if test="dpr != null">
                 <if test="dpr.requestUserId != null">
                 <if test="dpr.requestUserId != null">
-                    AND create_id = #{dpr.requestUserId}
+                    AND et.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -1229,8 +1229,8 @@
         FROM
         FROM
         (SELECT
         (SELECT
             et.exam_id,
             et.exam_id,
-            et.course_code,
-            et.course_name,
+            bc.code course_code,
+            bc.name course_name,
             et.paper_number,
             et.paper_number,
             su.login_name,
             su.login_name,
             su.real_name,
             su.real_name,
@@ -1256,11 +1256,13 @@
                 </if>
                 </if>
                 group by ed.exam_id , edc.paper_number
                 group by ed.exam_id , edc.paper_number
                 ) c on et.exam_id = c.exam_id and et.paper_number = c.paper_number
                 ) c on et.exam_id = c.exam_id and et.paper_number = c.paper_number
+        LEFT JOIN
+                basic_course bc ON et.course_id = bc.id
         WHERE
         WHERE
         be.semester_id = #{semesterId}
         be.semester_id = #{semesterId}
         AND et.exam_id = #{examId}
         AND et.exam_id = #{examId}
-        <if test="courseCode != null and courseCode != ''">
-            AND et.course_code = #{courseCode}
+        <if test="courseId != null">
+            AND et.course_id = #{courseId}
         </if>
         </if>
         <if test="paperNumber != null and paperNumber != ''">
         <if test="paperNumber != null and paperNumber != ''">
             AND et.paper_number = #{paperNumber}
             AND et.paper_number = #{paperNumber}
@@ -1274,7 +1276,7 @@
             FROM
             FROM
             basic_course bc
             basic_course bc
             WHERE
             WHERE
-            et.course_code = bc.code
+            et.course_id = bc.id
             AND bc.teaching_room_id = #{collegeId})
             AND bc.teaching_room_id = #{collegeId})
         </if>
         </if>
         AND etd.unexposed_paper_type is not null) a
         AND etd.unexposed_paper_type is not null) a

+ 1 - 1
distributed-print-business/src/main/resources/mapper/TeachCourseMapper.xml

@@ -37,7 +37,7 @@
                     AND tc.user_id = #{dpr.requestUserId}
                     AND tc.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>

+ 2 - 2
distributed-print/src/main/java/com/qmth/distributed/print/api/ConditionController.java

@@ -103,8 +103,8 @@ public class ConditionController {
     @RequestMapping(value = "/scan/campus/list", method = RequestMethod.POST)
     @RequestMapping(value = "/scan/campus/list", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Map.class)})
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Map.class)})
     public Result scanCampusList(@ApiParam(value = "考试ID", required = true) @RequestParam(value = "examId") Long examId,
     public Result scanCampusList(@ApiParam(value = "考试ID", required = true) @RequestParam(value = "examId") Long examId,
-                                 @ApiParam(value = "课程代码") @RequestParam(value = "courseCode", required = false) String courseCode, @ApiParam(value = "试卷编号") @RequestParam(value = "coursePaperId", required = false) String coursePaperId) {
-        return ResultUtil.ok(scanConditionService.scanCampusList(examId, courseCode, coursePaperId));
+                                 @ApiParam(value = "课程代码") @RequestParam(value = "courseId", required = false) Long courseId, @ApiParam(value = "试卷编号") @RequestParam(value = "coursePaperId", required = false) String coursePaperId) {
+        return ResultUtil.ok(scanConditionService.scanCampusList(examId, courseId, coursePaperId));
     }
     }
 
 
     @ApiOperation(value = "教学班字典")
     @ApiOperation(value = "教学班字典")

+ 2 - 2
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamCardController.java

@@ -53,7 +53,7 @@ public class ExamCardController {
     @RequestMapping(value = "/page", method = RequestMethod.POST)
     @RequestMapping(value = "/page", method = RequestMethod.POST)
     public Result page(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId,
     public Result page(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId,
                        @ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
                        @ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
-                       @ApiParam(value = "课程代码") @RequestParam(required = false) String courseCode,
+                       @ApiParam(value = "课程代码") @RequestParam(required = false) Long courseId,
                        @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                        @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
                        @ApiParam(value = "题卡类型(通卡或专卡)") @RequestParam(value = "cardType", required = false) String cardType,
                        @ApiParam(value = "题卡类型(通卡或专卡)") @RequestParam(value = "cardType", required = false) String cardType,
                        @ApiParam(value = "题卡名称模糊查询") @RequestParam(value = "title", required = false) String title,
                        @ApiParam(value = "题卡名称模糊查询") @RequestParam(value = "title", required = false) String title,
@@ -63,7 +63,7 @@ public class ExamCardController {
                        @ApiParam(value = "创建时间(结束)") @RequestParam(value = "createEndTime", required = false) Long createEndTime,
                        @ApiParam(value = "创建时间(结束)") @RequestParam(value = "createEndTime", required = false) Long createEndTime,
                        @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                        @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                        @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
                        @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        IPage<ExamCard> examCardIPage = examCardService.listPage(semesterId, examId, courseCode, paperNumber, cardType, title, createMethod, enable, createStartTime, createEndTime, pageNumber, pageSize);
+        IPage<ExamCard> examCardIPage = examCardService.listPage(semesterId, examId, courseId, paperNumber, cardType, title, createMethod, enable, createStartTime, createEndTime, pageNumber, pageSize);
         return ResultUtil.ok(examCardIPage);
         return ResultUtil.ok(examCardIPage);
     }
     }
 
 

+ 6 - 6
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamPrintPlanController.java

@@ -227,10 +227,10 @@ public class ExamPrintPlanController {
      */
      */
     @ApiOperation(value = "查询所有试卷编号/关联卷型")
     @ApiOperation(value = "查询所有试卷编号/关联卷型")
     @RequestMapping(value = "/relate_get_paper_numbers", method = RequestMethod.POST)
     @RequestMapping(value = "/relate_get_paper_numbers", method = RequestMethod.POST)
-    public Result relateGetPaperNumbers(@RequestParam(value = "examTaskId", required = true) Long examTaskId,
-                                        @RequestParam(value = "printPlanId", required = true) Long printPlanId,
-                                        @RequestParam(value = "courseCode", required = true) String courseCode) {
-        List<RelatePaperDto> list = examTaskService.listPaperTypes(examTaskId, printPlanId, courseCode);
+    public Result relateGetPaperNumbers(@RequestParam(value = "examTaskId") Long examTaskId,
+                                        @RequestParam(value = "printPlanId") Long printPlanId,
+                                        @RequestParam(value = "courseId") Long courseId) {
+        List<RelatePaperDto> list = examTaskService.listPaperTypes(examTaskId, printPlanId, courseId);
         return ResultUtil.ok(list);
         return ResultUtil.ok(list);
     }
     }
 
 
@@ -243,12 +243,12 @@ public class ExamPrintPlanController {
                                  @ApiParam(value = "学期") @RequestParam(value = "semesterId", required = false) Long semesterId,
                                  @ApiParam(value = "学期") @RequestParam(value = "semesterId", required = false) Long semesterId,
                                  @ApiParam(value = "考试") @RequestParam(value = "examId", required = false) Long examId,
                                  @ApiParam(value = "考试") @RequestParam(value = "examId", required = false) Long examId,
                                  @ApiParam(value = "开课学院") @RequestParam(value = "collegeId", required = false) Long collegeId,
                                  @ApiParam(value = "开课学院") @RequestParam(value = "collegeId", required = false) Long collegeId,
-                                 @ApiParam(value = "课程代码") @RequestParam(value = "courseCode", required = false) String courseCode,
+                                 @ApiParam(value = "课程ID") @RequestParam(value = "courseId", required = false) Long courseId,
                                  @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
                                  @ApiParam(value = "试卷编号") @RequestParam(value = "paperNumber", required = false) String paperNumber,
                                  @ApiParam(value = "命题老师") @RequestParam(value = "userName", required = false) String userName,
                                  @ApiParam(value = "命题老师") @RequestParam(value = "userName", required = false) String userName,
                                  @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                                  @ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                                  @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
                                  @ApiParam(value = "分页数", required = true) @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        IPage<MakeupExamTaskDto> list = examTaskService.listMakeupExamTask(printPlanId, semesterId, examId, collegeId, courseCode, paperNumber, userName, pageNumber, pageSize);
+        IPage<MakeupExamTaskDto> list = examTaskService.listMakeupExamTask(printPlanId, semesterId, examId, collegeId, courseId, paperNumber, userName, pageNumber, pageSize);
         return ResultUtil.ok(list);
         return ResultUtil.ok(list);
     }
     }
 
 

+ 5 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/mark/MarkPaperController.java

@@ -3,6 +3,7 @@ package com.qmth.distributed.print.api.mark;
 
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.service.BasicExamService;
 import com.qmth.teachcloud.common.annotation.OperationLogDetail;
 import com.qmth.teachcloud.common.annotation.OperationLogDetail;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.enums.log.OperationTypeEnum;
 import com.qmth.teachcloud.common.enums.log.OperationTypeEnum;
@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.RestController;
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Max;
 import javax.validation.constraints.Min;
 import javax.validation.constraints.Min;
+import java.io.PipedReader;
 import java.util.List;
 import java.util.List;
 
 
 /**
 /**
@@ -38,6 +40,8 @@ import java.util.List;
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_MARK + "/paper")
 @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + SystemConstant.PREFIX_URL_MARK + "/paper")
 public class MarkPaperController {
 public class MarkPaperController {
 
 
+    @Resource
+    private BasicExamService basicExamService;
     @Resource
     @Resource
     private MarkPaperService markPaperService;
     private MarkPaperService markPaperService;
 
 
@@ -50,7 +54,7 @@ public class MarkPaperController {
     public Result finish(@ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
     public Result finish(@ApiParam(value = "考试ID", required = true) @RequestParam Long examId,
                          @ApiParam(value = "试卷编号", required = true) @RequestParam List<String> paperNumbers,
                          @ApiParam(value = "试卷编号", required = true) @RequestParam List<String> paperNumbers,
                          @ApiParam(value = "状态", required = true) @RequestParam MarkPaperStatus status) {
                          @ApiParam(value = "状态", required = true) @RequestParam MarkPaperStatus status) {
-        return ResultUtil.ok(markPaperService.finishPaper(examId, paperNumbers, status));
+        return ResultUtil.ok(markPaperService.finishPaper(basicExamService.getById(examId), paperNumbers, status));
     }
     }
 
 
     /**
     /**

+ 1 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/mapper/MarkStudentMapper.java

@@ -115,7 +115,7 @@ public interface MarkStudentMapper extends BaseMapper<MarkStudent> {
 
 
     int countAssignedNew(@Param("markStudent") MarkStudent markStudent, @Param("dpr") DataPermissionRule dpr, @Param("teachClassName") String teachClassName);
     int countAssignedNew(@Param("markStudent") MarkStudent markStudent, @Param("dpr") DataPermissionRule dpr, @Param("teachClassName") String teachClassName);
 
 
-    List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(@Param("examId") Long examId, @Param("courseCode") String courseCode, @Param("coursePaperId") String coursePaperId,
+    List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(@Param("examId") Long examId, @Param("courseId") Long courseId, @Param("coursePaperId") String coursePaperId,
                                                                            @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
                                                                            @Param("status") String status, @Param("dpr") DataPermissionRule dpr);
 
 
     BasicTeachClazz getBasicTeachClazzById(Long clazzId);
     BasicTeachClazz getBasicTeachClazzById(Long clazzId);

+ 2 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkDocumentService.java

@@ -2,6 +2,7 @@ package com.qmth.teachcloud.mark.service;
 
 
 import java.util.List;
 import java.util.List;
 
 
+import com.qmth.teachcloud.common.entity.BasicExam;
 import com.qmth.teachcloud.mark.entity.MarkPaper;
 import com.qmth.teachcloud.mark.entity.MarkPaper;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
 
@@ -25,5 +26,5 @@ public interface MarkDocumentService extends IService<MarkDocument> {
 
 
     String save(Long examId, String paperNumber, String documentName, MultipartFile file, String md5);
     String save(Long examId, String paperNumber, String documentName, MultipartFile file, String md5);
 
 
-    void initMarkDocument(MarkPaper markPaper);
+    void initMarkDocument(BasicExam basicExam, MarkPaper markPaper);
 }
 }

+ 2 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkPaperService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import com.qmth.teachcloud.common.bean.dto.DataPermissionRule;
 import com.qmth.teachcloud.common.bean.dto.mark.MarkSettingDto;
 import com.qmth.teachcloud.common.bean.dto.mark.MarkSettingDto;
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingParam;
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingParam;
+import com.qmth.teachcloud.common.entity.BasicExam;
 import com.qmth.teachcloud.common.enums.mark.MarkPaperStatus;
 import com.qmth.teachcloud.common.enums.mark.MarkPaperStatus;
 import com.qmth.teachcloud.mark.bean.archivescore.ArchiveScoreQuery;
 import com.qmth.teachcloud.mark.bean.archivescore.ArchiveScoreQuery;
 import com.qmth.teachcloud.mark.bean.archivescore.ArchiveScoreVo;
 import com.qmth.teachcloud.mark.bean.archivescore.ArchiveScoreVo;
@@ -37,7 +38,7 @@ public interface MarkPaperService extends IService<MarkPaper> {
 
 
     void saveBatchPaperSetting(MarkPaperSettingParam markPaperSettingParam);
     void saveBatchPaperSetting(MarkPaperSettingParam markPaperSettingParam);
 
 
-    Boolean finishPaper(Long examId, List<String> paperNumbers, MarkPaperStatus status);
+    Boolean finishPaper(BasicExam basicExam, List<String> paperNumbers, MarkPaperStatus status);
 
 
     /**
     /**
      * 校验试卷
      * 校验试卷

+ 1 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkStudentService.java

@@ -192,7 +192,7 @@ public interface MarkStudentService extends IService<MarkStudent> {
 
 
     int countAbsentByExamIdAndPaperNumber(Long examId, String paperNumber);
     int countAbsentByExamIdAndPaperNumber(Long examId, String paperNumber);
 
 
-    List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(Long examId, String courseCode,
+    List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(Long examId, Long courseId,
                                                                            String coursePaperId, String status, DataPermissionRule dpr);
                                                                            String coursePaperId, String status, DataPermissionRule dpr);
 
 
     int countUnexistByExamIdAndPaperNumberAndPaperType(Long examId, String paperNumber, String paperType);
     int countUnexistByExamIdAndPaperNumberAndPaperType(Long examId, String paperNumber, String paperType);

+ 1 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/ScanConditionService.java

@@ -16,5 +16,5 @@ public interface ScanConditionService {
 
 
     List<CoursePaperNumberDto> scanCourseList(Long examId);
     List<CoursePaperNumberDto> scanCourseList(Long examId);
 
 
-    List<CampusExamRoomDto> scanCampusList(Long examId, String courseCode, String coursePaperId);
+    List<CampusExamRoomDto> scanCampusList(Long examId, Long courseId, String coursePaperId);
 }
 }

+ 4 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkDocumentServiceImpl.java

@@ -7,6 +7,8 @@ import java.util.Objects;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 
 
+import com.qmth.teachcloud.common.entity.BasicExam;
+import com.qmth.teachcloud.common.enums.ExamModelEnum;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -160,7 +162,7 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
     }
     }
 
 
     @Override
     @Override
-    public void initMarkDocument(MarkPaper markPaper) {
+    public void initMarkDocument(BasicExam basicExam, MarkPaper markPaper) {
         List<MarkDocument> markDocuments = new ArrayList<>();
         List<MarkDocument> markDocuments = new ArrayList<>();
         for (DocumentType documentType : DocumentType.getOptionList(false)) {
         for (DocumentType documentType : DocumentType.getOptionList(false)) {
             MarkDocument markDocument = null;
             MarkDocument markDocument = null;
@@ -187,7 +189,7 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
             } else if (documentType.equals(DocumentType.PAPER_REPORT)) {
             } else if (documentType.equals(DocumentType.PAPER_REPORT)) {
 //                    markDocument.setFileCount(1);
 //                    markDocument.setFileCount(1);
             } else if (documentType.equals(DocumentType.APPROVE_RECORD)) {
             } else if (documentType.equals(DocumentType.APPROVE_RECORD)) {
-                markDocument.setFileCount(1);
+                markDocument.setFileCount(basicExam != null && !ExamModelEnum.MODEL4.equals(basicExam.getExamModel()) ? 1 : 0);
             } else if (documentType.equals(DocumentType.SCORE)) {
             } else if (documentType.equals(DocumentType.SCORE)) {
                 markDocument.setFileCount(1);
                 markDocument.setFileCount(1);
             } else if (documentType.equals(DocumentType.SCORE_REPORT)) {
             } else if (documentType.equals(DocumentType.SCORE_REPORT)) {

+ 4 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkPaperServiceImpl.java

@@ -13,6 +13,7 @@ import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingConfi
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingList;
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingList;
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingParam;
 import com.qmth.teachcloud.common.bean.params.mark.setting.MarkPaperSettingParam;
 import com.qmth.teachcloud.common.entity.BasicCourse;
 import com.qmth.teachcloud.common.entity.BasicCourse;
+import com.qmth.teachcloud.common.entity.BasicExam;
 import com.qmth.teachcloud.common.entity.MarkQuestion;
 import com.qmth.teachcloud.common.entity.MarkQuestion;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.entity.SysUser;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
@@ -188,7 +189,8 @@ public class MarkPaperServiceImpl extends ServiceImpl<MarkPaperMapper, MarkPaper
     }
     }
 
 
     @Override
     @Override
-    public Boolean finishPaper(Long examId, List<String> paperNumbers, MarkPaperStatus status) {
+    public Boolean finishPaper(BasicExam basicExam, List<String> paperNumbers, MarkPaperStatus status) {
+        Long examId = basicExam.getId();
         for (String paperNumber : paperNumbers) {
         for (String paperNumber : paperNumbers) {
             MarkPaper markPaper = this.getByExamIdAndPaperNumber(examId, paperNumber);
             MarkPaper markPaper = this.getByExamIdAndPaperNumber(examId, paperNumber);
             if (MarkPaperStatus.FINISH.equals(status)) {
             if (MarkPaperStatus.FINISH.equals(status)) {
@@ -238,7 +240,7 @@ public class MarkPaperServiceImpl extends ServiceImpl<MarkPaperMapper, MarkPaper
                 }
                 }
 
 
                 // 结束评卷时,文档进行归档
                 // 结束评卷时,文档进行归档
-                markDocumentService.initMarkDocument(markPaper);
+                markDocumentService.initMarkDocument(basicExam, markPaper);
             }
             }
 
 
             UpdateWrapper<MarkPaper> updateWrapper = new UpdateWrapper<>();
             UpdateWrapper<MarkPaper> updateWrapper = new UpdateWrapper<>();

+ 2 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkStudentServiceImpl.java

@@ -1573,9 +1573,9 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
     }
     }
 
 
     @Override
     @Override
-    public List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(Long examId, String courseCode,
+    public List<MarkStudent> listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(Long examId, Long courseId,
                                                                                   String coursePaperId, String status, DataPermissionRule dpr) {
                                                                                   String coursePaperId, String status, DataPermissionRule dpr) {
-        return this.baseMapper.listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(examId, courseCode, coursePaperId,
+        return this.baseMapper.listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(examId, courseId, coursePaperId,
                 status, dpr);
                 status, dpr);
     }
     }
 
 

+ 2 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanConditionServiceImpl.java

@@ -106,10 +106,10 @@ public class ScanConditionServiceImpl implements ScanConditionService {
     }
     }
 
 
     @Override
     @Override
-    public List<CampusExamRoomDto> scanCampusList(Long examId, String courseCode, String coursePaperId) {
+    public List<CampusExamRoomDto> scanCampusList(Long examId, Long courseId, String coursePaperId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), ServletUtil.getRequest().getServletPath());
-        List<MarkStudent> markStudentList = markStudentService.listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(examId, courseCode, coursePaperId, MarkPaperStatus.FORMAL.name(), dpr);
+        List<MarkStudent> markStudentList = markStudentService.listScanCollegeByExamIdAndCourseCodeAndCoursePaperId(examId, courseId, coursePaperId, MarkPaperStatus.FORMAL.name(), dpr);
         Map<String, List<MarkStudent>> map = markStudentList.stream().filter(m -> StringUtils.isNotBlank(m.getExamPlace())).collect(Collectors.groupingBy(x -> x.getExamPlace()));
         Map<String, List<MarkStudent>> map = markStudentList.stream().filter(m -> StringUtils.isNotBlank(m.getExamPlace())).collect(Collectors.groupingBy(x -> x.getExamPlace()));
         List<CampusExamRoomDto> campusExamRoomDtoList = new ArrayList<>();
         List<CampusExamRoomDto> campusExamRoomDtoList = new ArrayList<>();
         for (Map.Entry<String, List<MarkStudent>> entry : map.entrySet()) {
         for (Map.Entry<String, List<MarkStudent>> entry : map.entrySet()) {

+ 12 - 16
teachcloud-mark/src/main/resources/mapper/MarkPaperMapper.xml

@@ -43,13 +43,11 @@
         mark_paper mp
         mark_paper mp
             LEFT JOIN
             LEFT JOIN
         basic_course bc ON mp.course_id = bc.id
         basic_course bc ON mp.course_id = bc.id
-            LEFT JOIN
-        sys_user su ON mp.user_id = su.id
             JOIN
             JOIN
         (select * from basic_exam where enable = true) be ON mp.exam_id = be.id
         (select * from basic_exam where enable = true) be ON mp.exam_id = be.id
         <where>
         <where>
             <if test="schoolId != null">
             <if test="schoolId != null">
-                and su.school_id = #{schoolId}
+                and bc.school_id = #{schoolId}
             </if>
             </if>
             <if test="examId != null">
             <if test="examId != null">
                 and mp.exam_id = #{examId}
                 and mp.exam_id = #{examId}
@@ -68,10 +66,10 @@
                     and mp.user_id = #{dpr.requestUserId}
                     and mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.courseUserId != null">
                 <if test="dpr.courseUserId != null">
-                    AND EXISTS( SELECT 1 FROM (select course_code from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_code = mp.course_code)
+                    AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null">
                 <if test="dpr.orgIdSet != null">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -102,7 +100,6 @@
         FROM
         FROM
         mark_paper mp
         mark_paper mp
         LEFT JOIN basic_course bc ON mp.course_id = bc.id
         LEFT JOIN basic_course bc ON mp.course_id = bc.id
-        LEFT JOIN sys_user su ON mp.user_id = su.id
         where mp.exam_id = #{examId}
         where mp.exam_id = #{examId}
         <if test="courseId != null">
         <if test="courseId != null">
             AND mp.course_id = #{courseId}
             AND mp.course_id = #{courseId}
@@ -122,7 +119,7 @@
                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                AND su.org_id IN
+                AND bc.teaching_room_id IN
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>
@@ -183,7 +180,7 @@
         ORDER BY t.id desc
         ORDER BY t.id desc
     </select>
     </select>
     <select id="getCourseCount" resultType="java.lang.Integer">
     <select id="getCourseCount" resultType="java.lang.Integer">
-        select count(distinct mp.course_id) from mark_paper mp left join sys_user su on mp.user_id = su.id
+        select count(distinct mp.course_id) from mark_paper mp left join basic_course bc on mp.course_id = bc.id
         <where>
         <where>
             and mp.exam_id = #{examId} AND mp.status = #{status}
             and mp.exam_id = #{examId} AND mp.status = #{status}
             <if test="courseId != null">
             <if test="courseId != null">
@@ -197,7 +194,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -206,7 +203,7 @@
         </where>
         </where>
     </select>
     </select>
     <select id="getPaperNumberCount" resultType="java.lang.Integer">
     <select id="getPaperNumberCount" resultType="java.lang.Integer">
-        select count(distinct mp.paper_number) from mark_paper mp left join sys_user su on mp.user_id = su.id
+        select count(distinct mp.paper_number) from mark_paper mp left join basic_course bc on mp.course_id = bc.id
         <where>
         <where>
             and mp.exam_id = #{examId} AND mp.status = #{status}
             and mp.exam_id = #{examId} AND mp.status = #{status}
             <if test="courseId != null">
             <if test="courseId != null">
@@ -220,7 +217,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -230,8 +227,8 @@
     </select>
     </select>
     <select id="listByExamId" resultType="com.qmth.teachcloud.mark.entity.MarkPaper">
     <select id="listByExamId" resultType="com.qmth.teachcloud.mark.entity.MarkPaper">
         select mp.*
         select mp.*
-        from mark_paper mp
-        left join sys_user su on mp.user_id = su.id
+            from mark_paper mp
+                left join basic_course bc on mp.course_id = bc.id
         <where>
         <where>
             mp.exam_id = #{examId} AND mp.status = #{status}
             mp.exam_id = #{examId} AND mp.status = #{status}
             <if test="dpr != null">
             <if test="dpr != null">
@@ -239,7 +236,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -253,7 +250,6 @@
         FROM
         FROM
         mark_paper t
         mark_paper t
             left join basic_course bc on t.course_id = bc.id
             left join basic_course bc on t.course_id = bc.id
-        left join sys_user su on t.user_id = su.id
         WHERE
         WHERE
         t.exam_id = #{req.examId}
         t.exam_id = #{req.examId}
         <if test="req.courseId != null">
         <if test="req.courseId != null">
@@ -268,7 +264,7 @@
                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{req.examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = t.course_id)
                 AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{req.examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = t.course_id)
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                AND su.org_id IN
+                AND bc.teaching_room_id IN
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>

+ 2 - 2
teachcloud-mark/src/main/resources/mapper/MarkPaperPackageMapper.xml

@@ -23,7 +23,7 @@
             and t.course_paper_id= #{coursePaperId}
             and t.course_paper_id= #{coursePaperId}
         </if>
         </if>
         <if test="dpr != null or status != null">
         <if test="dpr != null or status != null">
-            and exists (select 1 from (select * from mark_paper where status = #{status}) mp left join sys_user su on mp.user_id = su.id
+            and exists (select 1 from (select * from mark_paper where status = #{status}) mp left join basic_course bc on mp.course_id = bc.id
             where t.exam_id = mp.exam_id
             where t.exam_id = mp.exam_id
             and t.course_paper_id = mp.course_paper_id
             and t.course_paper_id = mp.course_paper_id
             and t.paper_type = mp.paper_type
             and t.paper_type = mp.paper_type
@@ -32,7 +32,7 @@
                     AND mp.user_id = #{dpr.requestUserId}
                     AND mp.user_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>

+ 13 - 18
teachcloud-mark/src/main/resources/mapper/MarkStudentMapper.xml

@@ -6,13 +6,10 @@
     <resultMap id="BaseResultMap" type="com.qmth.teachcloud.mark.entity.MarkStudent">
     <resultMap id="BaseResultMap" type="com.qmth.teachcloud.mark.entity.MarkStudent">
         <id column="id" property="id"/>
         <id column="id" property="id"/>
         <result column="exam_id" property="examId"/>
         <result column="exam_id" property="examId"/>
-        <result column="course_code" property="courseCode"/>
-        <result column="course_name" property="courseName"/>
         <result column="paper_number" property="paperNumber"/>
         <result column="paper_number" property="paperNumber"/>
         <result column="course_paper_id" property="coursePaperId"/>
         <result column="course_paper_id" property="coursePaperId"/>
         <result column="secret_number" property="secretNumber"/>
         <result column="secret_number" property="secretNumber"/>
         <result column="student_code" property="studentCode"/>
         <result column="student_code" property="studentCode"/>
-        <result column="student_name" property="studentName"/>
         <result column="package_code" property="packageCode"/>
         <result column="package_code" property="packageCode"/>
         <result column="exam_place" property="examPlace"/>
         <result column="exam_place" property="examPlace"/>
         <result column="exam_room" property="examRoom"/>
         <result column="exam_room" property="examRoom"/>
@@ -32,9 +29,6 @@
         <result column="subjective_status" property="subjectiveStatus"/>
         <result column="subjective_status" property="subjectiveStatus"/>
         <result column="subjective_score" property="subjectiveScore"/>
         <result column="subjective_score" property="subjectiveScore"/>
         <result column="subjective_score_list" property="subjectiveScoreList"/>
         <result column="subjective_score_list" property="subjectiveScoreList"/>
-        <result column="college" property="college"/>
-        <result column="class_name" property="className"/>
-        <result column="teacher" property="teacher"/>
         <result column="scan_status" property="scanStatus"/>
         <result column="scan_status" property="scanStatus"/>
         <result column="omr_absent_checked" property="omrAbsentChecked"/>
         <result column="omr_absent_checked" property="omrAbsentChecked"/>
         <result column="question_filled" property="questionFilled"/>
         <result column="question_filled" property="questionFilled"/>
@@ -329,7 +323,7 @@
                 AND t.create_id = #{dpr.requestUserId}
                 AND t.create_id = #{dpr.requestUserId}
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                AND su.org_id IN
+                AND bc.teaching_room_id IN
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>
@@ -377,6 +371,7 @@
         left join (select * from basic_exam_student where exam_id=#{query.examId}) bes on t.basic_student_id = bes.id
         left join (select * from basic_exam_student where exam_id=#{query.examId}) bes on t.basic_student_id = bes.id
         left join mark_paper s on s.course_paper_id=t.course_paper_id and s.exam_id=t.exam_id
         left join mark_paper s on s.course_paper_id=t.course_paper_id and s.exam_id=t.exam_id
         left join sys_user su on t.create_id = su.id
         left join sys_user su on t.create_id = su.id
+        left join basic_course bc on t.course_id = bc.id
         <include refid="queryWhereAndOrder"/>
         <include refid="queryWhereAndOrder"/>
         order by t.id
         order by t.id
     </select>
     </select>
@@ -653,7 +648,7 @@
                 AND t.create_id = #{dpr.requestUserId}
                 AND t.create_id = #{dpr.requestUserId}
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                AND su.org_id IN
+                AND bc.teaching_room_id IN
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>
@@ -688,7 +683,7 @@
         group by bes.teacher_id, su.real_name, bes.teach_class_name
         group by bes.teacher_id, su.real_name, bes.teach_class_name
     </select>
     </select>
     <select id="selectCountByQuery" resultType="java.lang.Integer">
     <select id="selectCountByQuery" resultType="java.lang.Integer">
-        select count(1) from mark_student ms left join sys_user su on ms.create_id = su.id
+        select count(1) from mark_student ms left join basic_course bc on ms.course_id = bc.id
         <where>
         <where>
             and ms.exam_id = #{markStudent.examId}
             and ms.exam_id = #{markStudent.examId}
             <if test="markStudent.courseId != null">
             <if test="markStudent.courseId != null">
@@ -723,7 +718,7 @@
                     AND ms.create_id = #{dpr.requestUserId}
                     AND ms.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -740,7 +735,7 @@
         count(1)
         count(1)
         FROM
         FROM
         mark_student ms
         mark_student ms
-        LEFT JOIN sys_user su ON ms.create_id = su.id
+        LEFT JOIN basic_course bc ON ms.course_id = bc.id
         <where>
         <where>
             ms.exam_id = #{markStudent.examId}
             ms.exam_id = #{markStudent.examId}
             <if test="markStudent.courseId != null">
             <if test="markStudent.courseId != null">
@@ -760,7 +755,7 @@
                     AND ms.create_id = #{dpr.requestUserId}
                     AND ms.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -778,11 +773,11 @@
         distinct ms.exam_place, ms.exam_room
         distinct ms.exam_place, ms.exam_room
         FROM
         FROM
         mark_student ms
         mark_student ms
-        LEFT JOIN sys_user su ON ms.create_id = su.id
+        LEFT JOIN basic_course bc ON ms.course_id = bc.id
         <where>
         <where>
             ms.exam_id = #{examId}
             ms.exam_id = #{examId}
-            <if test="courseCode != null and courseCode != ''">
-                AND ms.course_code = #{courseCode}
+            <if test="courseId != null">
+                AND ms.course_id = #{courseId}
             </if>
             </if>
             <if test="coursePaperId != null and coursePaperId != ''">
             <if test="coursePaperId != null and coursePaperId != ''">
                 AND ms.course_paper_id = #{coursePaperId}
                 AND ms.course_paper_id = #{coursePaperId}
@@ -792,7 +787,7 @@
                     AND ms.create_id = #{dpr.requestUserId}
                     AND ms.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>
@@ -904,7 +899,7 @@
         count(1)
         count(1)
         FROM
         FROM
         mark_student ms
         mark_student ms
-        LEFT JOIN sys_user su ON ms.create_id = su.id
+        LEFT JOIN basic_course bc ON ms.course_id = bc.id
         left join basic_exam_student bes on bes.id = ms.basic_student_id
         left join basic_exam_student bes on bes.id = ms.basic_student_id
         <where>
         <where>
             ms.exam_id = #{markStudent.examId}
             ms.exam_id = #{markStudent.examId}
@@ -925,7 +920,7 @@
                     AND ms.create_id = #{dpr.requestUserId}
                     AND ms.create_id = #{dpr.requestUserId}
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
                 <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>

+ 1 - 2
teachcloud-mark/src/main/resources/mapper/MarkTaskMapper.xml

@@ -54,7 +54,6 @@
                 group by ms.exam_id, ms.paper_number, ms.paper_type) b
                 group by ms.exam_id, ms.paper_number, ms.paper_type) b
                     on mp.exam_id = b.exam_id and mp.paper_number = b.paper_number and mp.paper_type = b.paper_type
                     on mp.exam_id = b.exam_id and mp.paper_number = b.paper_number and mp.paper_type = b.paper_type
             left join basic_course bc on mp.course_id = bc.id
             left join basic_course bc on mp.course_id = bc.id
-            left join sys_user su on mp.user_id = su.id
         <where>
         <where>
             mp.exam_id = #{examId}
             mp.exam_id = #{examId}
             <if test="courseId != null">
             <if test="courseId != null">
@@ -71,7 +70,7 @@
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                     AND EXISTS( SELECT 1 FROM (select course_id from teach_course where exam_id = #{examId} and user_id = #{dpr.courseUserId}) tc WHERE tc.course_id = mp.course_id)
                 </if>
                 </if>
                 <if test="dpr.orgIdSet != null">
                 <if test="dpr.orgIdSet != null">
-                    AND su.org_id IN
+                    AND bc.teaching_room_id IN
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                         #{item}
                         #{item}
                     </foreach>
                     </foreach>

+ 1 - 2
teachcloud-mark/src/main/resources/mapper/ScanAnswerCardMapper.xml

@@ -32,7 +32,6 @@
         from scan_answer_card t
         from scan_answer_card t
         left join (select * from mark_paper where status = #{status}) f on t.exam_id=f.exam_id and t.course_paper_id=f.course_paper_id
         left join (select * from mark_paper where status = #{status}) f on t.exam_id=f.exam_id and t.course_paper_id=f.course_paper_id
         left join basic_course bc on f.course_id = bc.id
         left join basic_course bc on f.course_id = bc.id
-        left join sys_user su on f.user_id = su.id
         where t.exam_id=#{examId}
         where t.exam_id=#{examId}
         <if test="coursePaperId != null and coursePaperId !=''">
         <if test="coursePaperId != null and coursePaperId !=''">
             and t.course_paper_id=#{coursePaperId}
             and t.course_paper_id=#{coursePaperId}
@@ -42,7 +41,7 @@
                 AND f.user_id = #{dpr.requestUserId}
                 AND f.user_id = #{dpr.requestUserId}
             </if>
             </if>
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
             <if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-                AND su.org_id IN
+                AND bc.teaching_room_id IN
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                 <foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
                     #{item}
                     #{item}
                 </foreach>
                 </foreach>

+ 4 - 4
teachcloud-mark/src/main/resources/mapper/ScanPackageMapper.xml

@@ -49,7 +49,7 @@
 			</if>
 			</if>
 		</if>
 		</if>
 		<if test="dpr != null">
 		<if test="dpr != null">
-          	and exists (select 1 from mark_paper mp left join sys_user su on mp.user_id = su.id where t.exam_id = mp.exam_id
+          	and exists (select 1 from mark_paper mp left join basic_course bc on mp.course_id = bc.id where t.exam_id = mp.exam_id
           	    and t.course_paper_id = mp.course_paper_id
           	    and t.course_paper_id = mp.course_paper_id
           	    and t.paper_type = mp.paper_type
           	    and t.paper_type = mp.paper_type
           	    and mp.status = #{status}
           	    and mp.status = #{status}
@@ -57,7 +57,7 @@
 				AND mp.user_id = #{dpr.requestUserId}
 				AND mp.user_id = #{dpr.requestUserId}
 			</if>
 			</if>
 			<if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
 			<if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-				AND su.org_id IN
+				AND bc.teaching_room_id IN
 				<foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
 				<foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
 					#{item}
 					#{item}
 				</foreach>
 				</foreach>
@@ -85,13 +85,13 @@
 			</if>
 			</if>
 			<if test="dpr != null or status != null">
 			<if test="dpr != null or status != null">
 		  			and exists (select 1 from (select * from mark_paper where status = #{status}) mp
 		  			and exists (select 1 from (select * from mark_paper where status = #{status}) mp
-		  			    			left join sys_user su on mp.user_id = su.id where
+		  			    			left join basic_course bc on mp.course_id = bc.id where
 		  			            		mpp.exam_id = mp.exam_id and mpp.course_paper_id = mp.course_paper_id
 		  			            		mpp.exam_id = mp.exam_id and mpp.course_paper_id = mp.course_paper_id
 				<if test="dpr.requestUserId != null">
 				<if test="dpr.requestUserId != null">
 					AND mp.user_id = #{dpr.requestUserId}
 					AND mp.user_id = #{dpr.requestUserId}
 				</if>
 				</if>
 				<if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
 				<if test="dpr.orgIdSet != null and dpr.orgIdSet != '' and dpr.orgIdSet.size > 0">
-					AND su.org_id IN
+					AND bc.teaching_room_id IN
 					<foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
 					<foreach collection="dpr.orgIdSet" item="item" index="index" open="(" separator="," close=")">
 						#{item}
 						#{item}
 					</foreach>
 					</foreach>