|
@@ -27,14 +27,17 @@ import org.apache.commons.lang.StringUtils;
|
|
import org.springblade.archive.entity.ArchivesAuto;
|
|
import org.springblade.archive.entity.ArchivesAuto;
|
|
import org.springblade.archive.service.IArchiveAutoPdfService;
|
|
import org.springblade.archive.service.IArchiveAutoPdfService;
|
|
import org.springblade.archive.utils.ArchiveTreeUtil;
|
|
import org.springblade.archive.utils.ArchiveTreeUtil;
|
|
|
|
+import org.springblade.archive.utils.FileUtils;
|
|
import org.springblade.archive.vo.ArchivesAutoVO;
|
|
import org.springblade.archive.vo.ArchivesAutoVO;
|
|
import org.springblade.archive.mapper.ArchivesAutoMapper;
|
|
import org.springblade.archive.mapper.ArchivesAutoMapper;
|
|
import org.springblade.archive.service.IArchivesAutoService;
|
|
import org.springblade.archive.service.IArchivesAutoService;
|
|
import org.springblade.business.entity.ArchiveFile;
|
|
import org.springblade.business.entity.ArchiveFile;
|
|
import org.springblade.business.feign.ArchiveFileClient;
|
|
import org.springblade.business.feign.ArchiveFileClient;
|
|
|
|
+import org.springblade.common.utils.SnowFlakeUtil;
|
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
|
import org.springblade.core.mp.base.BaseServiceImpl;
|
|
import org.springblade.core.mp.support.Condition;
|
|
import org.springblade.core.mp.support.Condition;
|
|
import org.springblade.core.mp.support.Query;
|
|
import org.springblade.core.mp.support.Query;
|
|
|
|
+import org.springblade.core.oss.model.BladeFile;
|
|
import org.springblade.core.tool.utils.Func;
|
|
import org.springblade.core.tool.utils.Func;
|
|
import org.springblade.core.tool.utils.StringUtil;
|
|
import org.springblade.core.tool.utils.StringUtil;
|
|
import org.springblade.manager.entity.ArchiveTreeContract;
|
|
import org.springblade.manager.entity.ArchiveTreeContract;
|
|
@@ -951,5 +954,63 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
|
|
this.updateBatchById(changeList);
|
|
this.updateBatchById(changeList);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 获取案卷合成pdf文件
|
|
|
|
+ * @param archiveId
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public String getMergeArchivesFile(Long archiveId){
|
|
|
|
+ String url = "";
|
|
|
|
+
|
|
|
|
+ List<String> urlList= new ArrayList<>();//合成pdf集合
|
|
|
|
+
|
|
|
|
+ ArchivesAuto archivesAuto = this.getById(archiveId);
|
|
|
|
+
|
|
|
|
+ //判断archivesAuto是否为空
|
|
|
|
+ if (archivesAuto == null){
|
|
|
|
+ return url;
|
|
|
|
+ }
|
|
|
|
+ String outUrl = archivesAuto.getOutUrl();
|
|
|
|
+ //判断outUrl是否为空
|
|
|
|
+ String[] frontUrls = null;
|
|
|
|
+ if (StringUtils.isNotEmpty(outUrl)){
|
|
|
|
+ frontUrls = outUrl.split(",");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ List<String> fileUrls =new ArrayList<>();
|
|
|
|
+ if (!archivesAuto.isMedia()) {
|
|
|
|
+ List<ArchiveFile> result = this.archiveFileClient.getArchiveFileByArchivesId(archivesAuto.getId().toString(),"");
|
|
|
|
+ if(result != null && result.size() > 0){
|
|
|
|
+ //循环访问result,如果pdfpageurl不为空则取出,否则取pdffileurl
|
|
|
|
+ for (ArchiveFile archiveFile : result) {
|
|
|
|
+ String pdfPageUrl = archiveFile.getPdfPageUrl();
|
|
|
|
+ if (StringUtils.isEmpty(pdfPageUrl)) {
|
|
|
|
+ fileUrls.add(archiveFile.getPdfFileUrl());
|
|
|
|
+ }else{
|
|
|
|
+ fileUrls.add(pdfPageUrl);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (fileUrls.size() > 0){
|
|
|
|
+ //此处暂时这么处理,等oss上传接口里文件名可以区分后,再单独取
|
|
|
|
+ if (frontUrls != null && frontUrls.length > 3){
|
|
|
|
+ urlList.add(frontUrls[0]);
|
|
|
|
+ urlList.add(frontUrls[1]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ urlList.addAll(fileUrls);
|
|
|
|
+
|
|
|
|
+ if (frontUrls != null && frontUrls.length > 3){
|
|
|
|
+ urlList.add(frontUrls[2]);
|
|
|
|
+ urlList.add(frontUrls[3]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ url = archiveAutoPdfService.MergePdfAndUpload(urlList,archivesAuto.getName());
|
|
|
|
+ }
|
|
|
|
+ return url;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
}
|
|
}
|