Ver Fonte

保存调卷规则时,先删除之前的文件,再保存当前文件

chenken há 7 anos atrás
pai
commit
bfffa773ee

+ 6 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/service/ExamFileService.java

@@ -26,6 +26,12 @@ public interface ExamFileService {
 	 */
 	public void saveExamFile(ExamFile examFile,AccessUser accessUser);
 	
+	/**
+	 * 删除考试文件
+	 * @param examFile
+	 */
+	public void deleteExamFile(ExamFile examFile);
+	
 	/**
 	 * 根据条件查询ExamFile集合
 	 * @param examFile

+ 7 - 0
cqb-paper/src/main/java/com/qmth/cqb/paper/service/export/SxsfExportPaperService.java

@@ -13,6 +13,7 @@ import cn.com.qmth.examcloud.common.uac.entity.AccessUser;
 
 import com.qmth.cqb.paper.dto.PaperDetailExp;
 import com.qmth.cqb.paper.dto.PaperExp;
+import com.qmth.cqb.paper.model.ExamFile;
 import com.qmth.cqb.paper.model.ExportStructure;
 import com.qmth.cqb.paper.model.ExtractConfig;
 import com.qmth.cqb.paper.model.QuestionTypeNum;
@@ -53,6 +54,12 @@ public class SxsfExportPaperService extends ExportPaperAbstractService {
         if (paperExp!=null) {
         	String currNum = CommonUtils.getCurNum();
         	List<PaperDetailExp> objectiveDetails = paperExp.getObjectiveDetails();
+        	//删除原有试卷文件
+        	ExamFile examFile = new ExamFile();
+        	examFile.setExamId(extractConfig.getExamId()+"");
+        	examFile.setCourseId(extractConfig.getCourseCode());
+        	examFile.setOrgId(extractConfig.getOrgId());
+        	examFileService.deleteExamFile(examFile);
         	//没有试卷结构导出设置
         	if(exportStructure==null){
         		//上传试卷

+ 11 - 15
cqb-paper/src/main/java/com/qmth/cqb/paper/service/impl/ExamFileServiceImpl.java

@@ -61,21 +61,6 @@ public class ExamFileServiceImpl implements ExamFileService{
 
 	@Override
 	public void saveExamFile(ExamFile examFile, AccessUser accessUser) {
-		ExamFile oldExamFile = new ExamFile();
-		oldExamFile.setExamId(examFile.getExamId());
-		oldExamFile.setExamType(examFile.getExamType());
-		oldExamFile.setCourseId(examFile.getCourseId());
-		oldExamFile.setExamFileType(examFile.getExamFileType());
-		//oldExamFile.setFileName(examFile.getFileName());
-		oldExamFile.setGroupCode(examFile.getGroupCode());
-		oldExamFile = examFileRepo.findOne(Example.of(oldExamFile));
-		if(oldExamFile!=null){
-			//删除又拍云上的文件
-			UpYun upyun = new UpYun(bucketName,userName,password);
-			upyun.deleteFile(oldExamFile.getFilePath());
-			//删除数据库记录
-			examFileRepo.delete(oldExamFile);
-		}
 		examFile.setCreateTime(new Date());
 		examFile.setCreateUser(accessUser.getName());
 		examFileRepo.save(examFile);
@@ -109,5 +94,16 @@ public class ExamFileServiceImpl implements ExamFileService{
 		return this.MongoTemplate.find(query, ExamFile.class);
 	}
 
+	@Override
+	public void deleteExamFile(ExamFile examFile) {
+		List<ExamFile> examFiles = examFileRepo.findAll(Example.of(examFile));
+		UpYun upyun = new UpYun(bucketName,userName,password);
+		for(ExamFile examFile2:examFiles){
+			//删除又拍云上的文件
+			upyun.deleteFile(examFile2.getFilePath());
+		}
+		examFileRepo.delete(examFiles);
+	}
+
 }