|
@@ -218,11 +218,11 @@ public class OnlineExamThread implements Runnable {
|
|
|
subjectMap.put(subjectCode, subject);
|
|
|
return subject;
|
|
|
}
|
|
|
- //保存paperjson
|
|
|
+ // 保存paperjson
|
|
|
byte[] paperData = paperResult.getBytes(StandardCharsets.UTF_8);
|
|
|
fileService.uploadPaper(new ByteArrayInputStream(paperData), BinaryUtil.encodeMD5(paperData), examId,
|
|
|
subjectCode, FormatType.JSON);
|
|
|
- //保存subject
|
|
|
+ // 保存subject
|
|
|
subject = new ExamSubject();
|
|
|
subject.setExamId(examId);
|
|
|
subject.setCode(subjectCode);
|
|
@@ -235,7 +235,7 @@ public class OnlineExamThread implements Runnable {
|
|
|
subject.setUploadCount(0);
|
|
|
subjectService.save(subject);
|
|
|
subjectMap.put(subjectCode, subject);
|
|
|
- //保存question
|
|
|
+ // 保存question
|
|
|
JSONObject paperJson = JSONObject.fromObject(paperResult);
|
|
|
JSONArray questionArray = JSONArray.fromObject(paperJson.getString("details"));
|
|
|
double totalScore = 0d;
|
|
@@ -247,10 +247,10 @@ public class OnlineExamThread implements Runnable {
|
|
|
JSONArray qArray = questionJson.getJSONArray("questions");
|
|
|
for (int j = 0; j < qArray.size(); j++) {
|
|
|
JSONObject sub = qArray.getJSONObject(j);
|
|
|
- if (!sub.getJSONObject("subQuestions").isNullObject()) {
|
|
|
+ if (sub.get("subQuestions") != null) {
|
|
|
JSONArray subJson = sub.getJSONArray("subQuestions");
|
|
|
for (int k = 0; k < subJson.size(); k++) {
|
|
|
- JSONObject question = subJson.getJSONObject(j);
|
|
|
+ JSONObject question = subJson.getJSONObject(k);
|
|
|
ExamQuestion q = new ExamQuestion();
|
|
|
q.setExamId(examId);
|
|
|
q.setSubjectCode(subjectCode);
|
|
@@ -287,11 +287,11 @@ public class OnlineExamThread implements Runnable {
|
|
|
}
|
|
|
}
|
|
|
questionService.save(list);
|
|
|
- //保存group
|
|
|
+ // 保存group
|
|
|
MarkGroup group = new MarkGroup(examId, subjectCode, 1, null, totalScore, 0d, null, null,
|
|
|
MarkMode.COMMON.toString(), 0, false, false, null);
|
|
|
groupService.save(group);
|
|
|
-
|
|
|
+
|
|
|
subjectService.updateScore(examId, subjectCode, false, totalScore);
|
|
|
return subject;
|
|
|
}
|