@@ -54,6 +54,19 @@ public interface ArchivesAutoMapper extends BaseMapper<ArchivesAuto> {
* @param projectId
*/
Integer splitArchvies(@Param("projectId") Long projectId);
+
+ /**
+ * 获取案卷封面等pdfurl
+ * @param projectId
+ * @return
+ */
+ List<String> getArchivesOutUrlList(@Param("projectId") Long projectId);
+ * 获取文件页面pdfurl
+ List<String> getFilePageUrlList(@Param("projectId") Long projectId);
/**
* 根据项目id获取所有档案
@@ -146,6 +146,25 @@
and is_lock=0;
</update>
+ <select id="getFilePageUrlList" resultType="java.lang.String">
+ select pdf_page_url from u_archive_file
+ where
+ is_deleted=0 and
+ archive_id in(
+ select id from u_archives_auto where project_id=#{projectId}
+ and is_auto_file!=1
+ and is_deleted=0
+ and is_lock=0
+ );
+ </select>
+ <select id="getArchivesOutUrlList" resultType="java.lang.String">
+ select out_url from u_archives_auto where project_id=#{projectId}
<select id="getListByProjectId" resultType="org.springblade.archive.dto.ArchivesAutoDTO">
select id,project_id as projectId,name,file_number as fileNumber,unit,storage_time as storageTime,node_id as nodeId,tree_sort as treeSort,status,is_deleted as isDeleted,is_lock as isLock,create_time as createTime
from u_archives_auto
@@ -235,9 +235,31 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
}
@Override
public void splitArchvies(Long projectId){
+ 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){
+ removeFiles.add(FileUtils.getAliYunSubUrl(url));
+ }
+ //清除文件页面pdf
+ List<String> filePageUrlList = baseMapper.getFilePageUrlList(projectId);
+ if(filePageUrlList!=null && filePageUrlList.size()>0){
+ for(String url:filePageUrlList){
+ iossClient.removeFiles(removeFiles);
+ //取消未锁定案卷文件关联
baseMapper.splitArchvies(projectId);
- //TODO 清除案卷封面等pdf
- //TODO 清除文件页面pdf
@@ -286,7 +286,7 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
//修改数据
-// oldData.setPdfUrl("");
+ oldData.setPdfUrl("");
this.baseMapper.updateById(oldData);
} else {
@@ -446,10 +446,10 @@ public class SignPfxFileController extends BladeController {
if(StringUtils.isNotEmpty(oldData.getProjectContractRole()) && !vo.getProjectContractRole().trim().equals(oldData.getProjectContractRole().trim())){
//如果不匹配,先删除
this.signPfxDeputyService.update(Wrappers.<SignPfxDeputy>lambdaUpdate().set(SignPfxDeputy::getIsDeleted, 1).eq(SignPfxDeputy::getSignPfxFileId, vo.getId()));
+ //再重新生成
+ this.saveSignPfxDeputy(vo, false);
- //再重新生成
- this.saveSignPfxDeputy(vo, false);
return R.status(this.signPfxFileService.updateById(vo));