diff --git a/shuili-system/src/main/java/com/kms/common/utils/UserUtils.java b/shuili-system/src/main/java/com/kms/common/utils/UserUtils.java index b54a96fe..d697602a 100644 --- a/shuili-system/src/main/java/com/kms/common/utils/UserUtils.java +++ b/shuili-system/src/main/java/com/kms/common/utils/UserUtils.java @@ -1,18 +1,27 @@ package com.kms.common.utils; import cn.dev33.satoken.stp.StpUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.kms.framework.web.service.SysPermissionService; import com.kms.system.domain.SysXzqh; import com.kms.system.service.SysDeptService; +import com.kms.system.service.SysRoleService; import com.kms.system.service.SysUserService; import com.kms.system.service.SysXzqhService; +import com.kms.yxgh.df.domain.DfSysUserRole; +import com.kms.yxgh.df.mapper.DfSysUserRoleMapper; import com.kms.yxgh.df.service.AuthorityDikeCodeService; import com.shuili.common.core.domain.entity.SysDept; +import com.shuili.common.core.domain.entity.SysRole; import com.shuili.common.core.domain.entity.SysUser; import com.shuili.common.utils.SpringUtils; import com.shuili.common.utils.StringUtils; +import org.springframework.util.CollectionUtils; +import java.util.Arrays; +import java.util.List; import java.util.Set; +import java.util.stream.Collectors; public class UserUtils { @@ -21,6 +30,7 @@ public class UserUtils { private static SysPermissionService sysPermissionService = null; + private static SysXzqhService sysXzqhService = null; private static SysDeptService sysDeptService = null; @@ -55,6 +65,31 @@ public class UserUtils { public static String getAdcd() { SysUser user = getUser(); + DfSysUserRoleMapper dfSysUserRoleMapper = SpringUtils.getBean(DfSysUserRoleMapper.class); + SysRoleService sysRoleService = SpringUtils.getBean(SysRoleService.class); + + List sysUserRoles = dfSysUserRoleMapper.selectList(new LambdaQueryWrapper().eq(DfSysUserRole::getUserId, user.getId())); + if (!CollectionUtils.isEmpty(sysUserRoles)) { + List roleIds = sysUserRoles.stream() + .map(DfSysUserRole::getRoleId) + .filter(roleId -> !org.springframework.util.StringUtils.isEmpty(roleId)) + .collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(roleIds)) { + List sysRoleIds = sysRoleService.list(new LambdaQueryWrapper() + .in(SysRole::getId, roleIds) + ); + if (!CollectionUtils.isEmpty(sysRoleIds)) { + List roleCodes = sysRoleIds.stream() + .map(SysRole::getRoleKey) + .collect(Collectors.toList()); + if (roleCodes.contains("YW00352") + || roleCodes.contains("YW00402")) { + return ""; + } + } + } + } + if (user == null) { return ""; }