Преглед изворни кода

Merge remote-tracking branch 'origin/dev' into dev

pans пре 7 месеци
родитељ
комит
993ae3a4be
47 измењених фајлова са 457 додато и 204 уклоњено
  1. 74 34
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseChapterController.java
  2. 13 4
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseClassHourController.java
  3. 2 3
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/domain/Chapter.java
  4. 6 7
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/domain/ClassHour.java
  5. 2 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/ChapterMapper.xml
  6. 32 15
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/ClassHourMapper.xml
  7. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ChapterEditParam.java
  8. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ChapterIdParam.java
  9. 13 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourAddParam.java
  10. 14 2
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourEditParam.java
  11. 3 3
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourPageParam.java
  12. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/ChapterService.java
  13. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/ClassHourService.java
  14. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/ChapterServiceImpl.java
  15. 1 1
      snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/ClassHourServiceImpl.java
  16. 5 4
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/EducationController.java
  17. 11 13
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/ExamPaperAnswerController.java
  18. 11 13
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/ExamPaperController.java
  19. 17 26
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/QuestionController.java
  20. 11 16
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/TaskController.java
  21. 10 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/domain/ExamPaper.java
  22. 58 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/domain/ExamPaperAnswer.java
  23. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/ExamPaperAnswerMapper.java
  24. 1 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/ExamPaperMapper.java
  25. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/QuestionMapper.java
  26. 3 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/SubjectMapper.java
  27. 3 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/TaskExamMapper.java
  28. 2 2
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/ExamPaperAnswerMapper.xml
  29. 3 2
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/ExamPaperMapper.xml
  30. 11 10
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/QuestionMapper.xml
  31. 7 7
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/SubjectMapper.xml
  32. 2 2
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/TaskExamMapper.xml
  33. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/ExamPaperAnswerService.java
  34. 1 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/ExamPaperService.java
  35. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/QuestionService.java
  36. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/SubjectService.java
  37. 2 1
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/TaskExamService.java
  38. 5 3
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/ExamPaperAnswerServiceImpl.java
  39. 4 3
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/ExamPaperServiceImpl.java
  40. 6 4
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/QuestionServiceImpl.java
  41. 6 4
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/SubjectServiceImpl.java
  42. 6 4
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/TaskExamServiceImpl.java
  43. 20 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/education/SubjectPageRequestVM.java
  44. 20 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/paper/ExamPaperAnswerPageRequestVM.java
  45. 19 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/question/QuestionPageRequestVM.java
  46. 20 0
      snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/task/TaskPageRequestVM.java
  47. 18 5
      snowy-server/snowy-gateway-app/pom.xml

+ 74 - 34
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseChapterController.java

@@ -85,24 +85,44 @@ public class CourseChapterController {
         param.clear();
         param.put("chapterIdList", chapterIdList);
         List<Map<String,Object>> classHourList =classHourService.queryAllList(param);
+        // 1. 准备结果:为每个章节添加classHours字段
+        for (Map<String, Object> chapter : chapterList) {
+            if (chapter == null || chapter.get("id") == null) continue;
 
-        // 2. 按chapterId分组课程
-        Map<String, List<Map<String, Object>>> classHourByChapter = classHourList.stream()
-                .filter(Objects::nonNull)
-                .filter(classHour -> classHour.get("chapterId") != null)
-                .collect(Collectors.groupingBy(
-                        classHour -> classHour.get("chapterId").toString()
-                ));
-
-        // 3. 为每个章节添加对应的课程列表
-        chapterList.stream()
-                .filter(Objects::nonNull)
-                .filter(chapter -> chapter.get("id") != null)
-                .forEach(chapter -> {
-                    String chapterId = chapter.get("id").toString();
-                    chapter.put("classHours",
-                            classHourByChapter.getOrDefault(chapterId, Collections.emptyList()));
-                });
+            String chapterId = chapter.get("id").toString();
+            List<Map<String, Object>> chapterClassHours = new ArrayList<>();
+
+            // 2. 倒序遍历课程列表(关键点!)
+            for (int i = classHourList.size() - 1; i >= 0; i--) {
+                Map<String, Object> classHour = classHourList.get(i);
+                if (classHour == null || classHour.get("chapterId") == null) continue;
+
+                // 3. 匹配当前章节
+                if (chapterId.equals(classHour.get("chapterId").toString())) {
+                    chapterClassHours.add(classHour);  // 添加到章节
+                    classHourList.remove(i);          // 从原列表删除(安全操作)
+                }
+            }
+
+            chapter.put("classHours", chapterClassHours);
+        }
+//        //按chapterId分组课程
+//        Map<String, List<Map<String, Object>>> classHourByChapter = classHourList.stream()
+//                .filter(Objects::nonNull)
+//                .filter(classHour -> classHour.get("chapterId") != null)
+//                .collect(Collectors.groupingBy(
+//                        classHour -> classHour.get("chapterId").toString()
+//                ));
+//
+//        //为每个章节添加对应的课程列表
+//        chapterList.stream()
+//                .filter(Objects::nonNull)
+//                .filter(chapter -> chapter.get("id") != null)
+//                .forEach(chapter -> {
+//                    String chapterId = chapter.get("id").toString();
+//                    chapter.put("classHours",
+//                            classHourByChapter.getOrDefault(chapterId, Collections.emptyList()));
+//                });
 
         return CommonResult.data(chapterPage);
     }
@@ -128,24 +148,44 @@ public class CourseChapterController {
         param.clear();
         param.put("chapterIdList", chapterIdList);
         List<Map<String,Object>> classHourList =classHourService.queryAllList(param);
+        // 1. 准备结果:为每个章节添加classHours字段
+        for (Map<String, Object> chapter : chapterList) {
+            if (chapter == null || chapter.get("id") == null) continue;
+
+            String chapterId = chapter.get("id").toString();
+            List<Map<String, Object>> chapterClassHours = new ArrayList<>();
+
+            // 2. 倒序遍历课程列表(关键点!)
+            for (int i = classHourList.size() - 1; i >= 0; i--) {
+                Map<String, Object> classHour = classHourList.get(i);
+                if (classHour == null || classHour.get("chapterId") == null) continue;
+
+                // 3. 匹配当前章节
+                if (chapterId.equals(classHour.get("chapterId").toString())) {
+                    chapterClassHours.add(classHour);  // 添加到章节
+                    classHourList.remove(i);          // 从原列表删除(安全操作)
+                }
+            }
 
-        // 2. 按chapterId分组课程
-        Map<String, List<Map<String, Object>>> classHourByChapter = classHourList.stream()
-                .filter(Objects::nonNull)
-                .filter(classHour -> classHour.get("chapterId") != null)
-                .collect(Collectors.groupingBy(
-                        classHour -> classHour.get("chapterId").toString()
-                ));
-
-        // 3. 为每个章节添加对应的课程列表
-        chapterList.stream()
-                .filter(Objects::nonNull)
-                .filter(chapter -> chapter.get("id") != null)
-                .forEach(chapter -> {
-                    String chapterId = chapter.get("id").toString();
-                    chapter.put("classHours",
-                            classHourByChapter.getOrDefault(chapterId, Collections.emptyList()));
-                });
+            chapter.put("classHours", chapterClassHours);
+        }
+//        //按chapterId分组课程
+//        Map<String, List<Map<String, Object>>> classHourByChapter = classHourList.stream()
+//                .filter(Objects::nonNull)
+//                .filter(classHour -> classHour.get("chapterId") != null)
+//                .collect(Collectors.groupingBy(
+//                        classHour -> classHour.get("chapterId").toString()
+//                ));
+//
+//        //为每个章节添加对应的课程列表
+//        chapterList.stream()
+//                .filter(Objects::nonNull)
+//                .filter(chapter -> chapter.get("id") != null)
+//                .forEach(chapter -> {
+//                    String chapterId = chapter.get("id").toString();
+//                    chapter.put("classHours",
+//                            classHourByChapter.getOrDefault(chapterId, Collections.emptyList()));
+//                });
         return CommonResult.data(chapterList);
     }
 

