diff --git a/src/main/java/com/spring/modules/sys/controller/SysMenuController.java b/src/main/java/com/spring/modules/sys/controller/SysMenuController.java index d26aa5bf..c65c07d4 100644 --- a/src/main/java/com/spring/modules/sys/controller/SysMenuController.java +++ b/src/main/java/com/spring/modules/sys/controller/SysMenuController.java @@ -42,7 +42,8 @@ public class SysMenuController extends AbstractController { public R nav(@RequestParam("l") String l, @RequestParam("menuType") String menuType) { List menuList = sysMenuService.getUserMenuList(getUserId(), l, menuType); Set permissions = shiroService.getUserPermissions(getUserId()); - return R.ok().put("menuList", menuList).put("permissions", permissions); + List accessField=shiroService.getAccessFieldByUserId(getUserId()); + return R.ok().put("menuList", menuList).put("permissions", permissions).put("accessField", accessField); } /** diff --git a/src/main/java/com/spring/modules/sys/dao/SysUserDao.java b/src/main/java/com/spring/modules/sys/dao/SysUserDao.java index da3d6c39..f4698de9 100644 --- a/src/main/java/com/spring/modules/sys/dao/SysUserDao.java +++ b/src/main/java/com/spring/modules/sys/dao/SysUserDao.java @@ -57,4 +57,25 @@ public interface SysUserDao extends BaseMapper { */ void addAccessSite(AccessSiteData inData); + /** + * @Description 获取全部字段权限 + * @Title selectAllField + * @param + * @author rq + * @date 2023/10/19 9:56 + * @return List + * @throw + */ + List selectAllField(); + + /** + * @Description 获取用户字段权限 + * @Title selectAllField + * @param + * @author rq + * @date 2023/10/19 9:56 + * @return List + * @throw + */ + List selectFieldByUserId(long userId); } diff --git a/src/main/java/com/spring/modules/sys/service/ShiroService.java b/src/main/java/com/spring/modules/sys/service/ShiroService.java index 2825af94..215fc2ba 100644 --- a/src/main/java/com/spring/modules/sys/service/ShiroService.java +++ b/src/main/java/com/spring/modules/sys/service/ShiroService.java @@ -5,6 +5,7 @@ package com.spring.modules.sys.service; import com.spring.modules.sys.entity.SysUserEntity; import com.spring.modules.sys.entity.SysUserTokenEntity; +import java.util.List; import java.util.Set; @@ -21,4 +22,6 @@ public interface ShiroService { * @param userId */ SysUserEntity queryUser(Long userId); + + List getAccessFieldByUserId(long UserId); } diff --git a/src/main/java/com/spring/modules/sys/service/impl/ShiroServiceImpl.java b/src/main/java/com/spring/modules/sys/service/impl/ShiroServiceImpl.java index f7dc2773..944531f3 100644 --- a/src/main/java/com/spring/modules/sys/service/impl/ShiroServiceImpl.java +++ b/src/main/java/com/spring/modules/sys/service/impl/ShiroServiceImpl.java @@ -56,6 +56,17 @@ public class ShiroServiceImpl implements ShiroService { return permsSet; } + @Override + public List getAccessFieldByUserId(long userId){ + List result; + if(userId == Constant.SUPER_ADMIN){ + result=sysUserDao.selectAllField(); + }else { + result=sysUserDao.selectFieldByUserId(userId); + } + return result; + } + @Override public SysUserTokenEntity queryByToken(String token) { return sysUserTokenDao.queryByToken(token); diff --git a/src/main/resources/mapper/sys/SysUserDao.xml b/src/main/resources/mapper/sys/SysUserDao.xml index 36d02784..a324eec9 100644 --- a/src/main/resources/mapper/sys/SysUserDao.xml +++ b/src/main/resources/mapper/sys/SysUserDao.xml @@ -29,4 +29,11 @@ insert into AccessSite(UserID,Site) values (#{userID},#{site}) + + + \ No newline at end of file