Bläddra i källkod

修复全是客观题的bug

宋悦 7 år sedan
förälder
incheckning
3fcbecf855

+ 6 - 8
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExtractConfigServiceImpl.java

@@ -221,11 +221,9 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 		int upSetOptionOrder = extractConfig.getScrambling_the_option_order();
 		//不乱序直接调卷
 		if(upSetQuestionOrder == 0 && upSetOptionOrder == 0){
-			PaperDto paperDto = getPaperDtoByPaper(basePaper);
+			PaperDto paperDto = getPaperDtoByPaper(basePaper,basePaperId);
 			long paperDtoFinishTime = System.currentTimeMillis();
 			logger.info("获取试卷Dto共耗时:"+(paperDtoFinishTime - paperMapFinishTime)+"ms");
-			paperDto.setBasePaperId(basePaperId);
-			paperDto.setAllQbjectiveQuestion(checkIsAllQbjectiveQuestion(basePaperId));
 			returnMap.put("paperDto",paperDto);
 			logger.info("调卷完成");
 			logger.info("总共耗时:"+(System.currentTimeMillis() - beginTime)+"ms");
@@ -236,14 +234,11 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 
 			long genPaperFinishTime = System.currentTimeMillis();
 			logger.info("组卷共耗时:"+(genPaperFinishTime - paperMapFinishTime)+"ms");
-
-			PaperDto paperDto = getPaperDtoByPaper(newPaper);
+			PaperDto paperDto = getPaperDtoByPaper(newPaper,basePaperId);
 
 			long paperDtoFinishTime = System.currentTimeMillis();
 			logger.info("获取试卷Dto共耗时:"+(paperDtoFinishTime - genPaperFinishTime)+"ms");
 
-			paperDto.setBasePaperId(basePaperId);
-			paperDto.setAllQbjectiveQuestion(checkIsAllQbjectiveQuestion(basePaperId));
 			returnMap.put("paperDto",paperDto);
 			logger.info("调卷完成");
 			logger.info("总共耗时:"+(System.currentTimeMillis() - beginTime)+"ms");
@@ -519,7 +514,7 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 	 * @param paper
 	 * @return
 	 */
-	private PaperDto getPaperDtoByPaper(Paper paper){
+	private PaperDto getPaperDtoByPaper(Paper paper,String basePaperId){
 
 		//优先从redis中获取缓存dto
 		Object cacheDto = redisTemplate.opsForValue().get(paper.getId());
@@ -529,6 +524,9 @@ public class ExtractConfigServiceImpl implements ExtractConfigService {
 		long beginTime = System.currentTimeMillis();
 		//没有则重新组装
 		PaperDto paperDto = paperDtoAssembler.toDto(paper);
+		paperDto.setBasePaperId(basePaperId);
+		paperDto.setAllQbjectiveQuestion(checkIsAllQbjectiveQuestion(basePaperId));
+
 		long paperDtoEndTime = System.currentTimeMillis();
 		logger.info("单独组装paperDto耗时:"+(paperDtoEndTime - beginTime)+"ms");