+ 13 - 4
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/CourseClassHourController.java

@@ -37,8 +37,11 @@ import vip.xiaonuo.disk.service.CourseClasshourFileRelateService;
 import vip.xiaonuo.disk.vo.classhour.ClassHourVo;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
 import javax.validation.Valid;
 import javax.validation.constraints.NotEmpty;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * 课时表控制器
@@ -66,8 +69,11 @@ public class CourseClassHourController {
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取课时表分页")
     @GetMapping("/disk/hour/page")
-    public CommonResult<Page<ClassHourVo>> page(ClassHourPageParam classHourPageParam) {
-        return CommonResult.data(classHourService.page(classHourPageParam));
+    public CommonResult<Page<Map<String,Object>>> page(ClassHourPageParam classHourPageParam, HttpServletRequest req) {
+        Map param =new HashMap();
+        param.put("chapterId", req.getParameter("chapterId"));
+        Page<Map<String,Object>> page=classHourService.queryList(param);
+        return CommonResult.data(page);
     }
 
     /**
@@ -130,8 +136,11 @@ public class CourseClassHourController {
     @ApiOperationSupport(order = 5)
     @ApiOperation("获取课时表详情")
     @GetMapping("/disk/hour/detail")
-    public CommonResult<ClassHourVo> detail(@Valid ClassHourIdParam classHourIdParam) {
-        return CommonResult.data(classHourService.detail(classHourIdParam));
+    public CommonResult<Map<String,Object>> detail(@Valid ClassHourIdParam classHourIdParam, HttpServletRequest req) {
+        Map param =new HashMap();
+        param.put("id", req.getParameter("id"));
+        Map<String,Object> result=classHourService.queryInfo(param);
+        return CommonResult.data(result);
     }
 
 }

+ 2 - 3
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/domain/Chapter.java

@@ -31,9 +31,8 @@ import java.util.Date;
 public class Chapter {
 
     /** 主键 */
-    @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "主键", position = 1)
-    private Integer id;
+    private String id;
 
     /** 父id */
     @ApiModelProperty(value = "父id", position = 2)
@@ -51,7 +50,7 @@ public class Chapter {
     @ApiModelProperty(value = "DELETE_FLAG", position = 5)
     @TableLogic
     @TableField(fill = FieldFill.INSERT)
-    private Integer deleteFlag;
+    private String deleteFlag;
 
     /** UPDATE_TIME */
     @ApiModelProperty(value = "UPDATE_TIME", position = 6)

+ 6 - 7
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/domain/ClassHour.java

@@ -31,9 +31,8 @@ import java.util.Date;
 public class ClassHour {
 
     /** 主键 */
-    @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "主键", position = 1)
-    private Integer id;
+    private String id;
 
     /** 开始时间 */
     @ApiModelProperty(value = "开始时间", position = 2)
@@ -45,11 +44,11 @@ public class ClassHour {
 
     /** 班级id */
     @ApiModelProperty(value = "班级id", position = 4)
-    private Long classId;
+    private String classId;
 
     /** 章节id */
     @ApiModelProperty(value = "章节id", position = 4)
-    private Long chapterId;
+    private String chapterId;
 
     /** 课时名称 */
     @ApiModelProperty(value = "课时名称", position = 6)
@@ -61,15 +60,15 @@ public class ClassHour {
 
     /** 视频资源 */
     @ApiModelProperty(value = "视频资源", position = 4)
-    private Long videoResource;
+    private String videoResource;
 
     /** 讲义资源 */
     @ApiModelProperty(value = "讲义资源", position = 4)
-    private Long teachmaterialsFile;
+    private String teachmaterialsFile;
 
     /** 字幕资源 */
     @ApiModelProperty(value = "字幕资源", position = 4)
-    private Long subtitleFile;
+    private String subtitleFile;
 
     /** DELETE_FLAG */
     @ApiModelProperty(value = "DELETE_FLAG", position = 7)

+ 2 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/ChapterMapper.xml

@@ -20,8 +20,9 @@
             IFNULL(cc.id,'') AS id,
             IFNULL(cc.pid,'') AS pid,
             IFNULL(cc.name,'') AS name,
-            IFNULL(cc.course_id,'') ascourseId
+            IFNULL(cc.course_id,'') AS courseId
         FROM COURSE_CHAPTER cc
+        WHERE 1=1
         <if test="id !=null and id != ''">
             and cc.id=#{id}
         </if>

+ 32 - 15
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/mapper/mapping/ClassHourMapper.xml

@@ -7,7 +7,7 @@
            a."start_time",
            a."end_time",
            a."class_id",
-           a."course_id",
+           a."chapter_id",
            a."remark",
            a.DELETE_FLAG,
            a.UPDATE_TIME,
@@ -36,7 +36,7 @@
             a."start_time",
             a."end_time",
             a."class_id",
-            a."course_id",
+            a."chapter_id",
             a."remark",
             a.DELETE_FLAG,
             a.UPDATE_TIME,
@@ -54,11 +54,12 @@
 
     <select id="queryInfo" resultType="java.util.Map">
         SELECT
-            cc.id AS id,
-            IFNULL (cc.chapter_id,'') AS chapterId,
-            IFNULL (cc.remark,'') AS remark,
+            cc.ID AS id,
+            IFNULL (cc.NAME,'') AS name,
+            IFNULL (cc.CHAPTER_ID ,'') AS chapterId,
+            IFNULL (cc.REMARK ,'') AS remark,
             IFNULL (cc.VIDEO_RESOURCE,'') AS videoResource,
-            IFNULL (cc.TEACHMATERRIALS_FILE,'') AS teachmaterialsFile,
+            IFNULL (cc.TEACHMATERIALS_FILE,'') AS teachmaterialsFile,
             IFNULL (cc.SUBTITLE_FILE,'') AS subtitleFile,
             IFNULL (ru.FILE_NAME,'') AS videoResourceName,
             IFNULL (rf.FILE_URL,'') AS videoResourceUrl,
@@ -70,23 +71,30 @@
         LEFT JOIN RESOURCE_RECORD rr ON rr.ID =cc.VIDEO_RESOURCE AND cc.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN RESOURCE_USERFILE ru ON ru.USER_FILE_ID = rr.USERFILE_ID AND ru.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN RESOURCE_FILE rf ON ru.FILE_ID= rf.FILE_ID
-        LEFT JOIN DEV_FILE df ON cc.TEACHMATERRIALS_FILE =df.ID AND df.DELETE_FLAG ='NOT_DELETE'
+        LEFT JOIN DEV_FILE df ON cc.TEACHMATERIALS_FILE =df.ID AND df.DELETE_FLAG ='NOT_DELETE'
         LEFT JOIN DEV_FILE df2 ON cc.SUBTITLE_FILE =df2.ID AND df2.DELETE_FLAG ='NOT_DELETE'
+        where 1=1
+        <if test="id !=null  and id != ''">
+            and cc.ID =#{id}
+        </if>
     </select>
     <select id="queryList" resultType="java.util.Map">
         SELECT
-            cc.id AS id,
+            cc.ID AS id,
             IFNULL (cc.NAME,'') AS name,
-            IFNULL (cc.chapter_id,'') AS chapterId,
-            IFNULL (cc.remark,'') AS remark,
+            IFNULL (cc.CHAPTER_ID ,'') AS chapterId,
+            IFNULL (cc.REMARK ,'') AS remark,
             IFNULL (cc.VIDEO_RESOURCE,'') AS videoResource,
-            IFNULL (cc.TEACHMATERRIALS_FILE,'') AS teachmaterialsFile,
+            IFNULL (cc.TEACHMATERIALS_FILE,'') AS teachmaterialsFile,
             IFNULL (cc.SUBTITLE_FILE,'') AS subtitleFile
         FROM  COURSE_CLASSHOUR cc
         where cc.DELETE_FLAG ='NOT_DELETE'
         <if test="param.chapterId !=null and param.chapterId != ''">
             and cc.chapter_id=#{param.chapterId}
         </if>
+        <if test="param.name !=null and param.name != ''">
+            and cc.NAME like CONCAT('%', #{param.name}, '%')
+        </if>
         <if test="param.chapterIdList !=null and param.chapterIdList.size()>0">
             and cc.chapter_id in
             <foreach collection=" param.chapterIdList" close=")" index="index" item="item" open="(" separator=",">
@@ -97,18 +105,27 @@
 
     <select id="queryAllList" resultType="java.util.Map">
         SELECT
-            cc.id AS id,
+            cc.ID AS id,
             IFNULL (cc.NAME,'') AS name,
-            IFNULL (cc.chapter_id,'') AS chapterId,
-            IFNULL (cc.remark,'') AS remark,
+            IFNULL (cc.CHAPTER_ID ,'') AS chapterId,
+            IFNULL (cc.REMARK ,'') AS remark,
+            IFNULL (rr.CREATE_TIME,'') AS createTime,
+            IFNULL (su.NAME,'') AS createUserName,
             IFNULL (cc.VIDEO_RESOURCE,'') AS videoResource,
-            IFNULL (cc.TEACHMATERRIALS_FILE,'') AS teachmaterialsFile,
+            IFNULL (cc.TEACHMATERIALS_FILE,'') AS teachmaterialsFile,
             IFNULL (cc.SUBTITLE_FILE,'') AS subtitleFile
         FROM  COURSE_CLASSHOUR cc
+        LEFT JOIN RESOURCE_RECORD rr ON rr.ID =cc.VIDEO_RESOURCE AND cc.DELETE_FLAG ='NOT_DELETE'
+        LEFT JOIN RESOURCE_USERFILE ru ON ru.USER_FILE_ID = rr.USERFILE_ID AND ru.DELETE_FLAG ='NOT_DELETE'
+        LEFT JOIN RESOURCE_FILE rf ON ru.FILE_ID= rf.FILE_ID
+        LEFT JOIN SYS_USER su ON rr.CREATE_USER =su.ID AND su.DELETE_FLAG ='NOT_DELETE'
         where cc.DELETE_FLAG ='NOT_DELETE'
         <if test="chapterId !=null and chapterId != ''">
             and cc.chapter_id=#{chapterId}
         </if>
+        <if test="name !=null and name != ''">
+            and cc.NAME like CONCAT('%', #{name}, '%')
+        </if>
         <if test="chapterIdList !=null and chapterIdList.size()>0">
             and cc.chapter_id in
             <foreach collection=" chapterIdList" close=")" index="index" item="item" open="(" separator=",">

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ChapterEditParam.java

@@ -34,7 +34,7 @@ public class ChapterEditParam {
     /** 主键 */
     @ApiModelProperty(value = "主键", required = true, position = 1)
     @NotNull(message = "id不能为空")
-    private Integer id;
+    private String id;
 
     /** 父id */
     @ApiModelProperty(value = "父id", position = 2)

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ChapterIdParam.java

@@ -31,5 +31,5 @@ public class ChapterIdParam {
     /** 主键 */
     @ApiModelProperty(value = "主键", required = true)
     @NotBlank(message = "id不能为空")
-    private Integer id;
+    private String id;
 }

+ 13 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourAddParam.java

@@ -47,7 +47,7 @@ public class ClassHourAddParam {
     /** 章节id */
     @ApiModelProperty(value = "章节id", position = 4)
     @NotBlank(message = "章节id不能为空")
-    private Long chapterId;
+    private String chapterId;
 
     /** 课程id */
     @ApiModelProperty(value = "课程id", position = 5)
@@ -57,4 +57,16 @@ public class ClassHourAddParam {
     @ApiModelProperty(value = "备注", position = 6)
     private String remark;
 
+    /** 视频资源 */
+    @ApiModelProperty(value = "视频资源", position = 6)
+    private String videoResource;
+
+    /** 讲义资源 */
+    @ApiModelProperty(value = "讲义资源", position = 6)
+    private String teachmaterialsFile;
+
+    /** 字幕资源 */
+    @ApiModelProperty(value = "字幕资源", position = 6)
+    private String subtitleFile;
+
 }

+ 14 - 2
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourEditParam.java

@@ -34,7 +34,7 @@ public class ClassHourEditParam {
     /** 主键 */
     @ApiModelProperty(value = "主键", required = true, position = 1)
     @NotNull(message = "id不能为空")
-    private Integer id;
+    private String id;
 
     /** 开始时间 */
     @ApiModelProperty(value = "开始时间", position = 2)
@@ -50,7 +50,7 @@ public class ClassHourEditParam {
 
     /** 章节id */
     @ApiModelProperty(value = "章节id", position = 4)
-    private Long chapterId;
+    private String chapterId;
 
     /** 课程id */
     @ApiModelProperty(value = "课程id", position = 5)
@@ -60,4 +60,16 @@ public class ClassHourEditParam {
     @ApiModelProperty(value = "备注", position = 6)
     private String remark;
 
+    /** 视频资源 */
+    @ApiModelProperty(value = "视频资源", position = 6)
+    private String videoResource;
+
+    /** 讲义资源 */
+    @ApiModelProperty(value = "讲义资源", position = 6)
+    private String teachmaterialsFile;
+
+    /** 字幕资源 */
+    @ApiModelProperty(value = "字幕资源", position = 6)
+    private String subtitleFile;
+
 }

+ 3 - 3
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/param/ClassHourPageParam.java

@@ -45,9 +45,9 @@ public class ClassHourPageParam {
     private String sortOrder;
 
 
-    /** 课程id */
-    @ApiModelProperty(value = "课程id", position = 5)
-    private String courseId;
+    /** 章节id */
+    @ApiModelProperty(value = "章节id", position = 5)
+    private String chapterId;
 
 
     /** 班级id */

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/ChapterService.java

@@ -96,7 +96,7 @@ public interface ChapterService extends IService<Chapter> {
      * @author pans
      * @date  2025/07/02 15:34
      **/
-    Chapter queryEntity(Integer id);
+    Chapter queryEntity(String id);
 
     /**
      *  课程章节-分页列表

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/ClassHourService.java

@@ -95,7 +95,7 @@ public interface ClassHourService extends IService<ClassHour> {
      * @author pans
      * @date  2025/07/02 10:36
      **/
-    ClassHour queryEntity(Integer id);
+    ClassHour queryEntity(String id);
 
     /**
      *  课程课时-分页列表

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/ChapterServiceImpl.java

@@ -103,7 +103,7 @@ public class ChapterServiceImpl extends ServiceImpl<ChapterMapper, Chapter> impl
     }
 
     @Override
-    public Chapter queryEntity(Integer id) {
+    public Chapter queryEntity(String id) {
         Chapter chapter = this.getById(id);
         if(ObjectUtil.isEmpty(chapter)) {
             throw new CommonException("课程章节表不存在,id值为:{}", id);

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/ClassHourServiceImpl.java

@@ -97,7 +97,7 @@ public class ClassHourServiceImpl extends ServiceImpl<ClassHourMapper, ClassHour
     }
 
     @Override
-    public ClassHour queryEntity(Integer id) {
+    public ClassHour queryEntity(String id) {
         ClassHour classHour = this.getById(id);
         if(ObjectUtil.isEmpty(classHour)) {
             throw new CommonException("课时表不存在,id值为:{}", id);

+ 5 - 4
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/EducationController.java

@@ -1,8 +1,11 @@
 package vip.xiaonuo.exam.controller.admin;
 
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.exam.base.BaseApiController;
 import vip.xiaonuo.exam.base.RestResponse;
+import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.domain.Subject;
 import vip.xiaonuo.exam.service.SubjectService;
 import vip.xiaonuo.exam.utility.PageInfoHelper;
@@ -34,10 +37,8 @@ public class EducationController extends BaseApiController {
     }
 
     @RequestMapping(value = "/subject/page", method = RequestMethod.POST)
-    public RestResponse<PageInfo<SubjectResponseVM>> pageList(@RequestBody SubjectPageRequestVM model) {
-        PageInfo<Subject> pageInfo = subjectService.page(model);
-        PageInfo<SubjectResponseVM> page = PageInfoHelper.copyMap(pageInfo, e -> modelMapper.map(e, SubjectResponseVM.class));
-        return RestResponse.ok(page);
+    public CommonResult<Page<Subject>> pageList(@RequestBody SubjectPageRequestVM model) {
+        return CommonResult.data(subjectService.page(model));
     }
 
     @RequestMapping(value = "/subject/edit", method = RequestMethod.POST)

+ 11 - 13
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/ExamPaperAnswerController.java

@@ -1,11 +1,13 @@
 package vip.xiaonuo.exam.controller.admin;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageInfo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.exam.base.BaseApiController;
 import vip.xiaonuo.exam.base.RestResponse;
 import vip.xiaonuo.exam.domain.ExamPaperAnswer;
@@ -35,22 +37,18 @@ public class ExamPaperAnswerController extends BaseApiController {
 
 
     @RequestMapping(value = "/page", method = RequestMethod.POST)
-    public RestResponse<PageInfo<ExamPaperAnswerPageResponseVM>> pageJudgeList(@RequestBody ExamPaperAnswerPageRequestVM model) {
-        PageInfo<ExamPaperAnswer> pageInfo = examPaperAnswerService.adminPage(model);
-        PageInfo<ExamPaperAnswerPageResponseVM> page = PageInfoHelper.copyMap(pageInfo, e -> {
-            ExamPaperAnswerPageResponseVM vm = modelMapper.map(e, ExamPaperAnswerPageResponseVM.class);
+    public CommonResult<Page<ExamPaperAnswer>> pageJudgeList(@RequestBody ExamPaperAnswerPageRequestVM model) {
+        Page<ExamPaperAnswer> pageInfo = examPaperAnswerService.adminPage(model);
+        pageInfo.getRecords().forEach(vm -> {
             Subject subject = subjectService.selectById(vm.getSubjectId());
-            vm.setDoTime(ExamUtil.secondToVM(e.getDoTime()));
-            vm.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore()));
-            vm.setUserScore(ExamUtil.scoreToVM(e.getUserScore()));
-            vm.setPaperScore(ExamUtil.scoreToVM(e.getPaperScore()));
+            vm.setDoTimeStr(ExamUtil.secondToVM(vm.getDoTime()));
+            vm.setSystemScoreStr(ExamUtil.scoreToVM(vm.getSystemScore()));
+            vm.setUserScoreStr(ExamUtil.scoreToVM(vm.getUserScore()));
+            vm.setPaperScoreStr(ExamUtil.scoreToVM(vm.getPaperScore()));
             vm.setSubjectName(subject.getName());
-            vm.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime()));
-         //   User user = userService.selectById(Integer.valueOf(e.getCreateUser()));
-          //  vm.setUserName(user.getUserName());
-            return vm;
+            vm.setCreateTimeStr(DateTimeUtil.dateFormat(vm.getCreateTime()));
         });
-        return RestResponse.ok(page);
+        return CommonResult.data(pageInfo);
     }
 
 

+ 11 - 13
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/ExamPaperController.java

@@ -36,36 +36,34 @@ public class ExamPaperController extends BaseApiController {
 
 
     @RequestMapping(value = "/taskExamPage", method = RequestMethod.POST)
-    public RestResponse<PageInfo<ExamResponseVM>> taskExamPageList(@RequestBody ExamPaperPageRequestVM model) {
-        PageInfo<ExamPaper> pageInfo = examPaperService.taskExamPage(model);
-        PageInfo<ExamResponseVM> page = PageInfoHelper.copyMap(pageInfo, e -> {
-            ExamResponseVM vm = modelMapper.map(e, ExamResponseVM.class);
-            vm.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime()));
-            return vm;
+    public CommonResult<Page<ExamPaper>> taskExamPageList(@RequestBody ExamPaperPageRequestVM model) {
+        Page<ExamPaper> pageInfo = examPaperService.taskExamPage(model);
+        pageInfo.getRecords().forEach(e -> {
+            e.setCreateTimeStr(DateTimeUtil.dateFormat(e.getCreateTime()));
         });
-        return RestResponse.ok(page);
+        return CommonResult.data(pageInfo);
     }
 
 
 
     @RequestMapping(value = "/edit", method = RequestMethod.POST)
-    public RestResponse<ExamPaperEditRequestVM> edit(@RequestBody @Valid ExamPaperEditRequestVM model) {
+    public CommonResult<ExamPaperEditRequestVM> edit(@RequestBody @Valid ExamPaperEditRequestVM model) {
         ExamPaper examPaper = examPaperService.savePaperFromVM(model, getCurrentUser());
         ExamPaperEditRequestVM newVM = examPaperService.examPaperToVM(examPaper.getId());
-        return RestResponse.ok(newVM);
+        return CommonResult.data(newVM);
     }
 
     @RequestMapping(value = "/select/{id}", method = RequestMethod.POST)
-    public RestResponse<ExamPaperEditRequestVM> select(@PathVariable Integer id) {
+    public CommonResult<ExamPaperEditRequestVM> select(@PathVariable Integer id) {
         ExamPaperEditRequestVM vm = examPaperService.examPaperToVM(id);
-        return RestResponse.ok(vm);
+        return CommonResult.data(vm);
     }
 
     @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
-    public RestResponse delete(@PathVariable Integer id) {
+    public CommonResult delete(@PathVariable Integer id) {
         ExamPaper examPaper = examPaperService.selectById(id);
         examPaper.setDeleted(true);
         examPaperService.updateByIdFilter(examPaper);
-        return RestResponse.ok();
+        return CommonResult.ok();
     }
 }

+ 17 - 26
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/QuestionController.java

@@ -1,8 +1,11 @@
 package vip.xiaonuo.exam.controller.admin;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.exam.base.BaseApiController;
 import vip.xiaonuo.exam.base.RestResponse;
 import vip.xiaonuo.exam.base.SystemCode;
+import vip.xiaonuo.exam.domain.ExamPaper;
 import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.domain.TextContent;
 import vip.xiaonuo.exam.domain.enums.QuestionTypeEnum;
@@ -35,25 +38,14 @@ public class QuestionController extends BaseApiController {
     }
 
     @RequestMapping(value = "/page", method = RequestMethod.POST)
-    public RestResponse<PageInfo<QuestionResponseVM>> pageList(@RequestBody QuestionPageRequestVM model) {
-        PageInfo<Question> pageInfo = questionService.page(model);
-        PageInfo<QuestionResponseVM> page = PageInfoHelper.copyMap(pageInfo, q -> {
-            QuestionResponseVM vm = modelMapper.map(q, QuestionResponseVM.class);
-            vm.setCreateTime(DateTimeUtil.dateFormat(q.getCreateTime()));
-            vm.setScore(ExamUtil.scoreToVM(q.getScore()));
-            TextContent textContent = textContentService.selectById(q.getInfoTextContentId());
-            QuestionObject questionObject = JsonUtil.toJsonObject(textContent.getContent(), QuestionObject.class);
-            String clearHtml = HtmlUtil.clear(questionObject.getTitleContent());
-            vm.setShortTitle(clearHtml);
-            return vm;
-        });
-        return RestResponse.ok(page);
+    public CommonResult<Page<Question>> pageList(@RequestBody QuestionPageRequestVM model) {
+        return CommonResult.data(questionService.page(model));
     }
 
     @RequestMapping(value = "/edit", method = RequestMethod.POST)
-    public RestResponse edit(@RequestBody @Valid QuestionEditRequestVM model) {
-        RestResponse validQuestionEditRequestResult = validQuestionEditRequestVM(model);
-        if (validQuestionEditRequestResult.getCode() != SystemCode.OK.getCode()) {
+    public CommonResult edit(@RequestBody @Valid QuestionEditRequestVM model) {
+        CommonResult validQuestionEditRequestResult = validQuestionEditRequestVM(model);
+        if (validQuestionEditRequestResult.getCode() != 200) {
             return validQuestionEditRequestResult;
         }
 
@@ -63,31 +55,30 @@ public class QuestionController extends BaseApiController {
             questionService.updateFullQuestion(model);
         }
 
-        return RestResponse.ok();
+        return CommonResult.ok();
     }
 
     @RequestMapping(value = "/select/{id}", method = RequestMethod.POST)
-    public RestResponse<QuestionEditRequestVM> select(@PathVariable Integer id) {
-        QuestionEditRequestVM newVM = questionService.getQuestionEditRequestVM(id);
-        return RestResponse.ok(newVM);
+    public CommonResult<QuestionEditRequestVM> select(@PathVariable Integer id) {
+        return CommonResult.data(questionService.getQuestionEditRequestVM(id));
     }
 
 
     @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
-    public RestResponse delete(@PathVariable Integer id) {
+    public CommonResult delete(@PathVariable Integer id) {
         Question question = questionService.selectById(id);
         question.setDeleted(true);
         questionService.updateByIdFilter(question);
-        return RestResponse.ok();
+        return CommonResult.ok();
     }
 
-    private RestResponse validQuestionEditRequestVM(QuestionEditRequestVM model) {
+    private CommonResult validQuestionEditRequestVM(QuestionEditRequestVM model) {
         int qType = model.getQuestionType().intValue();
         boolean requireCorrect = qType == QuestionTypeEnum.SingleChoice.getCode() || qType == QuestionTypeEnum.TrueFalse.getCode();
         if (requireCorrect) {
             if (StringUtils.isBlank(model.getCorrect())) {
                 String errorMsg = ErrorUtil.parameterErrorFormat("correct", "不能为空");
-                return new RestResponse<>(SystemCode.ParameterValidError.getCode(), errorMsg);
+                return new CommonResult(SystemCode.ParameterValidError.getCode(),errorMsg,null);
             }
         }
 
@@ -96,9 +87,9 @@ public class QuestionController extends BaseApiController {
             Integer questionScore = ExamUtil.scoreFromVM(model.getScore());
             if (!fillSumScore.equals(questionScore)) {
                 String errorMsg = ErrorUtil.parameterErrorFormat("score", "空分数和与题目总分不相等");
-                return new RestResponse<>(SystemCode.ParameterValidError.getCode(), errorMsg);
+                return new CommonResult(SystemCode.ParameterValidError.getCode(),errorMsg,null);
             }
         }
-        return RestResponse.ok();
+        return CommonResult.ok();
     }
 }

+ 11 - 16
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/controller/admin/TaskController.java

@@ -1,8 +1,11 @@
 package vip.xiaonuo.exam.controller.admin;
 
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.exam.base.BaseApiController;
 import vip.xiaonuo.exam.base.RestResponse;
+import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.domain.TaskExam;
 import vip.xiaonuo.exam.service.TaskExamService;
 import vip.xiaonuo.exam.utility.DateTimeUtil;
@@ -28,36 +31,28 @@ public class TaskController extends BaseApiController {
     }
 
     @RequestMapping(value = "/page", method = RequestMethod.POST)
-    public RestResponse<PageInfo<TaskPageResponseVM>> pageList(@RequestBody TaskPageRequestVM model) {
-        PageInfo<TaskExam> pageInfo = taskExamService.page(model);
-        PageInfo<TaskPageResponseVM> page = PageInfoHelper.copyMap(pageInfo, m -> {
-            TaskPageResponseVM vm = modelMapper.map(m, TaskPageResponseVM.class);
-            vm.setCreateTime(DateTimeUtil.dateFormat(m.getCreateTime()));
-            return vm;
-        });
-        return RestResponse.ok(page);
+    public CommonResult<Page<TaskExam>> pageList(@RequestBody TaskPageRequestVM model) {
+        return CommonResult.data(taskExamService.page(model));
     }
 
 
     @RequestMapping(value = "/edit", method = RequestMethod.POST)
-    public RestResponse edit(@RequestBody @Valid TaskRequestVM model) {
+    public CommonResult<TaskRequestVM> edit(@RequestBody @Valid TaskRequestVM model) {
         taskExamService.edit(model, getCurrentUser());
-        TaskRequestVM vm = taskExamService.taskExamToVM(model.getId());
-        return RestResponse.ok(vm);
+        return CommonResult.data(taskExamService.taskExamToVM(model.getId()));
     }
 
 
     @RequestMapping(value = "/select/{id}", method = RequestMethod.POST)
-    public RestResponse<TaskRequestVM> select(@PathVariable Integer id) {
-        TaskRequestVM vm = taskExamService.taskExamToVM(id);
-        return RestResponse.ok(vm);
+    public CommonResult<TaskRequestVM> select(@PathVariable Integer id) {
+        return CommonResult.data(taskExamService.taskExamToVM(id));
     }
 
     @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
-    public RestResponse delete(@PathVariable Integer id) {
+    public CommonResult delete(@PathVariable Integer id) {
         TaskExam taskExam = taskExamService.selectById(id);
         taskExam.setDeleted(true);
         taskExamService.updateByIdFilter(taskExam);
-        return RestResponse.ok();
+        return CommonResult.ok();
     }
 }

+ 10 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/domain/ExamPaper.java

@@ -63,6 +63,8 @@ public class ExamPaper implements Serializable {
 
     private Date createTime;
 
+    private String createTimeStr;
+
     private Boolean deleted;
 
     private Integer taskExamId;
@@ -186,4 +188,12 @@ public class ExamPaper implements Serializable {
     public void setTaskExamId(Integer taskExamId) {
         this.taskExamId = taskExamId;
     }
+
+    public String getCreateTimeStr() {
+        return createTimeStr;
+    }
+
+    public void setCreateTimeStr(String createTimeStr) {
+        this.createTimeStr = createTimeStr;
+    }
 }

+ 58 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/domain/ExamPaperAnswer.java

@@ -26,21 +26,27 @@ public class ExamPaperAnswer implements Serializable {
      */
     private Integer subjectId;
 
+    private String subjectName;
+
     /**
      * 系统判定得分
      */
     private Integer systemScore;
 
+    private String systemScoreStr;
+
     /**
      * 最终得分(千分制)
      */
     private Integer userScore;
 
+    private String userScoreStr;
     /**
      * 试卷总分
      */
     private Integer paperScore;
 
+    private String paperScoreStr;
     /**
      * 做对题目数量
      */
@@ -71,8 +77,12 @@ public class ExamPaperAnswer implements Serializable {
      */
     private Date createTime;
 
+    private String createTimeStr;
+
     private Integer taskExamId;
 
+    private String doTimeStr;
+
     public Integer getId() {
         return id;
     }
@@ -192,4 +202,52 @@ public class ExamPaperAnswer implements Serializable {
     public void setTaskExamId(Integer taskExamId) {
         this.taskExamId = taskExamId;
     }
+
+    public String getDoTimeStr() {
+        return doTimeStr;
+    }
+
+    public void setDoTimeStr(String doTimeStr) {
+        this.doTimeStr = doTimeStr;
+    }
+
+    public String getSystemScoreStr() {
+        return systemScoreStr;
+    }
+
+    public void setSystemScoreStr(String systemScoreStr) {
+        this.systemScoreStr = systemScoreStr;
+    }
+
+    public String getSubjectName() {
+        return subjectName;
+    }
+
+    public void setSubjectName(String subjectName) {
+        this.subjectName = subjectName;
+    }
+
+    public String getUserScoreStr() {
+        return userScoreStr;
+    }
+
+    public void setUserScoreStr(String userScoreStr) {
+        this.userScoreStr = userScoreStr;
+    }
+
+    public String getPaperScoreStr() {
+        return paperScoreStr;
+    }
+
+    public void setPaperScoreStr(String paperScoreStr) {
+        this.paperScoreStr = paperScoreStr;
+    }
+
+    public String getCreateTimeStr() {
+        return createTimeStr;
+    }
+
+    public void setCreateTimeStr(String createTimeStr) {
+        this.createTimeStr = createTimeStr;
+    }
 }

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/ExamPaperAnswerMapper.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.exam.domain.ExamPaperAnswer;
 import vip.xiaonuo.exam.domain.other.KeyValue;
 import vip.xiaonuo.exam.viewmodel.admin.paper.ExamPaperAnswerPageRequestVM;
@@ -21,5 +22,5 @@ public interface ExamPaperAnswerMapper extends BaseMapper<ExamPaperAnswer> {
 
     ExamPaperAnswer getByPidUid(@Param("pid") Integer paperId, @Param("uid") String uid);
 
-    List<ExamPaperAnswer> adminPage(ExamPaperAnswerPageRequestVM requestVM);
+    Page<ExamPaperAnswer> adminPage(@Param("bo") ExamPaperAnswerPageRequestVM requestVM,@Param("page") Page<ExamPaperAnswer> page);
 }

+ 1 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/ExamPaperMapper.java

@@ -19,7 +19,7 @@ public interface ExamPaperMapper extends BaseMapper<ExamPaper> {
 
     Page<ExamPaper> page(@Param("bo")ExamPaperPageRequestVM bo, @Param("page") Page<ExamPaper> page);
 
-    List<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM);
+    Page<ExamPaper> taskExamPage(@Param("bo")ExamPaperPageRequestVM requestVM, @Param("page") Page<ExamPaper> page);
 
     List<ExamPaper> studentPage(ExamPaperPageVM requestVM);
 

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/QuestionMapper.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.exam.domain.other.KeyValue;
 import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.viewmodel.admin.question.QuestionPageRequestVM;
@@ -12,7 +13,7 @@ import java.util.List;
 @Mapper
 public interface QuestionMapper extends BaseMapper<Question> {
 
-    List<Question> page(QuestionPageRequestVM requestVM);
+    Page<Question> page(@Param("bo") QuestionPageRequestVM requestVM, @Param("page") Page page);
 
     List<Question> selectByIds(@Param("ids") List<Integer> ids);
 

+ 3 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/SubjectMapper.java

@@ -1,5 +1,7 @@
 package vip.xiaonuo.exam.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
 import vip.xiaonuo.exam.domain.Subject;
 import vip.xiaonuo.exam.viewmodel.admin.education.SubjectPageRequestVM;
 import org.apache.ibatis.annotations.Mapper;
@@ -13,5 +15,5 @@ public interface SubjectMapper  extends BaseMapper<Subject> {
 
     List<Subject> allSubject();
 
-    List<Subject> page(SubjectPageRequestVM requestVM);
+    Page<Subject> page(@Param("bo") SubjectPageRequestVM requestVM, @Param("page") Page<Subject> page);
 }

+ 3 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/TaskExamMapper.java

@@ -1,5 +1,7 @@
 package vip.xiaonuo.exam.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
 import vip.xiaonuo.exam.domain.TaskExam;
 import vip.xiaonuo.exam.viewmodel.admin.task.TaskPageRequestVM;
 import org.apache.ibatis.annotations.Mapper;
@@ -9,7 +11,7 @@ import java.util.List;
 @Mapper
 public interface TaskExamMapper extends BaseMapper<TaskExam> {
 
-    List<TaskExam> page(TaskPageRequestVM requestVM);
+    Page<TaskExam> page(@Param("bo")TaskPageRequestVM requestVM,@Param("page") Page<TaskExam> page);
 
     List<TaskExam> getByGradeLevel(Integer gradeLevel);
 }

+ 2 - 2
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/ExamPaperAnswerMapper.xml

@@ -257,8 +257,8 @@
     <include refid="Base_Column_List"/>
     FROM t_exam_paper_answer
     <where>
-      <if test="subjectId != null">
-        and subject_id = #{subjectId}
+      <if test="bo.subjectId != null">
+        and subject_id = #{bo.subjectId}
       </if>
     </where>
   </select>

+ 3 - 2
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/ExamPaperMapper.xml

@@ -259,9 +259,10 @@
     <where>
       and deleted=0
       and task_exam_id is null
-      and grade_level= #{level}
-      and paper_type=#{paperType}
+      and grade_level= #{bo.level}
+      and paper_type=#{bo.paperType}
     </where>
+    order by create_time desc
   </select>
 
   <select id="studentPage" resultMap="BaseResultMap" parameterType="vip.xiaonuo.exam.viewmodel.student.exam.ExamPaperPageVM">

+ 11 - 10
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/QuestionMapper.xml

@@ -184,22 +184,23 @@
     FROM t_question
     <where>
         and deleted=0
-      <if test="id != null ">
-        and id= #{id}
+      <if test="bo.id != null ">
+        and id= #{bo.id}
       </if>
-      <if test="level != null ">
-        and grade_level= #{level}
+      <if test="bo.level != null ">
+        and grade_level= #{bo.level}
       </if>
-      <if test="subjectId != null ">
-        and subject_id= #{subjectId}
+      <if test="bo.subjectId != null ">
+        and subject_id= #{bo.subjectId}
       </if>
-      <if test="questionType != null ">
-        and question_type= #{questionType}
+      <if test="bo.questionType != null ">
+        and question_type= #{bo.questionType}
       </if>
-      <if test="content != null">
-        and info_text_content_id in (SELECT id FROM t_text_content WHERE content like concat('%',#{content},'%') )
+      <if test="bo.content != null">
+        and info_text_content_id in (SELECT id FROM t_text_content WHERE content like concat('%',#{bo.content},'%') )
       </if>
     </where>
+    order by create_time desc
   </select>
 
 

+ 7 - 7
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/SubjectMapper.xml

@@ -13,7 +13,7 @@
     id, name, level, level_name, item_order, deleted
   </sql>
   <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
-    select 
+    select
     <include refid="Base_Column_List" />
     from t_subject
     where id = #{id,jdbcType=INTEGER}
@@ -23,10 +23,10 @@
     where id = #{id,jdbcType=INTEGER}
   </delete>
   <insert id="insert" parameterType="vip.xiaonuo.exam.domain.Subject" useGeneratedKeys="true" keyProperty="id">
-    insert into t_subject (id, name, level, 
+    insert into t_subject (id, name, level,
       level_name, item_order, deleted
       )
-    values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{level,jdbcType=INTEGER}, 
+    values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{level,jdbcType=INTEGER},
       #{levelName,jdbcType=VARCHAR}, #{itemOrder,jdbcType=INTEGER}, #{deleted,jdbcType=BIT}
       )
   </insert>
@@ -125,11 +125,11 @@
     FROM t_subject
     <where>
         and deleted=0
-      <if test="id != null ">
-        and id= #{id}
+      <if test="bo.id != null ">
+        and id= #{bo.id}
       </if>
-      <if test="level != null ">
-        and level= #{level}
+      <if test="bo.level != null ">
+        and level= #{bo.level}
       </if>
     </where>
   </select>

+ 2 - 2
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/mapper/mapping/TaskExamMapper.xml

@@ -140,8 +140,8 @@
     from t_task_exam
     <where>
         and deleted=0
-      <if test="gradeLevel != null">
-        and grade_level = #{gradeLevel}
+      <if test="bo.gradeLevel != null">
+        and grade_level = #{bo.gradeLevel}
       </if>
     </where>
   </select>

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/ExamPaperAnswerService.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageInfo;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.exam.domain.ExamPaperAnswer;
@@ -50,5 +51,5 @@ public interface ExamPaperAnswerService extends BaseService<ExamPaperAnswer> {
 
     List<Integer> selectMothCount();
 
-    PageInfo<ExamPaperAnswer> adminPage(ExamPaperAnswerPageRequestVM requestVM);
+    Page<ExamPaperAnswer> adminPage(ExamPaperAnswerPageRequestVM requestVM);
 }

+ 1 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/ExamPaperService.java

@@ -17,7 +17,7 @@ public interface ExamPaperService extends BaseService<ExamPaper> {
 
     Page<ExamPaper> page(ExamPaperPageRequestVM requestVM);
 
-    PageInfo<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM);
+    Page<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM);
 
     PageInfo<ExamPaper> studentPage(ExamPaperPageVM requestVM);
 

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/QuestionService.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.viewmodel.admin.question.QuestionEditRequestVM;
 import vip.xiaonuo.exam.viewmodel.admin.question.QuestionPageRequestVM;
@@ -9,7 +10,7 @@ import java.util.List;
 
 public interface QuestionService extends BaseService<Question> {
 
-    PageInfo<Question> page(QuestionPageRequestVM requestVM);
+    Page<Question> page(QuestionPageRequestVM requestVM);
 
     Question insertFullQuestion(QuestionEditRequestVM model, String userId);
 

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/SubjectService.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.exam.domain.Subject;
 import vip.xiaonuo.exam.viewmodel.admin.education.SubjectPageRequestVM;
 import com.github.pagehelper.PageInfo;
@@ -14,5 +15,5 @@ public interface SubjectService extends BaseService<Subject> {
 
     Integer levelBySubjectId(Integer id);
 
-    PageInfo<Subject> page(SubjectPageRequestVM requestVM);
+    Page<Subject> page(SubjectPageRequestVM requestVM);
 }

+ 2 - 1
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/TaskExamService.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageInfo;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.exam.domain.TaskExam;
@@ -10,7 +11,7 @@ import java.util.List;
 
 public interface TaskExamService extends BaseService<TaskExam> {
 
-    PageInfo<TaskExam> page(TaskPageRequestVM requestVM);
+    Page<TaskExam> page(TaskPageRequestVM requestVM);
 
     void edit(TaskRequestVM model, SaBaseLoginUser user);
 

+ 5 - 3
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/ExamPaperAnswerServiceImpl.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.exam.domain.*;
 import vip.xiaonuo.exam.domain.enums.ExamPaperAnswerStatusEnum;
@@ -272,8 +273,9 @@ public class ExamPaperAnswerServiceImpl extends BaseServiceImpl<ExamPaperAnswer>
 
 
     @Override
-    public PageInfo<ExamPaperAnswer> adminPage(ExamPaperAnswerPageRequestVM requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
-                examPaperAnswerMapper.adminPage(requestVM));
+    public Page<ExamPaperAnswer> adminPage(ExamPaperAnswerPageRequestVM requestVM) {
+        Page<ExamPaperAnswer> page = new Page<ExamPaperAnswer>(requestVM.getCurrent(), requestVM.getSize());
+        page.setSearchCount(true); // 设置计算总记录数
+        return examPaperAnswerMapper.adminPage(requestVM,page);
     }
 }

+ 4 - 3
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/ExamPaperServiceImpl.java

@@ -70,9 +70,10 @@ public class ExamPaperServiceImpl extends BaseServiceImpl<ExamPaper> implements
     }
 
     @Override
-    public PageInfo<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
-                examPaperMapper.taskExamPage(requestVM));
+    public Page<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM) {
+        Page<ExamPaper> page = new Page<ExamPaper>(requestVM.getCurrent(), requestVM.getSize());
+        page.setSearchCount(true); // 设置计算总记录数
+        return examPaperMapper.taskExamPage(requestVM,page);
     }
 
     @Override

+ 6 - 4
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/QuestionServiceImpl.java

@@ -1,5 +1,7 @@
 package vip.xiaonuo.exam.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.exam.domain.ExamPaper;
 import vip.xiaonuo.exam.domain.other.KeyValue;
 import vip.xiaonuo.exam.domain.Question;
 import vip.xiaonuo.exam.domain.TextContent;
@@ -46,10 +48,10 @@ public class QuestionServiceImpl extends BaseServiceImpl<Question> implements Qu
     }
 
     @Override
-    public PageInfo<Question> page(QuestionPageRequestVM requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
-                questionMapper.page(requestVM)
-        );
+    public Page<Question> page(QuestionPageRequestVM requestVM) {
+        Page<ExamPaper> page = new Page<ExamPaper>(requestVM.getCurrent(), requestVM.getSize());
+        page.setSearchCount(true); // 设置计算总记录数
+        return questionMapper.page(requestVM,page);
     }
 
 

+ 6 - 4
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/SubjectServiceImpl.java

@@ -1,5 +1,7 @@
 package vip.xiaonuo.exam.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.exam.domain.ExamPaper;
 import vip.xiaonuo.exam.domain.Subject;
 import vip.xiaonuo.exam.mapper.SubjectMapper;
 import vip.xiaonuo.exam.service.SubjectService;
@@ -48,10 +50,10 @@ public class SubjectServiceImpl extends BaseServiceImpl<Subject> implements Subj
     }
 
     @Override
-    public PageInfo<Subject> page(SubjectPageRequestVM requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
-                subjectMapper.page(requestVM)
-        );
+    public Page<Subject> page(SubjectPageRequestVM requestVM) {
+        Page<Subject> page = new Page<Subject>(requestVM.getCurrent(), requestVM.getSize());
+        page.setSearchCount(true); // 设置计算总记录数
+        return subjectMapper.page(requestVM,page);
     }
 
 }

+ 6 - 4
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/service/impl/TaskExamServiceImpl.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.exam.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import org.modelmapper.ModelMapper;
@@ -8,6 +9,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.exam.domain.ExamPaper;
+import vip.xiaonuo.exam.domain.Subject;
 import vip.xiaonuo.exam.domain.TaskExam;
 import vip.xiaonuo.exam.domain.TextContent;
 import vip.xiaonuo.exam.domain.task.TaskItemObject;
@@ -44,10 +46,10 @@ public class TaskExamServiceImpl extends BaseServiceImpl<TaskExam> implements Ta
     }
 
     @Override
-    public PageInfo<TaskExam> page(TaskPageRequestVM requestVM) {
-        return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "id desc").doSelectPageInfo(() ->
-                taskExamMapper.page(requestVM)
-        );
+    public Page<TaskExam> page(TaskPageRequestVM requestVM) {
+        Page<TaskExam> page = new Page<TaskExam>(requestVM.getCurrent(), requestVM.getSize());
+        page.setSearchCount(true); // 设置计算总记录数
+        return taskExamMapper.page(requestVM,page);
     }
 
     @Override

+ 20 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/education/SubjectPageRequestVM.java

@@ -8,6 +8,10 @@ public class SubjectPageRequestVM extends BasePage {
     private Integer id;
     private Integer level;
 
+    private Integer current;
+
+    private Integer size;
+
     public Integer getId() {
         return id;
     }
@@ -23,4 +27,20 @@ public class SubjectPageRequestVM extends BasePage {
     public void setLevel(Integer level) {
         this.level = level;
     }
+
+    public Integer getCurrent() {
+        return current;
+    }
+
+    public void setCurrent(Integer current) {
+        this.current = current;
+    }
+
+    public Integer getSize() {
+        return size;
+    }
+
+    public void setSize(Integer size) {
+        this.size = size;
+    }
 }

+ 20 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/paper/ExamPaperAnswerPageRequestVM.java

@@ -5,6 +5,10 @@ import vip.xiaonuo.exam.base.BasePage;
 public class ExamPaperAnswerPageRequestVM extends BasePage {
     private Integer subjectId;
 
+    private Integer current;
+
+    private Integer size;
+
     public Integer getSubjectId() {
         return subjectId;
     }
@@ -12,4 +16,20 @@ public class ExamPaperAnswerPageRequestVM extends BasePage {
     public void setSubjectId(Integer subjectId) {
         this.subjectId = subjectId;
     }
+
+    public Integer getCurrent() {
+        return current;
+    }
+
+    public void setCurrent(Integer current) {
+        this.current = current;
+    }
+
+    public Integer getSize() {
+        return size;
+    }
+
+    public void setSize(Integer size) {
+        this.size = size;
+    }
 }

+ 19 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/question/QuestionPageRequestVM.java

@@ -12,6 +12,9 @@ public class QuestionPageRequestVM extends BasePage {
     private Integer questionType;
     private String content;
 
+    private Integer current;
+
+    private Integer size;
 
     public Integer getId() {
         return id;
@@ -52,4 +55,20 @@ public class QuestionPageRequestVM extends BasePage {
     public void setContent(String content) {
         this.content = content;
     }
+
+    public Integer getCurrent() {
+        return current;
+    }
+
+    public void setCurrent(Integer current) {
+        this.current = current;
+    }
+
+    public Integer getSize() {
+        return size;
+    }
+
+    public void setSize(Integer size) {
+        this.size = size;
+    }
 }

+ 20 - 0
snowy-plugin/snowy-plugin-exam/snowy-plugin-exam-func/src/main/java/vip/xiaonuo/exam/viewmodel/admin/task/TaskPageRequestVM.java

@@ -7,6 +7,10 @@ import vip.xiaonuo.exam.base.BasePage;
 public class TaskPageRequestVM extends BasePage {
     private Integer gradeLevel;
 
+    private Integer current;
+
+    private Integer size;
+
     public Integer getGradeLevel() {
         return gradeLevel;
     }
@@ -14,4 +18,20 @@ public class TaskPageRequestVM extends BasePage {
     public void setGradeLevel(Integer gradeLevel) {
         this.gradeLevel = gradeLevel;
     }
+
+    public Integer getCurrent() {
+        return current;
+    }
+
+    public void setCurrent(Integer current) {
+        this.current = current;
+    }
+
+    public Integer getSize() {
+        return size;
+    }
+
+    public void setSize(Integer size) {
+        this.size = size;
+    }
 }

+ 18 - 5
snowy-server/snowy-gateway-app/pom.xml

@@ -203,14 +203,27 @@
         </dependency>
         -->
         <!-- 达梦数据库 -->
+<!--        <dependency>-->
+<!--            <groupId>DmJdbcDriver18</groupId>-->
+<!--            <artifactId>DmJdbcDriver18</artifactId>-->
+<!--            <version>1.0.0</version>-->
+<!--            <scope>system</scope>-->
+<!--            <systemPath>${pom.basedir}/src/main/resources/lib/DmJdbcDriver18.jar</systemPath>-->
+<!--        </dependency>-->
+        <!-- 达梦数据库 -->
         <dependency>
-            <groupId>DmJdbcDriver18</groupId>
+            <groupId>com.dameng</groupId>
             <artifactId>DmJdbcDriver18</artifactId>
-            <version>1.0.0</version>
-            <scope>system</scope>
-            <systemPath>${pom.basedir}/src/main/resources/lib/DmJdbcDriver18.jar</systemPath>
         </dependency>
-
+        <dependency>
+            <groupId>com.dameng</groupId>
+            <artifactId>DmDialect-for-hibernate5.3</artifactId>
+        </dependency>
+        <dependency>
+            <!--注意:只有这个版本的hibernate兼容达梦数据库 -->
+            <groupId>org.hibernate</groupId>
+            <artifactId>hibernate-core</artifactId>
+        </dependency>
         <!-- druid -->
         <dependency>
             <groupId>com.alibaba</groupId>