|
@@ -1,25 +1,24 @@
|
|
package com.qmth.teachcloud.task.service.impl;
|
|
package com.qmth.teachcloud.task.service.impl;
|
|
|
|
|
|
import com.qmth.distributed.print.business.bean.dto.initMarkData.ExamDetailCourseInitMarkDto;
|
|
import com.qmth.distributed.print.business.bean.dto.initMarkData.ExamDetailCourseInitMarkDto;
|
|
-import com.qmth.teachcloud.common.bean.vo.PaperInfoVo;
|
|
|
|
-import com.qmth.teachcloud.common.util.ExamTaskUtil;
|
|
|
|
-import com.qmth.teachcloud.mark.bean.vo.parseCard.Struct;
|
|
|
|
import com.qmth.distributed.print.business.entity.ExamCard;
|
|
import com.qmth.distributed.print.business.entity.ExamCard;
|
|
import com.qmth.distributed.print.business.entity.ExamStudent;
|
|
import com.qmth.distributed.print.business.entity.ExamStudent;
|
|
import com.qmth.distributed.print.business.entity.ExamTaskDetail;
|
|
import com.qmth.distributed.print.business.entity.ExamTaskDetail;
|
|
import com.qmth.distributed.print.business.service.ExamCardService;
|
|
import com.qmth.distributed.print.business.service.ExamCardService;
|
|
import com.qmth.distributed.print.business.service.ExamStudentService;
|
|
import com.qmth.distributed.print.business.service.ExamStudentService;
|
|
import com.qmth.distributed.print.business.service.ExamTaskDetailService;
|
|
import com.qmth.distributed.print.business.service.ExamTaskDetailService;
|
|
-import com.qmth.teachcloud.mark.utils.CardParseUtils;
|
|
|
|
|
|
+import com.qmth.teachcloud.common.bean.vo.PaperInfoVo;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.contant.SystemConstant;
|
|
import com.qmth.teachcloud.common.enums.UploadFileEnum;
|
|
import com.qmth.teachcloud.common.enums.UploadFileEnum;
|
|
|
|
+import com.qmth.teachcloud.common.util.ExamTaskUtil;
|
|
|
|
+import com.qmth.teachcloud.mark.bean.vo.parseCard.Struct;
|
|
import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
import com.qmth.teachcloud.mark.entity.MarkPaper;
|
|
import com.qmth.teachcloud.mark.entity.MarkQuestion;
|
|
import com.qmth.teachcloud.mark.entity.MarkQuestion;
|
|
import com.qmth.teachcloud.mark.entity.MarkStudent;
|
|
import com.qmth.teachcloud.mark.entity.MarkStudent;
|
|
import com.qmth.teachcloud.mark.entity.ScanAnswerCard;
|
|
import com.qmth.teachcloud.mark.entity.ScanAnswerCard;
|
|
import com.qmth.teachcloud.mark.enums.CardSource;
|
|
import com.qmth.teachcloud.mark.enums.CardSource;
|
|
-import com.qmth.teachcloud.mark.enums.QuestionType;
|
|
|
|
import com.qmth.teachcloud.mark.service.*;
|
|
import com.qmth.teachcloud.mark.service.*;
|
|
|
|
+import com.qmth.teachcloud.mark.utils.CardParseUtils;
|
|
import com.qmth.teachcloud.mark.utils.FileStoreUtils;
|
|
import com.qmth.teachcloud.mark.utils.FileStoreUtils;
|
|
import com.qmth.teachcloud.task.service.PrintFinishService;
|
|
import com.qmth.teachcloud.task.service.PrintFinishService;
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
@@ -35,6 +34,7 @@ import javax.annotation.Resource;
|
|
import java.io.File;
|
|
import java.io.File;
|
|
import java.io.FileInputStream;
|
|
import java.io.FileInputStream;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
|
+import java.io.InputStream;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.HashSet;
|
|
import java.util.HashSet;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -140,8 +140,9 @@ public class PrintFinishServiceImpl implements PrintFinishService {
|
|
String jsonPath = rootPath + File.separator + paperInfoVo.getCardId() + SystemConstant.JSON_PREFIX;
|
|
String jsonPath = rootPath + File.separator + paperInfoVo.getCardId() + SystemConstant.JSON_PREFIX;
|
|
File jsonFile = SystemConstant.createJsonFile(jsonPath, examCard.getContent());
|
|
File jsonFile = SystemConstant.createJsonFile(jsonPath, examCard.getContent());
|
|
if (jsonFile.exists()) {
|
|
if (jsonFile.exists()) {
|
|
|
|
+ InputStream inputStream = null;
|
|
try {
|
|
try {
|
|
- FileInputStream inputStream = new FileInputStream(jsonFile);
|
|
|
|
|
|
+ inputStream = new FileInputStream(jsonFile);
|
|
String md5 = DigestUtils.md5Hex(inputStream);
|
|
String md5 = DigestUtils.md5Hex(inputStream);
|
|
Integer number = scanAnswerCardService.findMaxCardNumberByExamId(dto.getExamId());
|
|
Integer number = scanAnswerCardService.findMaxCardNumberByExamId(dto.getExamId());
|
|
String path = markFileService.getAnswerCardUri(dto.getExamId(), dto.getCoursePaperId(), number);
|
|
String path = markFileService.getAnswerCardUri(dto.getExamId(), dto.getCoursePaperId(), number);
|
|
@@ -166,6 +167,13 @@ public class PrintFinishServiceImpl implements PrintFinishService {
|
|
} catch (IOException e) {
|
|
} catch (IOException e) {
|
|
throw new RuntimeException(e);
|
|
throw new RuntimeException(e);
|
|
}
|
|
}
|
|
|
|
+ if (inputStream != null) {
|
|
|
|
+ try {
|
|
|
|
+ inputStream.close();
|
|
|
|
+ } catch (IOException e) {
|
|
|
|
+ throw new RuntimeException(e);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|