|
@@ -258,33 +258,111 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
|
|
|
@Override
|
|
|
public void splitArchvies(Long projectId,Long contractId,Long nodeId){
|
|
|
List<String> removeFiles = new ArrayList<>();
|
|
|
- //清除案卷封面等pdf
|
|
|
- List<String> archivesOutUrlList = baseMapper.getArchivesOutUrlList(projectId);
|
|
|
- if(archivesOutUrlList!=null && archivesOutUrlList.size()>0){
|
|
|
- for(String outUrl:archivesOutUrlList){
|
|
|
- String[] splits = outUrl.split(",");
|
|
|
- for(String url:splits){
|
|
|
+ //没合同段的默认整个项目
|
|
|
+ if (contractId == null) {
|
|
|
+ //清除案卷封面等pdf
|
|
|
+ List<String> archivesOutUrlList = baseMapper.getArchivesOutUrlList(projectId);
|
|
|
+ if(archivesOutUrlList!=null && archivesOutUrlList.size()>0){
|
|
|
+ for(String outUrl:archivesOutUrlList){
|
|
|
+ String[] splits = outUrl.split(",");
|
|
|
+ for(String url:splits){
|
|
|
+ if(StringUtils.isNotEmpty(url.trim())){
|
|
|
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //清除文件页面pdf
|
|
|
+ List<String> filePageUrlList = baseMapper.getFilePageUrlList(projectId);
|
|
|
+ if(filePageUrlList!=null && filePageUrlList.size()>0){
|
|
|
+ for(String url:filePageUrlList){
|
|
|
if(StringUtils.isNotEmpty(url.trim())){
|
|
|
removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- //清除文件页面pdf
|
|
|
- List<String> filePageUrlList = baseMapper.getFilePageUrlList(projectId);
|
|
|
- if(filePageUrlList!=null && filePageUrlList.size()>0){
|
|
|
- for(String url:filePageUrlList){
|
|
|
- if(StringUtils.isNotEmpty(url.trim())){
|
|
|
- removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ executorService.execute(()->{
|
|
|
+ iossClient.removeFiles(removeFiles);
|
|
|
+ log.debug("文件删完了");
|
|
|
+ });
|
|
|
+
|
|
|
+ //取消未锁定案卷文件关联
|
|
|
+ baseMapper.splitArchvies(projectId);
|
|
|
+
|
|
|
+ }else{
|
|
|
+ String treeCode = getAuthCode(contractId);
|
|
|
+ if (nodeId!= null) {
|
|
|
+ //有节点的按节点
|
|
|
+ String strNodeId = nodeId.toString();
|
|
|
+ ArchiveTreeContract archiveTreeContract = archiveTreeContractClient.getArchiveTreeContractById(nodeId);
|
|
|
+ String ancestors=archiveTreeContract.getAncestors()+","+nodeId;
|
|
|
+
|
|
|
+ //清除案卷封面等pdf
|
|
|
+ List<String> archivesOutUrlList = baseMapper.getArchivesOutUrlListByNode(projectId,ancestors,strNodeId);
|
|
|
+ if(archivesOutUrlList!=null && archivesOutUrlList.size()>0){
|
|
|
+ for(String outUrl:archivesOutUrlList){
|
|
|
+ String[] splits = outUrl.split(",");
|
|
|
+ for(String url:splits){
|
|
|
+ if(StringUtils.isNotEmpty(url.trim())){
|
|
|
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+ //清除文件页面pdf
|
|
|
+ List<String> filePageUrlList = baseMapper.getFilePageUrlListByNode(projectId,ancestors,strNodeId);
|
|
|
+ if(filePageUrlList!=null && filePageUrlList.size()>0){
|
|
|
+ for(String url:filePageUrlList){
|
|
|
+ if(StringUtils.isNotEmpty(url.trim())){
|
|
|
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ executorService.execute(()->{
|
|
|
+ iossClient.removeFiles(removeFiles);
|
|
|
+ log.debug("文件删完了");
|
|
|
+ });
|
|
|
+
|
|
|
+ baseMapper.splitArchviesByNode(projectId,ancestors,strNodeId);
|
|
|
+ }else{
|
|
|
+ //没节点的按合同段
|
|
|
+ //清除案卷封面等pdf
|
|
|
+ List<String> archivesOutUrlList = baseMapper.getArchivesOutUrlListByContract(projectId,contractId,treeCode);
|
|
|
+ if(archivesOutUrlList!=null && archivesOutUrlList.size()>0){
|
|
|
+ for(String outUrl:archivesOutUrlList){
|
|
|
+ String[] splits = outUrl.split(",");
|
|
|
+ for(String url:splits){
|
|
|
+ if(StringUtils.isNotEmpty(url.trim())){
|
|
|
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //清除文件页面pdf
|
|
|
+ List<String> filePageUrlList = baseMapper.getFilePageUrlListByContract(projectId,contractId,treeCode);
|
|
|
+ if(filePageUrlList!=null && filePageUrlList.size()>0){
|
|
|
+ for(String url:filePageUrlList){
|
|
|
+ if(StringUtils.isNotEmpty(url.trim())){
|
|
|
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ executorService.execute(()->{
|
|
|
+ iossClient.removeFiles(removeFiles);
|
|
|
+ log.debug("文件删完了");
|
|
|
+ });
|
|
|
+
|
|
|
+ //没节点的按合同段
|
|
|
+ baseMapper.splitArchviesByContract(projectId,contractId,treeCode);
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
- executorService.execute(()->{
|
|
|
- iossClient.removeFiles(removeFiles);
|
|
|
- log.debug("文件删完了");
|
|
|
- });
|
|
|
- //取消未锁定案卷文件关联
|
|
|
- baseMapper.splitArchvies(projectId);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
}
|
|
|
|