ソースを参照

Merge branch 'dev_v2.0.1' into release_v2.0.1
merge

wangliang 4 年 前
コミット
cdb4a3a369

+ 0 - 11
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamStudentCourseDto.java

@@ -28,17 +28,6 @@ public class ExamStudentCourseDto extends ExamStudent {
     @ApiModelProperty("试卷编号")
     private String paperNumber;
 
-    @ApiModelProperty("排序用")
-    String ascii;
-
-    public String getAscii() {
-        return ascii;
-    }
-
-    public void setAscii(String ascii) {
-        this.ascii = ascii;
-    }
-
     public String getPaperNumber() {
         return paperNumber;
     }

+ 4 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExaminationImportDto.java

@@ -13,19 +13,19 @@ import java.util.List;
 public class ExaminationImportDto {
 
     @ApiModelProperty(value = "学号")
-    @ExcelDBFieldDesc(name = "学号",length = 20)
+    @ExcelDBFieldDesc(name = "学号",length = 30)
     private String studentCode;
 
     @ApiModelProperty(value = "考号")
-    @ExcelDBFieldDesc(name = "考号",length = 20)
+    @ExcelDBFieldDesc(name = "考号",length = 30)
     private String ticketNumber;
 
     @ApiModelProperty(value = "座位号")
-    @ExcelDBFieldDesc(name = "座位号",length = 15)
+    @ExcelDBFieldDesc(name = "座位号",length = 30)
     private String siteNumber;
 
     @ApiModelProperty(value = "姓名")
-    @ExcelDBFieldDesc(name = "姓名",length = 50)
+    @ExcelDBFieldDesc(name = "姓名",length = 30)
     private String studentName;
 
     @ApiModelProperty(value = "课程代码")

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

@@ -24,7 +24,7 @@ import java.util.Set;
  */
 public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
 
-    IPage<PrintTaskDto> listPrintTask(Page<PrintTaskDto> page, @Param("schoolId") Long schoolId, @Param("printPlanId") Long printPlanId, @Param("status") String status, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("examPlace") String examPlace, @Param("examRoom") String examRoom, @Param("examStartTime") Long examStartTime, @Param("examEndTime") Long examEndTime, @Param("orgIds") Set<Long> orgIds);
+    IPage<PrintTaskDto> listPrintTask(Page<PrintTaskDto> page, @Param("schoolId") Long schoolId, @Param("printPlanId") Long printPlanId, @Param("status") String status, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("examPlace") String examPlace, @Param("examRoom") String examRoom, @Param("examStartTime") Long examStartTime, @Param("examEndTime") Long examEndTime, @Param("printStartTime") Long printStartTime, @Param("printEndTime") Long printEndTime, @Param("orgIds") Set<Long> orgIds);
 
     IPage<ExaminationResult> findBriefPage(@Param("page") Page<ExaminationResult> page,
                                            @Param("schoolId") Long schoolId,
@@ -49,7 +49,7 @@ public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
     IPage<ExaminationDetailResult> findDetailPageById(@Param("page") Page<ExaminationDetailResult> page,
                                                   @Param("examDetailId") Long examDetailId);
 
-    PrintTaskTotalDto taskTotalData(@Param("schoolId") Long schoolId, @Param("printPlanId") Long printPlanId, @Param("status") String status, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("examPlace") String examPlace, @Param("examRoom") String examRoom, @Param("examStartTime") Long examStartTime, @Param("examEndTime") Long examEndTime, @Param("orgIds") Set<Long> orgIds);
+    PrintTaskTotalDto taskTotalData(@Param("schoolId") Long schoolId, @Param("printPlanId") Long printPlanId, @Param("status") String status, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("examPlace") String examPlace, @Param("examRoom") String examRoom, @Param("examStartTime") Long examStartTime, @Param("examEndTime") Long examEndTime, @Param("printStartTime") Long printStartTime, @Param("printEndTime") Long printEndTime, @Param("orgIds") Set<Long> orgIds);
 
     IPage<ClientExamStudentDto> listClientExamStudentPage(Page<ClientExamStudentDto> page, @Param("schoolId") Long schoolId, @Param("examDetailId") Long examDetailId, @Param("ticketNumber") String ticketNumber, @Param("studentName") String studentName, @Param("courseCode") String courseCode);
 

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

@@ -39,9 +39,9 @@ public interface ExamDetailService extends IService<ExamDetail> {
      */
     double calculateTotalPackages(Long printPlanId);
 
-    IPage<PrintTaskDto> listPrintTask(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Integer pageNumber, Integer pageSize);
+    IPage<PrintTaskDto> listPrintTask(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Integer pageNumber, Integer pageSize);
 
-    PrintTaskTotalDto taskTotalData(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime);
+    PrintTaskTotalDto taskTotalData(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime);
 
     String taskViewPDF(Long examDetailId);
 

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

@@ -105,19 +105,19 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     }
 
     @Override
-    public IPage<PrintTaskDto> listPrintTask(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Integer pageNumber, Integer pageSize) {
+    public IPage<PrintTaskDto> listPrintTask(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Set<Long> orgIds = commonService.listSubOrgIds(null);
         Page<PrintTaskDto> page = new Page<>(pageNumber, pageSize);
-        IPage<PrintTaskDto> pirntTaskDtoIPage = this.baseMapper.listPrintTask(page, schoolId, printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, orgIds);
+        IPage<PrintTaskDto> pirntTaskDtoIPage = this.baseMapper.listPrintTask(page, schoolId, printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime,printStartTime, printEndTime,  orgIds);
         return pirntTaskDtoIPage;
     }
 
     @Override
-    public PrintTaskTotalDto taskTotalData(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime) {
+    public PrintTaskTotalDto taskTotalData(Long printPlanId, String status, String courseCode, String paperNumber, String examPlace, String examRoom, Long examStartTime, Long examEndTime, Long printStartTime, Long printEndTime) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Set<Long> orgIds = commonService.listSubOrgIds(null);
-        PrintTaskTotalDto printTaskTotalDto = this.baseMapper.taskTotalData(schoolId, printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, orgIds);
+        PrintTaskTotalDto printTaskTotalDto = this.baseMapper.taskTotalData(schoolId, printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, orgIds);
 
         if (printTaskTotalDto != null) {
             // 试卷总计

+ 11 - 10
distributed-print-business/src/main/java/com/qmth/distributed/print/business/util/CreatePdfUtil.java

@@ -170,16 +170,16 @@ public class CreatePdfUtil {
         Optional<ExamStudentCourseDto> maxSite = null;
         List<ExamStudentCourseDto> tempList = examStudentList.stream().filter(s -> (Objects.nonNull(s.getSiteNumber()) && !Objects.equals("", s.getSiteNumber().trim()))).collect(Collectors.toList());
         if (Objects.nonNull(tempList) && tempList.size() > 0) {
-            for (ExamStudentCourseDto e : tempList) {
-                char[] chars = e.getSiteNumber().toLowerCase().toCharArray();
-                String ascii = "";
-                for (int i = 0; i < chars.length; i++) {
-                    ascii = ascii + chars[i];
-                }
-                e.setAscii(ascii);
-            }
-            minSite = tempList.stream().min(Comparator.comparing(s -> Integer.parseInt(s.getAscii())));
-            maxSite = tempList.stream().max(Comparator.comparing(s -> Integer.parseInt(s.getAscii())));
+//            for (ExamStudentCourseDto e : tempList) {
+//                char[] chars = e.getSiteNumber().toLowerCase().toCharArray();
+//                String ascii = "";
+//                for (int i = 0; i < chars.length; i++) {
+//                    ascii = ascii + chars[i];
+//                }
+//                e.setAscii(ascii.hashCode());
+//            }
+            minSite = tempList.stream().min(Comparator.comparing(s -> s.getSiteNumber().hashCode()));
+            maxSite = tempList.stream().max(Comparator.comparing(s -> s.getSiteNumber().hashCode()));
         }
 
         htmlMap.put("minSite", Optional.ofNullable(minSite).map(s -> s.get().getSiteNumber()).orElse(""));
@@ -326,6 +326,7 @@ public class CreatePdfUtil {
 
     /**
      * 替换自定义题卡参数
+     *
      * @param examCardDetail
      * @return
      * @throws IOException

+ 3 - 0
distributed-print-business/src/main/resources/db/init-table.sql

@@ -931,6 +931,7 @@ INSERT INTO `sys_privilege` VALUES (187,'客户端登录','/api/admin/client/use
 INSERT INTO `sys_privilege` VALUES (188,'考务明细查询-学生明细','/api/admin/exam/print/get_student_detail','URL',45,2,'SYS',NULL,1619502584844,1);
 INSERT INTO `sys_privilege` VALUES (189,'卷库查询-修改','/api/admin/exam/task/paper_update','URL',42,4,'AUTH',NULL,1619502584844,1);
 INSERT INTO `sys_privilege` VALUES (190,'任务管理-重新生成pdf','/api/admin/data/task/reset_create_pdf','URL',113,2,'AUTH',NULL,1619502584844,1);
+INSERT INTO `sys_privilege` VALUES (191,'卷库查询-批量下载试卷PDF、题卡', '/api/admin/exam/task/paper_card_download_pdf', 'URL', 42, 5, 'AUTH',NULL, 1619502584844, '1');
 INSERT INTO `sys_privilege` VALUES (199,'客户端','client','MENU',NULL,22,NULL,NULL,1619502252306,1);
 INSERT INTO `sys_privilege` VALUES (200,'试卷打样-查询列表','/api/admin/client/paper_try/list','URL',199,2,'AUTH',NULL,NULL,1);
 INSERT INTO `sys_privilege` VALUES (201,'试卷打样-查看/试印/重印','/api/admin/client/paper_try/print','URL',199,3,'AUTH',NULL,NULL,1);
@@ -1264,6 +1265,8 @@ INSERT INTO `sys_role_privilege` VALUES (1384755205368247213, 6, 213, 1);
 INSERT INTO `sys_role_privilege` VALUES (1384755205368247214, 6, 214, 1);
 INSERT INTO `sys_role_privilege` VALUES (1384755205368247215, 6, 215, 1);
 INSERT INTO `sys_role_privilege` VALUES (1384755205368247216, 6, 216, 1);
+INSERT INTO `sys_role_privilege` VALUES (1384755205368247217, 3, 191, 1);
+INSERT INTO `sys_role_privilege` VALUES (1384755205368247218, 4, 191, 1);
 
 -- ----------------------------
 -- Table structure for sys_user

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

@@ -90,6 +90,12 @@
                 <if test="examEndTime != null and examEndTime != ''">
                     and b.exam_end_time &lt; #{examEndTime}
                 </if>
+                <if test="printStartTime != null and printStartTime != ''">
+                    and b.print_start_time &gt; #{printStartTime}
+                </if>
+                <if test="printEndTime != null and printEndTime != ''">
+                    and b.print_start_time &lt; #{printEndTime}
+                </if>
                 <if test="orgIds != null">
                     AND d.org_id IN
                     <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">
@@ -294,6 +300,12 @@
             <if test="examEndTime != null and examEndTime != ''">
                 and b.exam_end_time &lt; #{examEndTime}
             </if>
+            <if test="printStartTime != null and printStartTime != ''">
+                and b.print_start_time &gt; #{printStartTime}
+            </if>
+            <if test="printEndTime != null and printEndTime != ''">
+                and b.print_start_time &lt; #{printEndTime}
+            </if>
             <if test="orgIds != null">
                 AND d.org_id IN
                 <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">

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

@@ -198,9 +198,11 @@ public class ExamPrintPlanController {
                            @RequestParam(value = "examRoom", required = false) String examRoom,
                            @RequestParam(value = "examStartTime", required = false) Long examStartTime,
                            @RequestParam(value = "examEndTime", required = false) Long examEndTime,
+                           @RequestParam(value = "printStartTime", required = false) Long printStartTime,
+                           @RequestParam(value = "printEndTime", required = false) Long printEndTime,
                            @RequestParam Integer pageNumber,
                            @RequestParam Integer pageSize) {
-        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, pageNumber, pageSize);
+        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, pageNumber, pageSize);
         return ResultUtil.ok(examTasks);
     }
 
@@ -266,8 +268,10 @@ public class ExamPrintPlanController {
                                 @RequestParam(value = "examPlace", required = false) String examPlace,
                                 @RequestParam(value = "examRoom", required = false) String examRoom,
                                 @RequestParam(value = "examStartTime", required = false) Long examStartTime,
-                                @RequestParam(value = "examEndTime", required = false) Long examEndTime) {
-        PrintTaskTotalDto printTaskTotalDto = examDetailService.taskTotalData(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime);
+                                @RequestParam(value = "examEndTime", required = false) Long examEndTime,
+                                @RequestParam(value = "printStartTime", required = false) Long printStartTime,
+                                @RequestParam(value = "printEndTime", required = false) Long printEndTime) {
+        PrintTaskTotalDto printTaskTotalDto = examDetailService.taskTotalData(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime);
         return ResultUtil.ok(printTaskTotalDto);
     }