|
@@ -164,18 +164,20 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
|
|
ExportStructure exportStructure = exportStructureService.findStructureByExamId(exportModel.getExamId()+"");
|
|
ExportStructure exportStructure = exportStructureService.findStructureByExamId(exportModel.getExamId()+"");
|
|
//如果是普通类型的批量导出,并且选择了导出试卷结构
|
|
//如果是普通类型的批量导出,并且选择了导出试卷结构
|
|
if(exportModel.getExportContentList().contains(ExamFileType.PAPER_STRUCTURE_OBJECTIVE.name())
|
|
if(exportModel.getExportContentList().contains(ExamFileType.PAPER_STRUCTURE_OBJECTIVE.name())
|
|
- &&exportModel.getExportWay()==ExportWay.BATCH
|
|
|
|
- &&exportStructure.getExportType()==ExportType.NORMAL){
|
|
|
|
- paperIds = checkAllCourseByExamId(exportModel.getExamId(),exportStructure.getExportType());
|
|
|
|
- //生成试卷结构到downloadDirectory目录
|
|
|
|
- if(paperIds.size()>0){
|
|
|
|
- //创建试卷结构Excel文件
|
|
|
|
- makePaperStructure(exportStructure.getExamName(),paperIds,exportStructure);
|
|
|
|
- }
|
|
|
|
|
|
+ &&exportModel.getExportWay()==ExportWay.BATCH){
|
|
|
|
+ if(exportStructure!=null&&exportStructure.getExportType()==ExportType.NORMAL){
|
|
|
|
+ paperIds = checkAllCourseByExamId(exportModel.getExamId(),exportStructure.getExportType());
|
|
|
|
+ if(paperIds.size()>0){
|
|
|
|
+ //创建试卷结构Excel文件到downloadDirectory目录
|
|
|
|
+ makePaperStructure(exportStructure.getExamName(),paperIds,exportStructure);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
//如果是普通类型的单个导出
|
|
//如果是普通类型的单个导出
|
|
- if(exportModel.getExportWay()==ExportWay.SINGLE&&exportStructure.getExportType()==ExportType.NORMAL){
|
|
|
|
- paperIds = getFinishPaperIds(exportModel);
|
|
|
|
|
|
+ if(exportModel.getExportWay()==ExportWay.SINGLE){
|
|
|
|
+ if(exportStructure==null||exportStructure.getExportType()==ExportType.NORMAL){
|
|
|
|
+ paperIds = getFinishPaperIds(exportModel);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
//根据条件获取到文件下载路径,下载文件到服务器的downloadDirectory文件夹
|
|
//根据条件获取到文件下载路径,下载文件到服务器的downloadDirectory文件夹
|
|
List<ExamFile> examFiles = examFileService.findExamFileListByExportPaperInfoModel(exportModel);
|
|
List<ExamFile> examFiles = examFileService.findExamFileListByExportPaperInfoModel(exportModel);
|
|
@@ -340,14 +342,16 @@ public class ExtractConfigFileServiceImpl implements ExtractConfigFileService {
|
|
private void downloadQuestionAudio(List<Paper> papers,ExamFile examFile){
|
|
private void downloadQuestionAudio(List<Paper> papers,ExamFile examFile){
|
|
if(examFile.getExamFileType()==ExamFileType.PAPER){
|
|
if(examFile.getExamFileType()==ExamFileType.PAPER){
|
|
for(Paper paper:papers){
|
|
for(Paper paper:papers){
|
|
- if(paper.getOrgId().equals(examFile.getOrgId())
|
|
|
|
- &&paper.getCourse().getCode().equals(examFile.getCourseId())){
|
|
|
|
- List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaper(paper);
|
|
|
|
- for(PaperDetailUnit unit:paperDetailUnits){
|
|
|
|
- if(unit.getQuestion().getHasAudio()!=null&&unit.getQuestion().getHasAudio()){
|
|
|
|
- List<QuestionAudio> questionAudios = questionAudioService.findQuestionAudiosByQuestionId(unit.getQuestion().getId());
|
|
|
|
- for(QuestionAudio audio:questionAudios){
|
|
|
|
- FileDisposeUtil.saveUrlAs(downloadUrl+audio.getFileUrl(),downloadDirectory+File.separator+examFile.getFileName()+"_"+audio.getFileName());
|
|
|
|
|
|
+ if(paper.getHasAudio()!=null&&paper.getHasAudio()){
|
|
|
|
+ if(paper.getOrgId().equals(examFile.getOrgId())
|
|
|
|
+ &&paper.getCourse().getCode().equals(examFile.getCourseId())){
|
|
|
|
+ List<PaperDetailUnit> paperDetailUnits = paperDetailUnitRepo.findByPaper(paper);
|
|
|
|
+ for(PaperDetailUnit unit:paperDetailUnits){
|
|
|
|
+ if(unit.getQuestion().getHasAudio()!=null&&unit.getQuestion().getHasAudio()){
|
|
|
|
+ List<QuestionAudio> questionAudios = questionAudioService.findQuestionAudiosByQuestionId(unit.getQuestion().getId());
|
|
|
|
+ for(QuestionAudio audio:questionAudios){
|
|
|
|
+ FileDisposeUtil.saveUrlAs(downloadUrl+audio.getFileUrl(),downloadDirectory+File.separator+examFile.getFileName()+"_"+audio.getFileName());
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|