From f1208474f771a1c233d7425c8ed13fbaa0d521ac Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期三, 12 三月 2025 09:35:13 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/5.X' into 5.X --- ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java | 34 +++++++++++++++++++++++++++++++++- 1 files changed, 33 insertions(+), 1 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java index 08dda66..b69624c 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysDeptMapper.java @@ -1,13 +1,16 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import org.dromara.common.mybatis.helper.DataBaseHelper; import org.dromara.system.domain.SysDept; import org.dromara.system.domain.vo.SysDeptVo; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -29,12 +32,41 @@ }) List<SysDeptVo> selectDeptList(@Param(Constants.WRAPPER) Wrapper<SysDept> queryWrapper); + /** + * 鍒嗛〉鏌ヨ閮ㄩ棬绠$悊鏁版嵁 + * + * @param queryWrapper 鏌ヨ鏉′欢 + * @return 閮ㄩ棬淇℃伅闆嗗悎 + */ + @DataPermission({ + @DataColumn(key = "deptName", value = "dept_id"), + }) + Page<SysDeptVo> selectPageDeptList(@Param("page") Page<SysDeptVo> page, @Param(Constants.WRAPPER) Wrapper<SysDept> queryWrapper); + + /** + * 缁熻鎸囧畾閮ㄩ棬ID鐨勯儴闂ㄦ暟閲� + * + * @param deptId 閮ㄩ棬ID + * @return 璇ラ儴闂↖D鐨勯儴闂ㄦ暟閲� + */ @DataPermission({ @DataColumn(key = "deptName", value = "dept_id") }) long countDeptById(Long deptId); /** + * 鏍规嵁鐖堕儴闂↖D鏌ヨ鍏舵墍鏈夊瓙閮ㄩ棬鐨勫垪琛� + * + * @param parentId 鐖堕儴闂↖D + * @return 鍖呭惈瀛愰儴闂ㄧ殑鍒楄〃 + */ + default List<SysDept> selectListByParentId(Long parentId) { + return this.selectList(new LambdaQueryWrapper<SysDept>() + .select(SysDept::getDeptId) + .apply(DataBaseHelper.findInSet(parentId, "ancestors"))); + } + + /** * 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭� * * @param roleId 瑙掕壊ID -- Gitblit v1.9.3