9ffb52fd by 荆蔚杰

补录业务逻辑调整:判断卷内目录和每个卷内目录对应的附件列表是否为空,如果为空不能归档

1 parent 44424dfe
......@@ -50,7 +50,7 @@ public interface DgArchivesReplenishService extends IService<DgArchivesReplenish
/**
* 补录归档
* 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库
* 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库,判断卷内目录和每个卷内目录对应的附件列表是否为空,如果为空不能归档
*
* @param bsmModify 补录标识码
* @param bsmArchive 档案标识码
......
package com.pashanhoo.replenish.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
......@@ -235,7 +237,7 @@ public class DgArchivesReplenishServiceImpl extends ServiceImpl<DgArchivesReplen
/**
* 补录归档
* 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库
* 补录记录的状态为已归档和归档日期,一并修改档案记录的状态为在库,判断卷内目录和每个卷内目录对应的附件列表是否为空,如果为空不能归档
*
* @param bsmModify 补录标识码
* @param bsmArchive 档案标识码
......@@ -244,6 +246,27 @@ public class DgArchivesReplenishServiceImpl extends ServiceImpl<DgArchivesReplen
@Override
@Transactional(rollbackFor = Exception.class)
public boolean doReplenishArchive(String bsmModify,String bsmArchive) {
//判断卷内目录和附件是否有数据
QueryWrapper<DgArchivesCatalogDO> catalogWrapper = new QueryWrapper<>();
QueryWrapper<DgFileDO> fileWrapper = new QueryWrapper<>();
catalogWrapper.lambda().eq(DgArchivesCatalogDO::getBsmArchives, bsmArchive);
//目录集合
List<DgArchivesCatalogDO> catalogDOList = dgArchivesCatalogService.list(catalogWrapper);
//获取附件集合
List<String> bsmCatalogs = catalogDOList.stream().map(DgArchivesCatalogDO::getBsmCatalog).collect(Collectors.toList());
if (CollUtil.isEmpty(catalogDOList)) {
return false;
}
for (String bsmCatalog : bsmCatalogs) {
fileWrapper.lambda().eq(DgFileDO::getBsmCatalog, bsmCatalog);
List<DgFileDO> fileDOList = dgFileService.list(fileWrapper);
if (CollUtil.isEmpty(fileDOList)) {
return false;
}
}
//更新补录表归档信息
UpdateWrapper<DgArchivesReplenishDO> replenishUpdateWrapper = new UpdateWrapper<>();
DgArchivesReplenishDO replenishDO = new DgArchivesReplenishDO();
......