src/main/java/org/springblade/modules/system/controller/MenuController.java
@@ -25,6 +25,7 @@ import org.springblade.core.launch.constant.AppConstant; import org.springblade.core.mp.support.Condition; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.core.tool.support.Kv; @@ -173,8 +174,8 @@ @GetMapping("/routes") @ApiOperationSupport(order = 8) @ApiOperation(value = "前端菜单数据", notes = "前端菜单数据") public R<List<MenuVO>> routes(BladeUser user, Long topMenuId) { List<MenuVO> list = menuService.routes((user == null) ? null : user.getRoleId(), topMenuId); public R<List<MenuVO>> routes(Long topMenuId) { List<MenuVO> list = menuService.routes(AuthUtil.getUser().getRoleId(), topMenuId); return R.data(list); } @@ -184,8 +185,8 @@ @GetMapping("/routes-ext") @ApiOperationSupport(order = 9) @ApiOperation(value = "前端菜单数据", notes = "前端菜单数据") public R<List<MenuVO>> routesExt(BladeUser user, Long topMenuId) { List<MenuVO> list = menuService.routesExt(user.getRoleId(), topMenuId); public R<List<MenuVO>> routesExt(Long topMenuId) { List<MenuVO> list = menuService.routesExt(AuthUtil.getUser().getRoleId(), topMenuId); return R.data(list); } @@ -195,8 +196,8 @@ @GetMapping("/buttons") @ApiOperationSupport(order = 10) @ApiOperation(value = "前端按钮数据", notes = "前端按钮数据") public R<List<MenuVO>> buttons(BladeUser user) { List<MenuVO> list = menuService.buttons(user.getRoleId()); public R<List<MenuVO>> buttons() { List<MenuVO> list = menuService.buttons(AuthUtil.getUser().getRoleId()); return R.data(list); } @@ -217,7 +218,8 @@ @GetMapping("/grant-tree") @ApiOperationSupport(order = 12) @ApiOperation(value = "权限分配树形结构", notes = "权限分配树形结构") public R<GrantTreeVO> grantTree(BladeUser user) { public R<GrantTreeVO> grantTree() { BladeUser user = AuthUtil.getUser(); GrantTreeVO vo = new GrantTreeVO(); vo.setMenu(menuService.grantTree(user)); vo.setDataScope(menuService.grantDataScopeTree(user)); @@ -245,7 +247,8 @@ @GetMapping("/grant-top-tree") @ApiOperationSupport(order = 14) @ApiOperation(value = "顶部菜单树形结构", notes = "顶部菜单树形结构") public R<GrantTreeVO> grantTopTree(BladeUser user) { public R<GrantTreeVO> grantTopTree() { BladeUser user = AuthUtil.getUser(); GrantTreeVO vo = new GrantTreeVO(); vo.setMenu(menuService.grantTopTree(user)); return R.data(vo); @@ -269,7 +272,8 @@ @GetMapping("/top-menu") @ApiOperationSupport(order = 16) @ApiOperation(value = "顶部菜单数据", notes = "顶部菜单数据") public R<List<TopMenu>> topMenu(BladeUser user) { public R<List<TopMenu>> topMenu() { BladeUser user = AuthUtil.getUser(); if (Func.isEmpty(user)) { return null; } @@ -283,7 +287,8 @@ @GetMapping("auth-routes") @ApiOperationSupport(order = 17) @ApiOperation(value = "菜单的角色权限") public R<List<Kv>> authRoutes(BladeUser user) { public R<List<Kv>> authRoutes() { BladeUser user = AuthUtil.getUser(); if (Func.isEmpty(user)) { return null; } src/main/java/org/springblade/modules/system/controller/TenantController.java
@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.qiniu.util.Auth; import io.swagger.annotations.*; import lombok.AllArgsConstructor; import org.springblade.core.boot.ctrl.BladeController; @@ -29,6 +30,7 @@ import org.springblade.core.mp.support.Query; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.annotation.PreAuth; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.core.tool.constant.BladeConstant; @@ -99,9 +101,12 @@ @ApiOperationSupport(order = 3) @ApiOperation(value = "下拉数据源", notes = "传入tenant") //@PreAuth(RoleConstant.HAS_ROLE_ADMIN) public R<List<Tenant>> select(Tenant tenant, BladeUser bladeUser) { public R<List<Tenant>> select() { BladeUser user = AuthUtil.getUser(); Tenant tenant = new Tenant(); tenant.setTenantId(AuthUtil.getTenantId()); QueryWrapper<Tenant> queryWrapper = Condition.getQueryWrapper(tenant); List<Tenant> list = tenantService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper); List<Tenant> list = tenantService.list((!user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Tenant::getTenantId, user.getTenantId()) : queryWrapper); return R.data(list); } src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -199,11 +199,8 @@ }) @ApiOperationSupport(order = 3) @ApiOperation(value = "列表", notes = "传入account和realName") //@PreAuth(RoleConstant.HAS_ROLE_ADMIN) public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId, BladeUser bladeUser) { System.out.println("在线更新代码.... "); IPage<UserVO> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : bladeUser.getTenantId())); System.out.println("=================在线更新代码=================="); public R<IPage<UserVO>> page(@ApiIgnore User user, Query query, Long deptId) { IPage<UserVO> pages = userService.selectUserPage(Condition.getPage(query), user, deptId, (AuthUtil.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? StringPool.EMPTY : AuthUtil.getTenantId())); return R.data(pages); } src/main/java/org/springblade/modules/system/mapper/RoleMapper.xml
@@ -97,12 +97,17 @@ SELECT * FROM ( SELECT t1.*,IF( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild FROM ( SELECT id, parent_id,role_name FROM blade_role t where is_deleted =0 ORDER BY parent_id, id ) t1, ( SELECT id, parent_id,role_name,role_alias FROM blade_role t where is_deleted =0 ORDER BY parent_id, id ) t1, ( SELECT @pids := #{roleParam.roleId} ) t2 ) t3 WHERE ischild != 0 ) on br.id = t3.id WHERE id != 1123598816738675201 and id != #{roleParam.roleId} <if test="roleParam.roleName!=null and roleParam.roleName!=''"> and role_name like concat('%',#{roleParam.roleName},'%') </if> <if test="roleParam.roleAlias!=null and roleParam.roleAlias!=''"> and role_alias like concat('%',#{roleParam.roleAlias},'%') </if> ) t4 on br.id = t4.id <if test="roleParam.isNowLevel==0"> union all ( src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -344,21 +344,13 @@ </if> </select> <!--用户列表信息--> <select id="selectUserPage" resultMap="userResultMap"> select bu.* from blade_user bu left join blade_dept bd on bd.id = bu.dept_id left join sys_jurisdiction sj on sj.id = bu.jurisdiction left join blade_role br on br.id = bu.role_id where bu.is_deleted = 0 left join blade_dept bd on bd.id = bu.dept_id left join sys_jurisdiction sj on sj.id = bu.jurisdiction left join blade_role br on br.id = bu.role_id where bu.is_deleted = 0 and bu.id != 1123598821738675201 <if test="user.tenantId!=null and user.tenantId != ''"> and tenant_id = #{user.tenantId} </if> src/main/java/org/springblade/modules/system/service/impl/MenuServiceImpl.java
@@ -24,6 +24,7 @@ import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.constant.BladeConstant; import org.springblade.core.tool.constant.RoleConstant; import org.springblade.core.tool.node.ForestNodeMerger; import org.springblade.core.tool.support.Kv; import org.springblade.core.tool.utils.Func; @@ -154,7 +155,7 @@ @Override public List<MenuVO> grantTree(BladeUser user) { return ForestNodeMerger.merge(user.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID) ? baseMapper.grantTree() : baseMapper.grantTreeByRole(Func.toLongList(user.getRoleId()))); return ForestNodeMerger.merge(AuthUtil.getUser().getRoleName().equals(RoleConstant.ADMINISTRATOR) ? baseMapper.grantTree() : baseMapper.grantTreeByRole(Func.toLongList(user.getRoleId()))); } @Override src/main/java/org/springblade/modules/system/service/impl/RoleServiceImpl.java
@@ -198,6 +198,7 @@ } role.setTenantId(parent.getTenantId()); } role.setParentId(Long.parseLong(AuthUtil.getUser().getRoleId())); role.setIsDeleted(BladeConstant.DB_NOT_DELETED); return saveOrUpdate(role); } src/main/java/org/springblade/modules/system/vo/RoleParam.java
@@ -50,4 +50,14 @@ * 角色id */ private String roleId; /** * 角色名称 */ private String roleName; /** * 角色别名 */ private String roleAlias; }