添加安全培训教材或课程讲义下载功能
parent
4bf73dc66c
commit
675485fa8e
|
|
@ -89,6 +89,12 @@ public class ArchivesController {
|
||||||
archivesService.downloadReviewRevision(qry);
|
archivesService.downloadReviewRevision(qry);
|
||||||
return Response.buildSuccess();
|
return Response.buildSuccess();
|
||||||
}
|
}
|
||||||
|
@ApiOperation("单独下载安全培训教材或课程讲义")
|
||||||
|
@PostMapping("/downloadClassCur")
|
||||||
|
public Response downloadClassCur(@RequestBody ArchivesQry qry) {
|
||||||
|
archivesService.downloadClassCur(qry);
|
||||||
|
return Response.buildSuccess();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -889,5 +889,56 @@ public class ArchivesQueryExe {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public ClassArchivesDTO downloadClassCurById(ArchivesQry qry){
|
||||||
|
HashMap<String, Object> params = new HashMap<String, Object>();
|
||||||
|
// 班级信息
|
||||||
|
ClassDO classDO = classRepository.getByClassId(qry.getClassId());
|
||||||
|
// 班级课程
|
||||||
|
ClassCurriculumDO classCurriculumDO = classCurriculumRepository.getInfoById(qry.getClassCurriculumIdLong());
|
||||||
|
List<ClassCurriculumChapterDO> classCurriculumChapterDOList = classCurriculumChapterRepository.listByClassCurriculumId(classCurriculumDO.getClassCurriculumId());
|
||||||
|
ClassCurriculumCO classCurriculumCO = new ClassCurriculumCO();
|
||||||
|
BeanUtils.copyProperties(classCurriculumDO, classCurriculumCO);
|
||||||
|
List<ClassCurriculumChapterCO> classCurriculumChapterCOList = classCurriculumChapterCoConvertor.converDOsToCOs(classCurriculumChapterDOList);
|
||||||
|
List<ClassCurriculumChapterCO> resultList = Tools.buildEntityTree(classCurriculumChapterCOList, "classCurriculumChapterId", "parentId", "childCurriculumChapterCOList", "0");
|
||||||
|
classCurriculumCO.setCurriculumChapterCOList(resultList);
|
||||||
|
List<ClassCurriculumCO> curList = new ArrayList<>();
|
||||||
|
curList.add(classCurriculumCO);
|
||||||
|
|
||||||
|
ClassArchivesDTO classArchivesDTO = new ClassArchivesDTO();
|
||||||
|
classArchivesDTO.setClassName(classDO.getName());
|
||||||
|
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||||
|
classArchivesDTO.setCorpinfoId(ssoUser.getTenantId());
|
||||||
|
classArchivesDTO.setClassCurriculumList(curList);
|
||||||
|
// 新增档案下载记录
|
||||||
|
ArchivesPdfFileE archivesPdfFileE = new ArchivesPdfFileE();
|
||||||
|
archivesPdfFileE.init("class_curriculum", classCurriculumDO.getClassCurriculumId(), 2, ssoUser.getTenantId(), classDO.getName()+"-"+classCurriculumDO.getCurriculumName()+"安全培训教材");
|
||||||
|
ArchivesPdfFileDO archivesPdfFileDO = new ArchivesPdfFileDO();
|
||||||
|
BeanUtils.copyProperties(archivesPdfFileE, archivesPdfFileDO);
|
||||||
|
archivesPdfFileRepository.save(archivesPdfFileDO);
|
||||||
|
classArchivesDTO.setArchivesPdfFileId(archivesPdfFileDO.getId());
|
||||||
|
return classArchivesDTO;
|
||||||
|
}
|
||||||
|
@Async("archivesAsyncExecutor")
|
||||||
|
public void execteDownloadClassCur(ClassArchivesDTO params){
|
||||||
|
try {
|
||||||
|
byte[] word = execteClassCurriculumInfo(params.getClassCurriculumList().get(0));
|
||||||
|
List<byte[]> byteArrayList = new ArrayList<>();
|
||||||
|
byteArrayList.add(word);
|
||||||
|
byte[] pdf = WordToPdfUtil.mergeWordToPdf(byteArrayList);
|
||||||
|
String filepath = zcloudImgFilesFacade.saveFile(pdf, params.getClassName()+"-"+params.getClassCurriculumList().get(0).getCurriculumName()+"-安全培训教材或课程讲义-"+ DateUtil.getSdfTimes()+".pdf","classArchives", params.getCorpinfoId());
|
||||||
|
ArchivesPdfFileE archivesPdfFileE = new ArchivesPdfFileE();
|
||||||
|
archivesPdfFileE.initEdit(params.getArchivesPdfFileId(), filepath, 1, null);
|
||||||
|
ArchivesPdfFileDO archivesPdfFileDO = new ArchivesPdfFileDO();
|
||||||
|
BeanUtils.copyProperties(archivesPdfFileE, archivesPdfFileDO);
|
||||||
|
archivesPdfFileRepository.updateById(archivesPdfFileDO);
|
||||||
|
} catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
// throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@ public class StudentQueryExe {
|
||||||
ClassE classE = new ClassE();
|
ClassE classE = new ClassE();
|
||||||
BeanUtils.copyProperties(classDO, classE);
|
BeanUtils.copyProperties(classDO, classE);
|
||||||
HashMap<String, Object> params = new HashMap<String, Object>();
|
HashMap<String, Object> params = new HashMap<String, Object>();
|
||||||
params.put("classId", studentDO.getClassId());
|
params.put("eqClassId", studentDO.getClassId());
|
||||||
// 课程信息
|
// 课程信息
|
||||||
List<ClassCurriculumDO> curEList = classCurriculumRepository.listAll(params);
|
List<ClassCurriculumDO> curEList = classCurriculumRepository.listAll(params);
|
||||||
List<ClassCurriculumE> classCurList = BeanUtil.copyToList(curEList, ClassCurriculumE.class);
|
List<ClassCurriculumE> classCurList = BeanUtil.copyToList(curEList, ClassCurriculumE.class);
|
||||||
|
|
|
||||||
|
|
@ -68,5 +68,12 @@ public class ArchivesServiceImpl implements ArchivesServiceI {
|
||||||
archivesQueryExe.execteDownloadReviewInfo(classArchivesDTO);
|
archivesQueryExe.execteDownloadReviewInfo(classArchivesDTO);
|
||||||
System.out.println("下载成功");
|
System.out.println("下载成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void downloadClassCur(ArchivesQry qry) {
|
||||||
|
ClassArchivesDTO classArchivesDTO = archivesQueryExe.downloadClassCurById(qry);
|
||||||
|
archivesQueryExe.execteDownloadClassCur(classArchivesDTO);
|
||||||
|
System.out.println("下载成功");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,5 +18,6 @@ public interface ArchivesServiceI {
|
||||||
void downloadPersonArchives(ArchivesQry qry);
|
void downloadPersonArchives(ArchivesQry qry);
|
||||||
void downloadClassArchives(ArchivesQry qry);
|
void downloadClassArchives(ArchivesQry qry);
|
||||||
void downloadReviewRevision(ArchivesQry qry);
|
void downloadReviewRevision(ArchivesQry qry);
|
||||||
|
void downloadClassCur(ArchivesQry qry);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ public class ArchivesQry {
|
||||||
private Long stuId;
|
private Long stuId;
|
||||||
private String classId;
|
private String classId;
|
||||||
private String classCurriculumId;
|
private String classCurriculumId;
|
||||||
|
private Long classCurriculumIdLong;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@
|
||||||
co.corp_name,
|
co.corp_name,
|
||||||
c.video_total_time curriculumVideoTotalTime,
|
c.video_total_time curriculumVideoTotalTime,
|
||||||
c.curriculum_introduce,
|
c.curriculum_introduce,
|
||||||
c.cover_path
|
c.cover_path,
|
||||||
|
cc.catalogue_level
|
||||||
|
|
||||||
from
|
from
|
||||||
class_curriculum cc
|
class_curriculum cc
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue