Browse Source

update sort query

ting.yin 1 year ago
parent
commit
b1aa45b2ff

+ 1 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/ExamStudentServiceImpl.java

@@ -790,6 +790,7 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
         ExamStudentSearchQuery query = new ExamStudentSearchQuery();
         query.setPageNumber(1);
         query.setPageSize(count);
+        query.setSort(new Sort(Direction.ASC, "id"));
         return studentDao.findUnLibraryStudent(examId, subjectCode, groupNumber, query);
     }
 

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/InspectedServiceImpl.java

@@ -68,7 +68,7 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
         sql.append(" s.inspector_id inspectorId,s.inspected ");
         sql.append(" from eb_exam_student s left join eb_exam_subject es on s.exam_id=es.exam_id and s.subject_code=es.code ");
         String whereSql = getWhereSql(query, status, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
-        sql.append(whereSql).append(" order by s.inspect_time desc ");
+        sql.append(whereSql).append(" order by s.inspect_time desc,s.id asc");
         if (!query.isExport()) {
             sql.append(" limit " + offset + "," + query.getPageSize());
         }

+ 18 - 18
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/dao/MarkLibraryDao.java

@@ -15,13 +15,13 @@ import java.util.Set;
 
 public interface MarkLibraryDao extends JpaRepository<MarkLibrary, Integer>, JpaSpecificationExecutor<MarkLibrary> {
 
-    List<MarkLibrary> findByExamIdAndSubjectCode(Integer examId, String subjectCode, Pageable page);
-
-    List<MarkLibrary> findByExamIdAndSubjectCodeAndGroupNumberAndStatus(Integer examId, String subjectCode,
-            Integer groupNumber, LibraryStatus status, Pageable page);
-
-    List<MarkLibrary> findByExamIdAndSubjectCodeAndGroupNumberAndStatusIn(Integer examId, String subjectCode,
-            Integer groupNumber, Set<LibraryStatus> statusSet, Pageable page);
+//    List<MarkLibrary> findByExamIdAndSubjectCode(Integer examId, String subjectCode, Pageable page);
+//
+//    List<MarkLibrary> findByExamIdAndSubjectCodeAndGroupNumberAndStatus(Integer examId, String subjectCode,
+//            Integer groupNumber, LibraryStatus status, Pageable page);
+//
+//    List<MarkLibrary> findByExamIdAndSubjectCodeAndGroupNumberAndStatusIn(Integer examId, String subjectCode,
+//            Integer groupNumber, Set<LibraryStatus> statusSet, Pageable page);
 
     @Query("select l1 from MarkLibrary l1 where l1.examId=?1 and l1.subjectCode=?2 and l1.groupNumber=?3 and l1.status in (?5) and (l1.markerId=?4 or l1.markerId is null ) "
             + "and not exists (select l2 from MarkLibrary l2 where l2.studentId=l1.studentId and l2.id!=l1.id and l2.markerId=?4 and l2.markerScore is not null) ")
@@ -53,9 +53,9 @@ public interface MarkLibraryDao extends JpaRepository<MarkLibrary, Integer>, Jpa
     @Query("select count(f) from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.groupNumber=?3")
     long countByExamIdAndSubjectCodeAndGroupNumber(Integer examId, String subjectCode, Integer groupNumber);
 
-    @Query("select count(f) from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.groupNumber=?3 and f.taskNumber=?4")
-    long countByExamIdAndSubjectCodeAndGroupNumberAndTaskNumber(Integer examId, String subjectCode,
-            Integer groupNumber, Integer taskNumber);
+//    @Query("select count(f) from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.groupNumber=?3 and f.taskNumber=?4")
+//    long countByExamIdAndSubjectCodeAndGroupNumberAndTaskNumber(Integer examId, String subjectCode,
+//            Integer groupNumber, Integer taskNumber);
 
     @Query("select count(f) from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.groupNumber=?3 and f.status in (?4)")
     long countByExamIdAndSubjectCodeAndGroupNumberAndStatus(Integer examId, String subjectCode, Integer groupNumber,
@@ -64,8 +64,8 @@ public interface MarkLibraryDao extends JpaRepository<MarkLibrary, Integer>, Jpa
     @Query("select count(f) from MarkLibrary f where f.studentId=?1 and f.groupNumber=?2")
     long countByStudentIdAndGroupNumber(Integer studentId, Integer groupNumber);
 
-    @Query("select count(f) from MarkLibrary f where f.studentId=?1 and f.markerId=?2")
-    long countByStudentIdAndMarkerId(Integer studentId, Integer markerId);
+//    @Query("select count(f) from MarkLibrary f where f.studentId=?1 and f.markerId=?2")
+//    long countByStudentIdAndMarkerId(Integer studentId, Integer markerId);
 
     @Query("select count(f) from MarkLibrary f where f.studentId=?1 and f.markerId=?2 and f.id!=?3")
     long countByStudentIdAndMarkerIdAndIdNotEqual(Integer studentId, Integer markerId, Integer id);
@@ -79,10 +79,10 @@ public interface MarkLibraryDao extends JpaRepository<MarkLibrary, Integer>, Jpa
     void resetByExamIdAndSubjectCodeAndGroupNumber(Integer examId, String subjectCode, Integer groupNumber,
             LibraryStatus status);
 
-    @Modifying(clearAutomatically = true)
-    @Query("update MarkLibrary m set m.status=?2, m.markerId=null, m.markerTime=null, m.markerScore=null, m.markerScoreList=null, m.markerSpent=null, "
-            + "m.headerId=null , m.headerTime=null , m.headerScore=null , m.headerScoreList=null where m.markerId=?1 and m.status not in (?3) ")
-    void resetByMarkerId(Integer markerId, LibraryStatus status, LibraryStatus... notInStatus);
+//    @Modifying(clearAutomatically = true)
+//    @Query("update MarkLibrary m set m.status=?2, m.markerId=null, m.markerTime=null, m.markerScore=null, m.markerScoreList=null, m.markerSpent=null, "
+//            + "m.headerId=null , m.headerTime=null , m.headerScore=null , m.headerScoreList=null where m.markerId=?1 and m.status not in (?3) ")
+//    void resetByMarkerId(Integer markerId, LibraryStatus status, LibraryStatus... notInStatus);
 
     @Modifying(clearAutomatically = true)
     @Query("update MarkLibrary m set m.status=?6, m.markerId=?2, m.rejectReason=?3, m.markerTime=null, m.markerScore=null, m.markerScoreList=null, m.markerSpent=null, "
@@ -96,8 +96,8 @@ public interface MarkLibraryDao extends JpaRepository<MarkLibrary, Integer>, Jpa
     @Query("select f.markerId, count(f) as markerCount from MarkLibrary f where f.examId=?1 and f.subjectCode in (?2) and f.status in (?3) and f.markerScore != -1 group by f.markerId")
     List<Object[]> countMarkerAndStatusAndSubjectCodeIn(Integer examId, Set<String> codes, LibraryStatus... status);
 
-    @Query("select f.markerId, count(f) as markerCount from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.status in (?3) group by f.markerId")
-    List<Object[]> countMarkerAndStatus(Integer examId, String subjectCode, LibraryStatus... status);
+//    @Query("select f.markerId, count(f) as markerCount from MarkLibrary f where f.examId=?1 and f.subjectCode=?2 and f.status in (?3) group by f.markerId")
+//    List<Object[]> countMarkerAndStatus(Integer examId, String subjectCode, LibraryStatus... status);
 
     @Query("select count(f) from MarkLibrary f where f.markerId=?1 and f.status in (?2)")
     long countByMarkerAndStatus(Integer markerId, LibraryStatus... status);

+ 12 - 8
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/dao/TrialLibraryDao.java

@@ -12,10 +12,12 @@ import cn.com.qmth.stmms.biz.mark.model.TrialLibrary;
 
 public interface TrialLibraryDao extends JpaRepository<TrialLibrary, Integer>, JpaSpecificationExecutor<TrialLibrary> {
 
-    List<TrialLibrary> findByExamIdAndSubjectCode(Integer examId, String subjectCode, Pageable page);
+    // List<TrialLibrary> findByExamIdAndSubjectCode(Integer examId, String
+    // subjectCode, Pageable page);
 
-    List<TrialLibrary> findByExamIdAndSubjectCodeAndGroupNumber(Integer examId, String subjectCode,
-            Integer groupNumber, Pageable page);
+    // List<TrialLibrary> findByExamIdAndSubjectCodeAndGroupNumber(Integer
+    // examId, String subjectCode,
+    // Integer groupNumber, Pageable page);
 
     @Query("select l from TrialLibrary l where l.examId=?1 and l.subjectCode=?2 and l.groupNumber=?3 "
             + "and l.markerId is null ")
@@ -25,16 +27,18 @@ public interface TrialLibraryDao extends JpaRepository<TrialLibrary, Integer>, J
             + "and l.markerId is not null ")
     long countMarked(Integer examId, String subjectCode, Integer groupNumber);
 
-    @Query("select l from TrialLibrary l where l.studentId=?1 order by l.groupNumber ")
-    List<TrialLibrary> findByStudentId(Integer studentId);
+    // @Query("select l from TrialLibrary l where l.studentId=?1 order by l.groupNumber ")
+    // List<TrialLibrary> findByStudentId(Integer studentId);
 
-    List<TrialLibrary> findByStudentIdAndGroupNumber(Integer studentId, Integer groupNumber);
+    // List<TrialLibrary> findByStudentIdAndGroupNumber(Integer studentId,
+    // Integer groupNumber);
 
     @Query("select count(*) from TrialLibrary f where f.examId=?1 and f.subjectCode=?2 and f.groupNumber=?3")
     long countByExamIdAndSubjectCodeAndGroupNumber(Integer examId, String subjectCode, Integer groupNumber);
 
-    @Query("select count(*) from TrialLibrary f where f.studentId=?1 and f.groupNumber=?2")
-    long countByStudentIdAndGroupNumber(Integer studentId, Integer groupNumber);
+    // @Query("select count(*) from TrialLibrary f where f.studentId=?1 and f.groupNumber=?2")
+    // long countByStudentIdAndGroupNumber(Integer studentId, Integer
+    // groupNumber);
 
     @Modifying
     @Query("delete TrialLibrary m where m.examId=?1 and m.subjectCode=?2 and m.groupNumber=?3")

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkLibraryServiceImpl.java

@@ -52,7 +52,7 @@ public class MarkLibraryServiceImpl extends BaseQueryService<MarkLibrary> implem
         MarkLibrarySearchQuery query = new MarkLibrarySearchQuery();
         query.setPageNumber(pageNumber);
         query.setPageSize(pageSize);
-
+        query.orderById();
         return filterClass ? libraryDao.findUnMarkedFilterClass(examId, subjectCode, groupNumber, markerId, userId,
                 statusSet, query) : libraryDao.findUnMarked(examId, subjectCode, groupNumber, markerId, statusSet,
                 query);

+ 5 - 5
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkServiceImpl.java

@@ -1121,14 +1121,14 @@ public class MarkServiceImpl implements MarkService {
                     }
                 }
             }
-            if (partScoreList.size()>0&&partScoreList.size() < selectiveCount) {
+            if (partScoreList.size() > 0 && partScoreList.size() < selectiveCount) {
                 lessSelective = true;
             }
-            if (partScoreList.size()>0&&partScoreList.size() > selectiveCount) {
+            if (partScoreList.size() > 0 && partScoreList.size() > selectiveCount) {
                 mutiSelective = true;
             }
-            if(partScoreList.size()==0) {
-            	notSelective = true;
+            if (partScoreList.size() == 0) {
+                notSelective = true;
             }
         }
         // 统一更新得分详情
@@ -1422,7 +1422,7 @@ public class MarkServiceImpl implements MarkService {
         MarkLibrarySearchQuery query = new MarkLibrarySearchQuery();
         query.setPageNumber(1);
         query.setPageSize(1);
-        query.setSort(new Sort(Sort.Direction.DESC, "markerTime"));
+        query.setSort(new Sort(Sort.Direction.DESC, "markerTime", "id"));
         List<MarkLibrary> list = libraryDao.findByMarkerIdAndStatus(marker.getId(), LibraryStatus.MARKED, query);
         MarkLibrary library = list.isEmpty() ? null : list.get(0);
         if (library != null && library.getMarkerTime() != null) {

+ 3 - 3
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/TrialServiceImpl.java

@@ -51,7 +51,7 @@ public class TrialServiceImpl extends BaseQueryService<TrialLibrary> implements
         TrialLibrarySearchQuery query = new TrialLibrarySearchQuery();
         query.setPageNumber(pageNumber);
         query.setPageSize(pageSize);
-
+        query.orderById();
         return libraryDao.findUnMarked(examId, subjectCode, groupNumber, query);
     }
 
@@ -77,7 +77,7 @@ public class TrialServiceImpl extends BaseQueryService<TrialLibrary> implements
         if (sort != null) {
             query.setSort(sort);
         } else {
-            query.setSort(new Sort(Direction.DESC, "markerTime"));
+            query.setSort(new Sort(Direction.DESC, "markerTime", "id"));
         }
         if (markerScore != null) {
             return libraryDao.findByExamIdAndSubjectCodeAndGroupNumberAndMarkerIdAndMarkerScore(examId, subjectCode,
@@ -137,7 +137,7 @@ public class TrialServiceImpl extends BaseQueryService<TrialLibrary> implements
         if (sort != null) {
             query.setSort(sort);
         } else {
-            query.setSort(new Sort(Direction.DESC, "markerTime"));
+            query.setSort(new Sort(Direction.DESC, "markerTime", "id"));
         }
         return libraryDao.findByExamIdAndSubjectCodeAndGroupNumberAndMarkerIdAndSecretNumber(examId, subjectCode,
                 groupNumber, markerId, secretNumber, query);

+ 2 - 2
stmms-web/src/main/java/cn/com/qmth/stmms/mark/MarkController.java

@@ -579,9 +579,9 @@ public class MarkController extends BaseController {
             d = Direction.ASC;
         }
         if (order.equals("markerTime")) {
-            querySort = new Sort(d, "markerTime");
+            querySort = new Sort(d, "markerTime", "id");
         } else if (order.equals("markerScore")) {
-            querySort = new Sort(d, "markerScore");
+            querySort = new Sort(d, "markerScore", "id");
         }
         MarkGroup group = groupService.findOne(marker.getExamId(), marker.getSubjectCode(), marker.getGroupNumber());
         Exam exam = examService.findById(marker.getExamId());