|
@@ -2,10 +2,14 @@ package edu.math.diagnosis.service;
|
|
|
|
|
|
import edu.math.diagnosis.dao.*;
|
|
|
import edu.math.diagnosis.entity.*;
|
|
|
+import edu.math.diagnosis.model.Answer;
|
|
|
import edu.math.diagnosis.model.QuestionDetail;
|
|
|
import edu.math.diagnosis.model.Result;
|
|
|
+import edu.math.diagnosis.util.CommonUtil;
|
|
|
import edu.math.diagnosis.util.ObjectUtil;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -20,15 +24,23 @@ import java.util.*;
|
|
|
@Service
|
|
|
public class CommitService {
|
|
|
@Resource
|
|
|
- ReportRepo reportRepo;
|
|
|
+ private ReportRepo reportRepo;
|
|
|
@Resource
|
|
|
- PaperCommitRepo paperCommitRepo;
|
|
|
+ private PaperCommitRepo paperCommitRepo;
|
|
|
@Resource
|
|
|
- QuestionRepo questionRepo;
|
|
|
+ private QuestionRepo questionRepo;
|
|
|
@Resource
|
|
|
- OptionRepo optionRepo;
|
|
|
+ private OptionRepo optionRepo;
|
|
|
@Resource
|
|
|
- PaperResultRepo paperResultRepo;
|
|
|
+ private PaperResultRepo paperResultRepo;
|
|
|
+ @Resource
|
|
|
+ private PaperService paperService;
|
|
|
+ @Resource
|
|
|
+ private UserService userService;
|
|
|
+ @Resource
|
|
|
+ private PaperResultService paperResultService;
|
|
|
+
|
|
|
+ private static final Logger logger = LoggerFactory.getLogger(CommitService.class);
|
|
|
|
|
|
@Transactional
|
|
|
public DiagnosisReport dealCommit(PaperCommit commit) {
|
|
@@ -91,8 +103,28 @@ public class CommitService {
|
|
|
// result.setScore6(scores.get(6));
|
|
|
}
|
|
|
|
|
|
- public Result commit(PaperCommit paperCommit){
|
|
|
+ public Result commit(PaperCommit paperCommit) {
|
|
|
+ logger.info("uid={},name={},pid={} commit paper", paperCommit.getUid(), paperCommit.getName(), paperCommit.getPid());
|
|
|
+ Paper paper = paperService.getOnePaper(paperCommit.getPid());
|
|
|
+ if (paper == null) {
|
|
|
+ return Result.fail("没有找到试卷");
|
|
|
+ }
|
|
|
+ UserInfo userInfo = userService.getSimpleUser(paperCommit.getUid());
|
|
|
+ if (userInfo == null) {
|
|
|
+ return Result.fail("没有找到用户");
|
|
|
+ }
|
|
|
+ List<Answer> answers = paperCommit.getAnswers();
|
|
|
+ if (CommonUtil.isEmpty(answers)) {
|
|
|
+ return Result.fail("没有找到答案");
|
|
|
+ }
|
|
|
+
|
|
|
+ String jsonAns = ObjectUtil.object2Json(answers);
|
|
|
+ paperCommit.setJsonAns(jsonAns);
|
|
|
+ paperCommitRepo.saveAndFlush(paperCommit);
|
|
|
+ logger.info("uid={},name={},pid={} commit paper success", paperCommit.getUid(), paperCommit.getName(), paperCommit.getPid());
|
|
|
|
|
|
- return Result.fail();
|
|
|
+ return paperResultService.parseResult(paperCommit);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
}
|