From 762eba0553917215d158eac8575ac0437c3216a7 Mon Sep 17 00:00:00 2001 From: zxl <763096477@qq.com> Date: 星期四, 07 八月 2025 16:47:07 +0800 Subject: [PATCH] 订单敏感信息,以及导出权限控制 --- framework/src/main/java/cn/lili/modules/permission/serviceimpl/AdminUserServiceImpl.java | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/permission/serviceimpl/AdminUserServiceImpl.java b/framework/src/main/java/cn/lili/modules/permission/serviceimpl/AdminUserServiceImpl.java index c6f8e56..e774c00 100644 --- a/framework/src/main/java/cn/lili/modules/permission/serviceimpl/AdminUserServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/permission/serviceimpl/AdminUserServiceImpl.java @@ -11,6 +11,7 @@ import cn.lili.common.security.token.Token; import cn.lili.common.utils.BeanUtil; import cn.lili.common.utils.StringUtils; +import cn.lili.modules.lmk.enums.general.AdminRoleEnum; import cn.lili.modules.permission.entity.dos.AdminUser; import cn.lili.modules.permission.entity.dos.Department; import cn.lili.modules.permission.entity.dos.Role; @@ -163,7 +164,35 @@ public AdminUser findByUsername(String username) { return getOne(new LambdaQueryWrapper<AdminUser>().eq(AdminUser::getUsername, username), false); } + @Override + public AdminUser findByUserById(String id){ + return getOne(new LambdaQueryWrapper<AdminUser>().eq(AdminUser::getId,id).eq(AdminUser::getDeleteFlag,Boolean.FALSE),false); + } + @Override + public boolean havePermissionRole(AdminRoleEnum adminRoleEnum) { + AuthUser currentUser = UserContext.getCurrentUser(); + boolean orderInfoPermission = false; + if (currentUser != null) { + if (currentUser.getIsSuper()){ + orderInfoPermission = true; + }else { + if (StringUtils.isNotBlank(currentUser.getId())){ + AdminUser adminUser = this.findByUserById(currentUser.getId()); + String[] roleIds = adminUser.getRoleIds().split(","); + List<Role> list = roleService.findRoles(Arrays.asList(roleIds)); + for (Role item: list){ + if (adminRoleEnum.getValue().equals(item.getName())){ + orderInfoPermission = true; + break; + } + } + } + } + + } + return orderInfoPermission; + } @Override @SystemLogPoint(description = "淇敼绠$悊鍛�", customerLog = "'淇敼绠$悊鍛�:'+#adminUser.username") -- Gitblit v1.8.0