From aaa0748409ea4904361245ed6e16c1c53977df3f Mon Sep 17 00:00:00 2001 From: "pikachu1995@126.com" Date: Thu, 18 Jul 2024 14:28:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=E5=A4=B9?= =?UTF-8?q?=E9=9C=80=E5=88=A4=E6=96=AD=EF=BC=8C=E4=BC=98=E5=8C=96=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E9=80=BB=E8=BE=91=E3=80=82=E6=98=AF=E5=90=A6=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=A4=B9=E4=B8=8B=E5=AD=98=E5=9C=A8=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/lili/controller/common/FileDirectoryController.java | 7 +++++-- .../src/main/java/cn/lili/common/enums/ResultCode.java | 1 + .../java/cn/lili/modules/file/service/FileService.java | 7 +++++++ .../cn/lili/modules/file/serviceimpl/FileServiceImpl.java | 5 +++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/common-api/src/main/java/cn/lili/controller/common/FileDirectoryController.java b/common-api/src/main/java/cn/lili/controller/common/FileDirectoryController.java index fd82a9c3..1079ad54 100644 --- a/common-api/src/main/java/cn/lili/controller/common/FileDirectoryController.java +++ b/common-api/src/main/java/cn/lili/controller/common/FileDirectoryController.java @@ -1,5 +1,6 @@ package cn.lili.controller.common; +import cn.lili.common.enums.ResultCode; import cn.lili.common.enums.ResultUtil; import cn.lili.common.security.context.UserContext; import cn.lili.common.vo.ResultMessage; @@ -57,8 +58,10 @@ public class FileDirectoryController { @ApiOperation(value = "删除文件目录") @DeleteMapping("/{id}") public ResultMessage deleteSceneFileList(@PathVariable String id) { - //删除文件夹下面的图片 - fileService.batchDeleteByDirectory(id); + //检测文件夹下是否包含图片 + if(fileService.countByDirectory(id)){ + return ResultUtil.error(ResultCode.FILE_DIRECTORY_NOT_EMPTY); + } //删除目录 fileDirectoryService.removeById(id); return ResultUtil.success(); diff --git a/framework/src/main/java/cn/lili/common/enums/ResultCode.java b/framework/src/main/java/cn/lili/common/enums/ResultCode.java index 55d392a3..92cb4cff 100644 --- a/framework/src/main/java/cn/lili/common/enums/ResultCode.java +++ b/framework/src/main/java/cn/lili/common/enums/ResultCode.java @@ -42,6 +42,7 @@ public enum ResultCode { PLATFORM_NOT_SUPPORTED_IM(1006, "平台未开启IM"), STORE_NOT_SUPPORTED_IM(1007, "店铺未开启IM"), UNINITIALIZED_PASSWORD(1008, "非初始化密码,无法进行初始化设置"), + FILE_DIRECTORY_NOT_EMPTY(1012, "文件夹下有文件,请删除所有文件后删除文件夹!"), /** * 分类 */ diff --git a/framework/src/main/java/cn/lili/modules/file/service/FileService.java b/framework/src/main/java/cn/lili/modules/file/service/FileService.java index 9f539f18..ce3d7d70 100644 --- a/framework/src/main/java/cn/lili/modules/file/service/FileService.java +++ b/framework/src/main/java/cn/lili/modules/file/service/FileService.java @@ -31,6 +31,13 @@ public interface FileService extends IService { */ void batchDeleteByDirectory(String directoryId); + /** + * 根据文件夹ID查看是否有文件 + * @param directoryId 文件夹ID + * @return + */ + Boolean countByDirectory(String directoryId); + /** * 所有者批量删除 * diff --git a/framework/src/main/java/cn/lili/modules/file/serviceimpl/FileServiceImpl.java b/framework/src/main/java/cn/lili/modules/file/serviceimpl/FileServiceImpl.java index b860aa9f..cb9582bb 100644 --- a/framework/src/main/java/cn/lili/modules/file/serviceimpl/FileServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/file/serviceimpl/FileServiceImpl.java @@ -59,6 +59,11 @@ public class FileServiceImpl extends ServiceImpl implements Fi this.remove(queryWrapper); } + @Override + public Boolean countByDirectory(String directoryId) { + return this.count(new LambdaQueryWrapper().eq(File::getFileDirectoryId, directoryId))>0; + } + @Override public void batchDelete(List ids, AuthUser authUser) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();