|
@@ -14,7 +14,6 @@ import edu.math.diagnosis.util.ObjectUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
-import org.springframework.security.core.parameters.P;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -56,8 +55,7 @@ public class PaperResultService {
|
|
|
@SuppressWarnings("unchecked")
|
|
|
public Result parseResult(PaperCommit paperCommit, Paper paper) {
|
|
|
List<Question> questions = paper.getQuestions();
|
|
|
- List<Answer> answers = ObjectUtil.getGson().fromJson(paperCommit.getJsonAns(), new TypeToken<List<Answer>>() {
|
|
|
- }.getType());
|
|
|
+ List<Answer> answers = convertAnswer(paperCommit.getJsonAns());
|
|
|
List<Integer> collectQuestion = new ArrayList<>();
|
|
|
PaperResult result = new PaperResult();
|
|
|
result.setPid(paperCommit.getPid());
|
|
@@ -144,7 +142,7 @@ public class PaperResultService {
|
|
|
r.setKnowledgeKeepStatus(ObjectUtil.object2Json(knowledgeKeepStatus(r, paper)));
|
|
|
r.setUseTime(useTime(paper, commit));
|
|
|
r.setSectionInfo(sectionInfo(r, paper));
|
|
|
- paperResultRepo.save(r);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|
|
@@ -344,7 +342,7 @@ public class PaperResultService {
|
|
|
Set<Integer> number = tagNumbers.getOrDefault(tag, new HashSet<>());
|
|
|
Set<String> matter = new HashSet<>();
|
|
|
|
|
|
- number.forEach(n -> matter.addAll(numberMatter.get(n)));
|
|
|
+ number.forEach(n -> matter.addAll(numberMatter.getOrDefault(n, new HashSet<>())));
|
|
|
vo.setMatter(StringUtils.join(matter, ","));
|
|
|
vos.add(vo);
|
|
|
});
|
|
@@ -391,7 +389,7 @@ public class PaperResultService {
|
|
|
for (int i = 1; i <= paper.getQuestionNum(); i++) {
|
|
|
useTime.put(i, 0L);
|
|
|
}
|
|
|
- List<Answer> answers = commit.getAnswers();
|
|
|
+ List<Answer> answers = convertAnswer(commit.getJsonAns());
|
|
|
Map<Integer, Long> use = answers.stream().collect(Collectors.toMap(Answer::getNumber, Answer::getUseTime));
|
|
|
for (Map.Entry<Integer, Long> entry : use.entrySet()) {
|
|
|
useTime.put(entry.getKey(), entry.getValue());
|
|
@@ -416,4 +414,9 @@ public class PaperResultService {
|
|
|
list.add(vo3);
|
|
|
return ObjectUtil.object2Json(list);
|
|
|
}
|
|
|
+
|
|
|
+ private List<Answer> convertAnswer(String json){
|
|
|
+ return ObjectUtil.getGson().fromJson(json, new TypeToken<List<Answer>>() {
|
|
|
+ }.getType());
|
|
|
+ }
|
|
|
}
|