From de668f65ccefcda5d48f51ff096e124b3b0bf226 Mon Sep 17 00:00:00 2001 From: AprilWind <2100166581@qq.com> Date: Fri, 27 Jun 2025 13:32:18 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=B0=8F=E6=94=B9=E5=8A=A8=E7=9A=84=E9=80=BB=E8=BE=91=E6=80=A7?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/common/core/constant/SystemConstants.java | 5 +++++ .../org/dromara/system/service/impl/SysDeptServiceImpl.java | 3 +-- .../dromara/system/service/impl/SysDictDataServiceImpl.java | 2 +- .../dromara/system/service/impl/SysDictTypeServiceImpl.java | 4 +++- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java index a91b2b531..4bd858f4c 100644 --- a/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java +++ b/ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/constant/SystemConstants.java @@ -72,6 +72,11 @@ public interface SystemConstants { */ Long SUPER_ADMIN_ID = 1L; + /** + * 根部门祖级列表 + */ + String ROOT_DEPT_ANCESTORS = "0"; + /** * 默认部门 ID */ diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java index 6dbe71583..fde4b875b 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java @@ -11,7 +11,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; -import org.dromara.common.core.constant.Constants; import org.dromara.common.core.constant.SystemConstants; import org.dromara.common.core.domain.dto.DeptDTO; import org.dromara.common.core.exception.ServiceException; @@ -351,7 +350,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService { // 如果部门状态为启用,且部门祖级列表不为空,且部门祖级列表不等于根部门祖级列表(如果部门祖级列表不等于根部门祖级列表,则说明存在上级部门) if (SystemConstants.NORMAL.equals(dept.getStatus()) && StringUtils.isNotEmpty(dept.getAncestors()) - && !StringUtils.equals(Constants.TOP_PARENT_ID.toString(), dept.getAncestors())) { + && !StringUtils.equals(SystemConstants.ROOT_DEPT_ANCESTORS, dept.getAncestors())) { // 如果该部门是启用状态,则启用该部门的所有上级部门 updateParentDeptStatusNormal(dept); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java index 5e8579b31..baf1bba99 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictDataServiceImpl.java @@ -96,8 +96,8 @@ public class SysDictDataServiceImpl implements ISysDictDataService { @Override public void deleteDictDataByIds(List dictCodes) { List list = baseMapper.selectByIds(dictCodes); - list.forEach(x -> CacheUtils.evict(CacheNames.SYS_DICT, x.getDictType())); baseMapper.deleteByIds(dictCodes); + list.forEach(x -> CacheUtils.evict(CacheNames.SYS_DICT, x.getDictType())); } /** diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index 529472d37..3491e887e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -138,10 +138,12 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService if (assigned) { throw new ServiceException(String.format("%1$s已分配,不能删除", x.getDictName())); } + }); + baseMapper.deleteByIds(dictIds); + list.forEach(x -> { CacheUtils.evict(CacheNames.SYS_DICT, x.getDictType()); CacheUtils.evict(CacheNames.SYS_DICT_TYPE, x.getDictType()); }); - baseMapper.deleteByIds(dictIds); } /**