Kaynağa Gözat

Merge remote-tracking branch 'origin/dev_v2.2.0' into dev_v2.2.0

wangliang 3 yıl önce
ebeveyn
işleme
df9dbd843c

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

@@ -138,5 +138,5 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
      * @param printPlanStatusEnumList 印刷计划状态集合
      * @return 数据集
      */
-    List<ExamPackageDetail> findExamPackageDetailByPaperNumber(@Param("paperNumber") String paperNumber, @Param("printPlanStatusEnumList") List<PrintPlanStatusEnum> printPlanStatusEnumList);
+    List<ExamPackageDetail> findExamPackageDetailByPaperNumber(@Param("schoolId") Long schoolId,@Param("courseCode") String courseCode,@Param("paperNumber") String paperNumber, @Param("printPlanStatusEnumList") List<PrintPlanStatusEnum> printPlanStatusEnumList);
 }

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

@@ -181,7 +181,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             List<PrintPlanStatusEnum> printPlanStatusEnumList = new ArrayList<>();
             printPlanStatusEnumList.add(PrintPlanStatusEnum.PRINTING);
             printPlanStatusEnumList.add(PrintPlanStatusEnum.PRINT_FINISH);
-            List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(cellPaperNumber, printPlanStatusEnumList);
+            List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(schoolId,record.getCourseCode(),cellPaperNumber, printPlanStatusEnumList);
             record.setApproveFormStatus(examPackageDetailDatasource.size() > 0);
         }
         return examTaskDtoIPage;
@@ -390,7 +390,9 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             examTask.updateInfo(sysUser.getId());
             examTask.setReview(basicExamRule.getReview());
             // 取课程所在机构
-            examTask.setOrgId(basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examTask.getCourseCode()));
+            Long teachingRoomId = basicCourseService.getOrgIdBySchoolIdAndCourseCode(schoolId, examTask.getCourseCode());
+            examTask.setOrgId(teachingRoomId);
+            examTask.setTeachingRoomId(teachingRoomId);
             if (examTask.getUserId() == null) {
                 examTask.setStatus(ExamStatusEnum.DRAFT);
             } else if (examTask.getReview()) {
@@ -1686,7 +1688,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
     @Override
     public ExamTaskApprovalFormDto findExamTaskApprovalForm(Long examTaskId) {
-//        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         // 1.basicInfo 部分
         ExamTask examTask = this.getById(examTaskId);
         if (Objects.isNull(examTask)) {
@@ -1707,7 +1709,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         List<PrintPlanStatusEnum> printPlanStatusEnumList = new ArrayList<>();
         printPlanStatusEnumList.add(PrintPlanStatusEnum.PRINTING);
         printPlanStatusEnumList.add(PrintPlanStatusEnum.PRINT_FINISH);
-        List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(paperNumber, printPlanStatusEnumList);
+        List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(schoolId,examTask.getCourseCode(),paperNumber, printPlanStatusEnumList);
         ExamObjectDto examObjectDto = this.buildExamObjectDtoByPackageDatasource(examPackageDetailDatasource);
 
         // 3.ApprovalInfo部分
@@ -1795,16 +1797,18 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     @Override
     public ExamObjectDto findExamObjectDtoByPaperNumber(String paperNumber) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        ExamTask examTask = examTaskService.getOne(new QueryWrapper<ExamTask>().lambda().eq(ExamTask::getPaperNumber, paperNumber).eq(ExamTask::getSchoolId, schoolId));
+        if (Objects.isNull(examTask)) {
+            throw ExceptionResultEnum.ERROR.exception("未找到命题任务");
+        }
+
         List<PrintPlanStatusEnum> printPlanStatusEnumList = new ArrayList<>();
         printPlanStatusEnumList.add(PrintPlanStatusEnum.NEW);
         printPlanStatusEnumList.add(PrintPlanStatusEnum.READY);
-        List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(paperNumber, printPlanStatusEnumList);
+        List<ExamPackageDetail> examPackageDetailDatasource = this.baseMapper.findExamPackageDetailByPaperNumber(schoolId,examTask.getCourseCode(),paperNumber, printPlanStatusEnumList);
         ExamObjectDto examObjectDto = this.buildExamObjectDtoByPackageDatasource(examPackageDetailDatasource);
 
-        ExamTask examTask = examTaskService.getOne(new QueryWrapper<ExamTask>().lambda().eq(ExamTask::getPaperNumber, paperNumber).eq(ExamTask::getSchoolId, schoolId));
-        if (Objects.isNull(examTask)) {
-            throw ExceptionResultEnum.ERROR.exception("未找到命题任务");
-        }
+
         examObjectDto.setPaperName(examTask.getPaperName());
         examObjectDto.setPaperNumber(examTask.getPaperNumber());
         return examObjectDto;

+ 6 - 0
distributed-print-business/src/main/resources/mapper/ExamTaskMapper.xml

@@ -1063,6 +1063,12 @@
                 INNER JOIN
             exam_print_plan epp ON epp.id = ed.print_plan_id
         <where>
+            <if test="schoolId > 0 and paperNumber != ''">
+                AND ed.school_id = #{schoolId}
+            </if>
+            <if test="courseCode != null and courseCode != ''">
+                AND edc.course_code = #{courseCode}
+            </if>
             <if test="paperNumber != null and paperNumber != ''">
                 AND edc.paper_number = #{paperNumber}
             </if>