package com.crm.service.impl; import com.crm.service.ISysMenuService; import com.crm.service.ISysRoleService; import com.nq.pojo.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.HashSet; import java.util.Set; /** * 用户权限处理 * * @author ruoyi */ @Component public class SysPermissionService { @Autowired private ISysRoleService roleService; @Autowired private ISysMenuService menuService; /** * 获取角色数据权限 * * @param user 用户信息 * @return 角色权限信息 */ public Set getRolePermission(User user) { Set roles = new HashSet(); // 管理员拥有所有权限 if (user.isAdmin()) { roles.add("admin"); } else { roles.addAll(roleService.selectRolePermissionByUserId(user.getId().longValue())); } return roles; } /** * 获取菜单数据权限 * * @param user 用户信息 * @return 菜单权限信息 */ public Set getMenuPermission(User user) { Set perms = new HashSet(); // 管理员拥有所有权限 if (user.isAdmin()) { perms.add("*:*:*"); } else { perms.addAll(menuService.selectMenuPermsByUserId(user.getId().longValue())); } return perms; } public Set getMenuId(User user) { Set perms = new HashSet(); // 管理员拥有所有权限 if (user.isAdmin()) { perms.add("*:*:*"); } else { perms.addAll(menuService.selectMenuIdByUserId(user.getId().longValue())); } return perms; } }