From 0d5d1f129d1c457b29372d3e878dc7263be148a1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com>
Date: Tue, 2 Sep 2025 11:25:44 +0800
Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../main/java/org/jeecg/modules/system/entity/SysRole.java | 4 ++++
.../org/jeecg/modules/system/mapper/xml/SysRoleMapper.xml | 3 +++
.../modules/system/service/impl/SysRoleServiceImpl.java | 6 ++++++
.../modules/system/service/impl/SysUserServiceImpl.java | 5 +++++
4 files changed, 18 insertions(+)
diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/entity/SysRole.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/entity/SysRole.java
index 6163123..a916d0b 100644
--- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/entity/SysRole.java
+++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/entity/SysRole.java
@@ -4,6 +4,7 @@ import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
+import com.baomidou.mybatisplus.annotation.TableField;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
@@ -80,4 +81,7 @@ public class SysRole implements Serializable {
/**租户ID*/
private java.lang.Integer tenantId;
+
+ @TableField(exist = false)
+ private String superId;
}
diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysRoleMapper.xml b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysRoleMapper.xml
index e046cff..1a6530a 100644
--- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysRoleMapper.xml
+++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysRoleMapper.xml
@@ -9,6 +9,9 @@
AND role_name like #{bindKeyword}
+
+ AND id != '1'
+
diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysRoleServiceImpl.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysRoleServiceImpl.java
index f7b4e46..8abab2b 100644
--- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysRoleServiceImpl.java
+++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysRoleServiceImpl.java
@@ -3,10 +3,12 @@ package org.jeecg.modules.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.constant.SymbolConstant;
import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.ImportExcelUtil;
import org.jeecg.modules.system.entity.SysRole;
import org.jeecg.modules.system.mapper.SysRoleMapper;
@@ -41,6 +43,10 @@ public class SysRoleServiceImpl extends ServiceImpl impl
@Override
public Page listAllSysRole(Page page, SysRole role) {
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ if(!sysUser.getId().equals("1")){
+ role.setSuperId("1");
+ }
return page.setRecords(sysRoleMapper.listAllSysRole(page,role));
}
diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
index f1fffee..8137813 100644
--- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
+++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
@@ -181,6 +181,11 @@ public class SysUserServiceImpl extends ServiceImpl impl
//TODO 外部模拟登陆临时账号,列表不显示
queryWrapper.ne("username", "_reserve_user_external");
+
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+ if(!sysUser.getId().equals("1")){
+ queryWrapper.ne("id", "1");
+ }
Page page = new Page(pageNo, pageSize);
IPage pageList = this.page(page, queryWrapper);