wangliang 4 gadi atpakaļ
vecāks
revīzija
1f4e132e4b

+ 3 - 3
themis-business/src/main/java/com/qmth/themis/business/bean/admin/OpenRecordAnswerBean.java

@@ -20,7 +20,7 @@ public class OpenRecordAnswerBean {
 	private Integer subIndex;
 
 	@ApiModelProperty("作答")
-	private String answer;
+	private List<String> answer;
 
 	public Integer getMainNumber() {
 		return mainNumber;
@@ -46,11 +46,11 @@ public class OpenRecordAnswerBean {
 		this.subIndex = subIndex;
 	}
 
-	public String getAnswer() {
+	public List<String> getAnswer() {
 		return answer;
 	}
 
-	public void setAnswer(String answer) {
+	public void setAnswer(List<String> answer) {
 		this.answer = answer;
 	}
 }

+ 52 - 0
themis-business/src/main/java/com/qmth/themis/business/bean/admin/OpenRecordAnswerTempBean.java

@@ -0,0 +1,52 @@
+package com.qmth.themis.business.bean.admin;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+@ApiModel("开放接口-待评卷考试记录答案")
+public class OpenRecordAnswerTempBean {
+
+	@ApiModelProperty("大题号")
+	private Integer mainNumber;
+
+	@ApiModelProperty("小题号")
+	private Integer subNumber;
+
+	@ApiModelProperty("套题子题序号")
+	private Integer subIndex;
+
+	@ApiModelProperty("作答")
+	private String answer;
+
+	public Integer getMainNumber() {
+		return mainNumber;
+	}
+
+	public void setMainNumber(Integer mainNumber) {
+		this.mainNumber = mainNumber;
+	}
+
+	public Integer getSubNumber() {
+		return subNumber;
+	}
+
+	public void setSubNumber(Integer subNumber) {
+		this.subNumber = subNumber;
+	}
+
+	public Integer getSubIndex() {
+		return subIndex;
+	}
+
+	public void setSubIndex(Integer subIndex) {
+		this.subIndex = subIndex;
+	}
+
+	public String getAnswer() {
+		return answer;
+	}
+
+	public void setAnswer(String answer) {
+		this.answer = answer;
+	}
+}

+ 2 - 1
themis-business/src/main/java/com/qmth/themis/business/dao/TOeExamAnswerMapper.java

@@ -2,6 +2,7 @@ package com.qmth.themis.business.dao;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.qmth.themis.business.bean.admin.OpenRecordAnswerBean;
+import com.qmth.themis.business.bean.admin.OpenRecordAnswerTempBean;
 import com.qmth.themis.business.entity.TOeExamAnswer;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -18,5 +19,5 @@ import java.util.List;
 @Mapper
 public interface TOeExamAnswerMapper extends BaseMapper<TOeExamAnswer> {
 
-	List<OpenRecordAnswerBean> findByExamRecordId(@Param("examRecordId") Long examRecordId);
+	List<OpenRecordAnswerTempBean> findByExamRecordId(@Param("examRecordId") Long examRecordId);
 }

+ 2 - 1
themis-business/src/main/java/com/qmth/themis/business/service/TOeExamAnswerService.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.themis.business.bean.admin.OpenRecordAnswerBean;
+import com.qmth.themis.business.bean.admin.OpenRecordAnswerTempBean;
 import com.qmth.themis.business.entity.TOeExamAnswer;
 
 /**
@@ -15,5 +16,5 @@ import com.qmth.themis.business.entity.TOeExamAnswer;
  */
 public interface TOeExamAnswerService extends IService<TOeExamAnswer> {
 
-	List<OpenRecordAnswerBean> findByExamRecordId(Long examRecordId);
+	List<OpenRecordAnswerTempBean> findByExamRecordId(Long examRecordId);
 }

+ 11 - 5
themis-business/src/main/java/com/qmth/themis/business/service/impl/TEOpenServiceImpl.java

@@ -5,10 +5,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.qmth.themis.business.bean.admin.OpenExamBean;
-import com.qmth.themis.business.bean.admin.OpenExamCourseBean;
-import com.qmth.themis.business.bean.admin.OpenRecordAnswerBean;
-import com.qmth.themis.business.bean.admin.OpenRecordNeedMarkBean;
+import com.qmth.themis.business.bean.admin.*;
 import com.qmth.themis.business.cache.RedisKeyHelper;
 import com.qmth.themis.business.cache.bean.ExamCacheBean;
 import com.qmth.themis.business.cache.bean.ExamPaperCacheBean;
@@ -228,7 +225,16 @@ public class TEOpenServiceImpl implements TEOpenService {
                         exam.getRecordSelectStrategy());
                 for (OpenRecordNeedMarkBean record : recordList) {
                     //查询所有单题作答结果
-                    List<OpenRecordAnswerBean> answers = examAnswerService.findByExamRecordId(record.getId());
+                    List<OpenRecordAnswerTempBean> answersTemp = examAnswerService.findByExamRecordId(record.getId());
+                    List<OpenRecordAnswerBean> answers = new ArrayList<>(answersTemp.size());
+                    answersTemp.forEach(s -> {
+                        OpenRecordAnswerBean openRecordAnswerBean = new OpenRecordAnswerBean();
+                        openRecordAnswerBean.setMainNumber(s.getMainNumber());
+                        openRecordAnswerBean.setSubIndex(s.getSubIndex());
+                        openRecordAnswerBean.setSubNumber(s.getSubNumber());
+                        openRecordAnswerBean.setAnswer(JSONArray.parseArray(s.getAnswer()).toJavaList(String.class));
+                        answers.add(openRecordAnswerBean);
+                    });
                     record.setAnswers(answers.stream().filter(answer -> {
                         Map<String, Integer> struct = paperStructMap.get(record.getPaperId());
                         if (struct == null) {

+ 2 - 1
themis-business/src/main/java/com/qmth/themis/business/service/impl/TOeExamAnswerServiceImpl.java

@@ -2,6 +2,7 @@ package com.qmth.themis.business.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.themis.business.bean.admin.OpenRecordAnswerBean;
+import com.qmth.themis.business.bean.admin.OpenRecordAnswerTempBean;
 import com.qmth.themis.business.dao.TOeExamAnswerMapper;
 import com.qmth.themis.business.entity.TOeExamAnswer;
 import com.qmth.themis.business.service.TOeExamAnswerService;
@@ -26,7 +27,7 @@ public class TOeExamAnswerServiceImpl extends ServiceImpl<TOeExamAnswerMapper, T
 	TOeExamAnswerMapper examAnswerMapper;
 	
 	@Override
-	public List<OpenRecordAnswerBean> findByExamRecordId(Long examRecordId) {
+	public List<OpenRecordAnswerTempBean> findByExamRecordId(Long examRecordId) {
 		return examAnswerMapper.findByExamRecordId(examRecordId);
 	}
 }