Ver Fonte

部分小改动

caozixuan há 2 anos atrás
pai
commit
b5ea34a909

+ 11 - 7
paper-library-business/src/main/java/com/qmth/paper/library/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -142,7 +142,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                     .eq(PaperArchives::getId, paperArchivesId)
                     .eq(PaperArchives::getArchivesCode, archivesCode)
                     .eq(PaperArchives::getArchivesName, archivesName));
-            if (Objects.nonNull(paperArchives)) {
+            if (Objects.isNull(paperArchives)) {
                 throw ExceptionResultEnum.ERROR.exception("excel中的档案信息和选择的档案不符");
             }
 
@@ -219,13 +219,17 @@ public class TaskLogicServiceImpl implements TaskLogicService {
 
             // 归纳 - 扫描任务详情
             // 上面编辑的任务绑定的扫描详情集合
-            List<PaperScanTaskDetail> paperScanTaskDetailDbList = paperScanTaskDetailService.list(new QueryWrapper<PaperScanTaskDetail>()
-                    .lambda()
-                    .in(PaperScanTaskDetail::getPaperScanTaskId, paperScanTaskIdList)
-                    .eq(PaperScanTaskDetail::getSchoolId, schoolId));
+            List<PaperScanTaskDetail> paperScanTaskDetailDbList = new ArrayList<>();
+            if (paperScanTaskIdList.size() > 0){
+                paperScanTaskDetailDbList = paperScanTaskDetailService.list(new QueryWrapper<PaperScanTaskDetail>()
+                        .lambda()
+                        .in(PaperScanTaskDetail::getPaperScanTaskId, paperScanTaskIdList)
+                        .eq(PaperScanTaskDetail::getSchoolId, schoolId));
+            }
+            List<PaperScanTaskDetail> finalPaperScanTaskDetailDbList = paperScanTaskDetailDbList;
+
             // 学生基础数据集合
             List<BasicStudent> basicStudentDbList = basicStudentService.list(new QueryWrapper<BasicStudent>().lambda().eq(BasicStudent::getSchoolId, schoolId));
-
             List<PaperScanTaskDetail> paperScanTaskDetailList = datasource.stream().flatMap(e -> {
 
                 String scanTaskName = e.getScanTaskName();
@@ -245,7 +249,7 @@ public class TaskLogicServiceImpl implements TaskLogicService {
                 Long studentId = targetStudent.getId();
 
                 PaperScanTaskDetail paperScanTaskDetail = new PaperScanTaskDetail();
-                List<PaperScanTaskDetail> paperScanTaskDetailCellList = paperScanTaskDetailDbList.stream()
+                List<PaperScanTaskDetail> paperScanTaskDetailCellList = finalPaperScanTaskDetailDbList.stream()
                         .filter(d -> d.getPaperScanTaskId().equals(paperScanTaskId) && d.getStudentId().equals(studentId) && d.getSchoolId().equals(schoolId))
                         .collect(Collectors.toList());
                 if (paperScanTaskDetailCellList.size() == 1) {

+ 5 - 5
paper-library-business/src/main/resources/mapper/PaperScanTaskMapper.xml

@@ -15,8 +15,8 @@
             pa.id AS paperArchivesId,
             pa.archives_name AS archivesName,
             pa.archives_code AS archivesCode,
-            pl.scan_count AS scanCount,
-            ROUND((pl.bound / pl.scan_count) * 100, 2) AS bindProgress,
+            IFNULL(pl.scan_count, 0) AS scanCount,
+            IFNULL(ROUND((pl.bound / pl.scan_count) * 100, 2),0) AS bindProgress,
             su.real_name AS scanUserName
         FROM
             paper_scan_task pst
@@ -26,7 +26,7 @@
             (SELECT
                  paper_scan_task_id,
                  COUNT(*) AS scan_count,
-                 SUM(IF(paper_scan_task_detail_id IS NULL, 0, 1)) AS bound,
+                 SUM(IF(paper_scan_task_detail_id IS NULL, 0, 1)) AS bound
              FROM
                  paper_library
              GROUP BY paper_scan_task_id) pl ON pst.id = pl.paper_scan_task_id
@@ -43,10 +43,10 @@
                 AND pst.teacher_name like CONCAT('%',#{teacherName},'%')
             </if>
             <if test="smallerProgress != null and smallerProgress != ''">
-                AND ROUND((pl.bound / pl.scan_count) * 100, 2) >= #{smallerProgress}
+                AND IFNULL(ROUND((pl.bound / pl.scan_count) * 100, 2),0) >= #{smallerProgress}
             </if>
             <if test="largerProgress != null and largerProgress != ''">
-                AND #{largerProgress} >= ROUND((pl.bound / pl.scan_count) * 100, 2)
+                AND #{largerProgress} >= IFNULL(ROUND((pl.bound / pl.scan_count) * 100, 2),0)
             </if>
         </where>
     </select>

+ 2 - 2
paper-library/src/main/java/com/qmth/paper/library/api/PaperScanTaskController.java

@@ -59,7 +59,7 @@ public class PaperScanTaskController {
                                         @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) {
         SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
-        return ResultUtil.ok(paperScanTaskService.paperScanTaskPage(courseName, teacherName, pageNumber, smallerProgress, largerProgress, pageSize, requestUser));
+        return ResultUtil.ok(paperScanTaskService.paperScanTaskPage(courseName, teacherName, smallerProgress, largerProgress, pageNumber, pageSize, requestUser));
     }
 
     @ApiOperation(value = "扫描任务管理-新增/编辑")
@@ -146,7 +146,7 @@ public class PaperScanTaskController {
     @PostMapping("/list_course")
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = EditResult.class)})
     public Result listCourseName(@ApiParam(value = "档案id") @RequestParam Long paperArchivesId,
-                                     @ApiParam(value = "学期id") @RequestParam Long semesterId) {
+                                 @ApiParam(value = "学期id") @RequestParam Long semesterId) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         List<SelectResult> courseList = paperScanTaskService.listCourseName(paperArchivesId, semesterId);
         return ResultUtil.ok();