|
|
@@ -244,11 +244,12 @@ public class ScanFileServiceImpl extends ServiceImpl<ScanFileMapper, ScanFile>
|
|
|
|
|
|
@Override
|
|
|
public boolean deleteScanFolder(Long id) {
|
|
|
- List<ScanFile> scanFiles = baseMapper.selectList(new LambdaQueryWrapper<>(ScanFile.class).eq(ScanFile::getFolderId, id));
|
|
|
- if(scanFiles.size()>0){
|
|
|
- throw new ServiceException("当前节点存在文件,无法删除");
|
|
|
- }
|
|
|
List<ScanFolder> scanFolders = scanFolderMapper.selectAllChildren(id);
|
|
|
+ List<Long> longList = scanFolders.stream().map(ScanFolder::getId).collect(Collectors.toList());
|
|
|
+ List<ScanFile> scanFiles = baseMapper.selectList(new LambdaQueryWrapper<>(ScanFile.class).in(ScanFile::getFolderId, longList));
|
|
|
+ if(!scanFiles.isEmpty()){
|
|
|
+ throw new ServiceException("当前节点或子节点存在文件,无法删除");
|
|
|
+ }
|
|
|
for (ScanFolder folder : scanFolders) {
|
|
|
scanFolderMapper.deleteById(folder.getId());
|
|
|
this.deleteScanFolderLinux(folder.getId());
|