From c9f32be88ee865de8c38262b8bd83c9e80084e59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=98=BF=E6=B2=90?= Date: Tue, 25 Oct 2022 11:35:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/service/impl/BaseServiceImpl.java | 49 +++++++++++----------- .../framework/security/config/SecurityConfig.java | 2 +- 2 files changed, 26 insertions(+), 25 deletions(-) diff --git a/maku-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java b/maku-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java index 5d9b790..f98bdd5 100644 --- a/maku-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java +++ b/maku-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java @@ -23,20 +23,21 @@ import java.util.List; * * @author 阿沐 babamu@126.com */ -public class BaseServiceImpl, T> extends ServiceImpl implements BaseService { +public class BaseServiceImpl, T> extends ServiceImpl implements BaseService { /** * 获取分页对象 - * @param query 分页参数 + * + * @param query 分页参数 */ protected IPage getPage(Query query) { Page page = new Page<>(query.getPage(), query.getLimit()); // 排序 - if(StringUtils.isNotBlank(query.getOrder())){ - if(query.isAsc()) { + if (StringUtils.isNotBlank(query.getOrder())) { + if (query.isAsc()) { return page.addOrder(OrderItem.asc(query.getOrder())); - }else { + } else { return page.addOrder(OrderItem.desc(query.getOrder())); } } @@ -45,26 +46,37 @@ public class BaseServiceImpl, T> extends ServiceImpl queryWrapper) { + DataScope dataScope = getDataScope(null, null); + if (dataScope != null) { + queryWrapper.apply(dataScope.getSqlFilter()); + } + } + + /** * 原生SQL 数据权限 + * * @param tableAlias 表别名,多表关联时,需要填写表别名 * @param orgIdAlias 机构ID别名,null:表示org_id * @return 返回数据权限 */ - protected DataScope getDataScope(String tableAlias, String orgIdAlias) { + protected DataScope getDataScope(String tableAlias, String orgIdAlias) { UserDetail user = SecurityUser.getUser(); // 如果是超级管理员,则不进行数据过滤 - if(user.getSuperAdmin().equals(Constant.SUPER_ADMIN)) { + if (user.getSuperAdmin().equals(Constant.SUPER_ADMIN)) { return null; } // 如果为null,则设置成空字符串 - if(tableAlias == null){ + if (tableAlias == null) { tableAlias = ""; } // 获取表的别名 - if(StringUtils.isNotBlank(tableAlias)){ - tableAlias += "."; + if (StringUtils.isNotBlank(tableAlias)) { + tableAlias += "."; } StringBuilder sqlFilter = new StringBuilder(); @@ -73,12 +85,12 @@ public class BaseServiceImpl, T> extends ServiceImpl dataScopeList = user.getDataScopeList(); // 全部数据权限 - if (dataScopeList == null){ + if (dataScopeList == null) { return null; } // 数据过滤 - if(dataScopeList.size() > 0){ - if(StringUtils.isBlank(orgIdAlias)){ + if (dataScopeList.size() > 0) { + if (StringUtils.isBlank(orgIdAlias)) { orgIdAlias = "org_id"; } sqlFilter.append(tableAlias).append(orgIdAlias); @@ -95,15 +107,4 @@ public class BaseServiceImpl, T> extends ServiceImpl queryWrapper) { - DataScope dataScope = getDataScope(null, null); - if (dataScope != null){ - queryWrapper.apply(dataScope.getSqlFilter()); - } - } - } \ No newline at end of file diff --git a/maku-framework/src/main/java/net/maku/framework/security/config/SecurityConfig.java b/maku-framework/src/main/java/net/maku/framework/security/config/SecurityConfig.java index 4fac4b3..1f9fa73 100644 --- a/maku-framework/src/main/java/net/maku/framework/security/config/SecurityConfig.java +++ b/maku-framework/src/main/java/net/maku/framework/security/config/SecurityConfig.java @@ -72,7 +72,7 @@ public class SecurityConfig { } @Bean - SecurityFilterChain filterChain(HttpSecurity http) throws Exception { + SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { // 忽略授权的地址列表 List permitList = permitResource.getPermitList(); String[] permits = permitList.toArray(new String[0]);