From 736745750018d689d2a512760da313b1fb8dc167 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期三, 22 五月 2024 18:26:31 +0800 Subject: [PATCH] fix 修复 查询审核人权限不够问题 --- ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java | 36 +++++++++++++++++++++++++++++++----- 1 files changed, 31 insertions(+), 5 deletions(-) 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 36680e3..cb3f340 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 @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; import org.dromara.common.core.constant.CacheNames; import org.dromara.common.core.constant.UserConstants; import org.dromara.common.core.exception.ServiceException; @@ -27,7 +28,6 @@ import org.dromara.system.mapper.SysRoleMapper; import org.dromara.system.mapper.SysUserMapper; import org.dromara.system.service.ISysDeptService; -import lombok.RequiredArgsConstructor; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.Cacheable; import org.springframework.stereotype.Service; @@ -69,8 +69,10 @@ */ @Override public List<Tree<Long>> selectDeptTreeList(SysDeptBo bo) { + // 鍙煡璇㈡湭绂佺敤閮ㄩ棬 + bo.setStatus(UserConstants.DEPT_NORMAL); LambdaQueryWrapper<SysDept> lqw = buildQueryWrapper(bo); - List<SysDept> depts = baseMapper.selectList(lqw); + List<SysDeptVo> depts = baseMapper.selectDeptList(lqw); return buildDeptTreeSelect(depts); } @@ -80,9 +82,12 @@ lqw.eq(ObjectUtil.isNotNull(bo.getDeptId()), SysDept::getDeptId, bo.getDeptId()); lqw.eq(ObjectUtil.isNotNull(bo.getParentId()), SysDept::getParentId, bo.getParentId()); lqw.like(StringUtils.isNotBlank(bo.getDeptName()), SysDept::getDeptName, bo.getDeptName()); + lqw.like(StringUtils.isNotBlank(bo.getDeptCategory()), SysDept::getDeptCategory, bo.getDeptCategory()); lqw.eq(StringUtils.isNotBlank(bo.getStatus()), SysDept::getStatus, bo.getStatus()); + lqw.orderByAsc(SysDept::getAncestors); lqw.orderByAsc(SysDept::getParentId); lqw.orderByAsc(SysDept::getOrderNum); + lqw.orderByAsc(SysDept::getDeptId); return lqw; } @@ -93,7 +98,7 @@ * @return 涓嬫媺鏍戠粨鏋勫垪琛� */ @Override - public List<Tree<Long>> buildDeptTreeSelect(List<SysDept> depts) { + public List<Tree<Long>> buildDeptTreeSelect(List<SysDeptVo> depts) { if (CollUtil.isEmpty(depts)) { return CollUtil.newArrayList(); } @@ -133,6 +138,14 @@ .select(SysDept::getDeptName).eq(SysDept::getDeptId, dept.getParentId())); dept.setParentName(ObjectUtil.isNotNull(parentDept) ? parentDept.getDeptName() : null); return dept; + } + + @Override + public List<SysDeptVo> selectDeptByIds(List<Long> deptIds) { + return baseMapper.selectDeptList(new LambdaQueryWrapper<SysDept>() + .select(SysDept::getDeptId, SysDept::getDeptName, SysDept::getLeader) + .eq(SysDept::getStatus, UserConstants.DEPT_NORMAL) + .in(CollUtil.isNotEmpty(deptIds), SysDept::getDeptId, deptIds)); } /** @@ -206,6 +219,20 @@ } /** + * 鏍¢獙閮ㄩ棬绫诲埆缂栫爜鏄惁鍞竴 + * + * @param dept 閮ㄩ棬淇℃伅 + * @return 缁撴灉 + */ + @Override + public boolean checkDeptCategoryUnique(SysDeptBo dept) { + boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysDept>() + .eq(SysDept::getDeptCategory, dept.getDeptCategory()) + .ne(ObjectUtil.isNotNull(dept.getDeptId()), SysDept::getDeptId, dept.getDeptId())); + return !exist; + } + + /** * 鏍¢獙閮ㄩ棬鏄惁鏈夋暟鎹潈闄� * * @param deptId 閮ㄩ棬id @@ -218,8 +245,7 @@ if (LoginHelper.isSuperAdmin()) { return; } - SysDeptVo dept = baseMapper.selectDeptById(deptId); - if (ObjectUtil.isNull(dept)) { + if (baseMapper.countDeptById(deptId) == 0) { throw new ServiceException("娌℃湁鏉冮檺璁块棶閮ㄩ棬鏁版嵁锛�"); } } -- Gitblit v1.9.3