Parcourir la source

更改排序方式,改为内存排序

宋悦 il y a 7 ans
Parent
commit
ec4c2561c0

+ 2 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/dao/PaperDetailRepo.java

@@ -8,4 +8,6 @@ import java.util.List;
 
 public interface PaperDetailRepo extends MongoRepository<PaperDetail, String>,QueryByExampleExecutor<PaperDetail> {
 	List<PaperDetail> findByPaperOrderByNumber(Paper paper);
+
+	List<PaperDetail> findByPaper(Paper paper);
 }

+ 1 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/dao/PaperDetailUnitRepo.java

@@ -15,6 +15,7 @@ import java.util.List;
 public interface PaperDetailUnitRepo extends MongoRepository<PaperDetailUnit, String>,QueryByExampleExecutor<PaperDetailUnit> {
     List<PaperDetailUnit> findByPaperDetailOrderByNumber(PaperDetail paperDetail);
     List<PaperDetailUnit> findByPaperOrderByNumber(Paper paper);
+    List<PaperDetailUnit> findByPaper(Paper paper);
     List<PaperDetailUnit> findByQuestion(Question question);
     List<PaperDetailUnit> findByQuestionIn(List<Question> questionList);
     PaperDetailUnit findById(String id);

+ 4 - 2
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigServiceImpl.java

@@ -533,12 +533,14 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 		logger.info("单独组装paperDto耗时:"+(paperDtoEndTime - beginTime)+"ms");
 
 		//将小题全部取出来,只取一次
-		List<PaperDetailUnit> allPaperDetailUnits = paperDetailUnitRepo.findByPaperOrderByNumber(paper);
+		List<PaperDetailUnit> allPaperDetailUnits = paperDetailUnitRepo.findByPaper(paper);
+		Collections.sort(allPaperDetailUnits);
 		long pduEndTime = System.currentTimeMillis();
 		logger.info("数据库取小题耗时:"+(pduEndTime - paperDtoEndTime)+"ms");
 
 		//获取大题
-		List<PaperDetail> paperDetails = paperDetailRepo.findByPaperOrderByNumber(paper);
+		List<PaperDetail> paperDetails = paperDetailRepo.findByPaper(paper);
+		Collections.sort(paperDetails);
 		long pdEndTime = System.currentTimeMillis();
 		logger.info("数据库取大题耗时:"+(pdEndTime - pduEndTime)+"ms");