Ver código fonte

Merge remote-tracking branch 'origin/dev_v5.0.2' into dev_v5.0.2

deason 1 ano atrás
pai
commit
905e06ff84

+ 9 - 0
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/bean/ExamRecordDataTotalScoreVo.java

@@ -3,6 +3,7 @@ package cn.com.qmth.examcloud.core.oe.admin.api.bean;
 public class ExamRecordDataTotalScoreVo {
 	private Long id;
 	private Double totalScore;
+    private Boolean randomPaper;
 
 	public Long getId() {
 		return id;
@@ -20,4 +21,12 @@ public class ExamRecordDataTotalScoreVo {
 		this.totalScore = totalScore;
 	}
 
+	public Boolean getRandomPaper() {
+		return randomPaper;
+	}
+
+	public void setRandomPaper(Boolean randomPaper) {
+		this.randomPaper = randomPaper;
+	}
+
 }

+ 6 - 5
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/provider/ExamRecordForMarkingCloudServiceProvider.java

@@ -252,23 +252,24 @@ public class ExamRecordForMarkingCloudServiceProvider extends ControllerSupport
 				examRecordForMarkingBean.setBatchNum(entity.getBatchNum());
 				examRecordForMarkingBeanList.add(examRecordForMarkingBean);
 			}
-			fillTatolScore(examRecordForMarkingBeanList);
+			fillTatolScoreAndOtherInfo(examRecordForMarkingBeanList);
 		}
 		resp.setExamRecordForMarkingBeanList(examRecordForMarkingBeanList);
 		return resp;
 	}
 
-	private void fillTatolScore(List<ExamRecordForMarkingBean> list) {
+	private void fillTatolScoreAndOtherInfo(List<ExamRecordForMarkingBean> list) {
 		RowMapper<ExamRecordDataTotalScoreVo> rowMapper = new BeanPropertyRowMapper<>(ExamRecordDataTotalScoreVo.class);
 		StringBuilder sb = new StringBuilder(
-				"select t.id,t.paper_score totalScore from ec_oe_exam_record_data t where t.id in (");
+				"select t.id,t.paper_score totalScore,random_paper randomPaper from ec_oe_exam_record_data t where t.id in (");
 		List<Long> ids = list.stream().map(e -> e.getExamRecordDataId()).collect(Collectors.toList());
 		sb.append(StringUtils.join(ids, ","));
 		sb.append(")");
 		List<ExamRecordDataTotalScoreVo> dtos = jdbcTemplate.query(sb.toString(), rowMapper);
-		Map<Long, Double> totalScores = dtos.stream().collect(Collectors.toMap(e -> e.getId(), e -> e.getTotalScore()));
+		Map<Long, ExamRecordDataTotalScoreVo> totalScores = dtos.stream().collect(Collectors.toMap(e -> e.getId(), e -> e));
 		for(ExamRecordForMarkingBean b:list) {
-			b.setTotalScore(totalScores.get(b.getExamRecordDataId()));
+			b.setTotalScore(totalScores.get(b.getExamRecordDataId()).getTotalScore());
+			b.setRandomPaper(totalScores.get(b.getExamRecordDataId()).getRandomPaper());
 		}
 	}