|
@@ -5,10 +5,7 @@ import edu.math.diagnosis.config.Constants;
|
|
|
import edu.math.diagnosis.dao.PaperCommitRepo;
|
|
|
import edu.math.diagnosis.dao.PaperResultRepo;
|
|
|
import edu.math.diagnosis.entity.*;
|
|
|
-import edu.math.diagnosis.model.Answer;
|
|
|
-import edu.math.diagnosis.model.KnowledgeKeepVo;
|
|
|
-import edu.math.diagnosis.model.Result;
|
|
|
-import edu.math.diagnosis.model.SectionInfoVo;
|
|
|
+import edu.math.diagnosis.model.*;
|
|
|
import edu.math.diagnosis.util.NumberUtil;
|
|
|
import edu.math.diagnosis.util.ObjectUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -141,7 +138,14 @@ public class PaperResultService {
|
|
|
r.setChapterRate(chapterRate(r, paper));
|
|
|
r.setKnowledgeKeepStatus(ObjectUtil.object2Json(knowledgeKeepStatus(r, paper)));
|
|
|
r.setUseTime(useTime(paper, commit));
|
|
|
+
|
|
|
r.setSectionInfo(sectionInfo(r, paper));
|
|
|
+
|
|
|
+
|
|
|
+ r.setChapterAbility(chapterAbility(r, paper));
|
|
|
+ r.setAbilityEvaluate(abilityEvaluate(r, paper));
|
|
|
+ r.setQuestionMatter(questionMatter(r, paper));
|
|
|
+
|
|
|
|
|
|
}
|
|
|
|
|
@@ -415,7 +419,41 @@ public class PaperResultService {
|
|
|
return ObjectUtil.object2Json(list);
|
|
|
}
|
|
|
|
|
|
- private List<Answer> convertAnswer(String json){
|
|
|
+ public String chapterAbility(PaperResult result, Paper paper) {
|
|
|
+ List<SubjectKnowledge> knowledge = knowledgeService.list(paper.getSubjectId(), paper.getGrade());
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ List<Integer> collects = convertCollectQuestion(result.getCollectQuestion());
|
|
|
+
|
|
|
+ Map<String, Set<Integer>> tagNumbers = tagNumbers(paper);
|
|
|
+
|
|
|
+ Map<String, Integer> tagKeep = tagKeep(collects, tagNumbers);
|
|
|
+
|
|
|
+ List<ChapterAbilityVo> vos = new ArrayList<>();
|
|
|
+ knowledge.forEach(k -> {
|
|
|
+ ChapterAbilityVo vo = new ChapterAbilityVo();
|
|
|
+ vo.setChapter(k.getChapter());
|
|
|
+ vo.setKnowledgeCode(k.getCode());
|
|
|
+ vo.setKnowledgeContent(k.getContent());
|
|
|
+
|
|
|
+ vo.setKeep(tagKeep.getOrDefault(k.getCode(), 0));
|
|
|
+ vo.setAbilityCodes(k.getAbilityCodes());
|
|
|
+ vos.add(vo);
|
|
|
+ });
|
|
|
+ Map<String, List<ChapterAbilityVo>> group = vos.stream().collect(Collectors.groupingBy(ChapterAbilityVo::getChapter));
|
|
|
+ return ObjectUtil.object2Json(group);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String abilityEvaluate(PaperResult result, Paper paper) {
|
|
|
+ return "{}";
|
|
|
+ }
|
|
|
+
|
|
|
+ public String questionMatter(PaperResult result, Paper paper) {
|
|
|
+ return "{}";
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<Answer> convertAnswer(String json) {
|
|
|
return ObjectUtil.getGson().fromJson(json, new TypeToken<List<Answer>>() {
|
|
|
}.getType());
|
|
|
}
|