diff --git a/fast-boot-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java b/fast-boot-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java index 50446ab..626988d 100644 --- a/fast-boot-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java +++ b/fast-boot-framework/src/main/java/net/maku/framework/common/service/impl/BaseServiceImpl.java @@ -47,15 +47,21 @@ public class BaseServiceImpl, T> extends ServiceImpl, T> extends ServiceImpl 0){ - sqlFilter.append(tableAlias).append("org_id"); + if(StringUtils.isBlank(orgIdAlias)){ + orgIdAlias = "org_id"; + } + sqlFilter.append(tableAlias).append(orgIdAlias); sqlFilter.append(" in(").append(StrUtil.join(",", dataScopeList)).append(")"); @@ -91,7 +100,7 @@ public class BaseServiceImpl, T> extends ServiceImpl queryWrapper) { - DataScope dataScope = getDataScope(null); + DataScope dataScope = getDataScope(null, null); if (dataScope != null){ queryWrapper.apply(dataScope.getSqlFilter()); } diff --git a/fast-boot-system/src/main/java/net/maku/security/service/FastUserDetailsService.java b/fast-boot-system/src/main/java/net/maku/security/service/FastUserDetailsService.java index e14da9a..af13946 100644 --- a/fast-boot-system/src/main/java/net/maku/security/service/FastUserDetailsService.java +++ b/fast-boot-system/src/main/java/net/maku/security/service/FastUserDetailsService.java @@ -90,6 +90,9 @@ public class FastUserDetailsService implements UserDetailsService { dataScopeList.addAll(sysRoleDataScopeDao.getDataScopeList(userDetail.getId())); return dataScopeList; + } else if (dataScope.equals(DataScopeEnum.CUSTOM.getValue())) { + // 自定义数据权限范围 + return sysRoleDataScopeDao.getDataScopeList(userDetail.getId()); } return new ArrayList<>(); diff --git a/fast-boot-system/src/main/java/net/maku/system/service/impl/SysOrgServiceImpl.java b/fast-boot-system/src/main/java/net/maku/system/service/impl/SysOrgServiceImpl.java index 7171b02..0b5f4be 100644 --- a/fast-boot-system/src/main/java/net/maku/system/service/impl/SysOrgServiceImpl.java +++ b/fast-boot-system/src/main/java/net/maku/system/service/impl/SysOrgServiceImpl.java @@ -36,7 +36,7 @@ public class SysOrgServiceImpl extends BaseServiceImpl Map params = new HashMap<>(); // 数据权限 - params.put(Constant.DATA_SCOPE, getDataScope("t1")); + params.put(Constant.DATA_SCOPE, getDataScope("t1", "id")); // 机构列表 List entityList = baseMapper.getList(params); diff --git a/fast-boot-system/src/main/java/net/maku/system/service/impl/SysRoleServiceImpl.java b/fast-boot-system/src/main/java/net/maku/system/service/impl/SysRoleServiceImpl.java index 8e1a514..31fb1d2 100644 --- a/fast-boot-system/src/main/java/net/maku/system/service/impl/SysRoleServiceImpl.java +++ b/fast-boot-system/src/main/java/net/maku/system/service/impl/SysRoleServiceImpl.java @@ -9,6 +9,7 @@ import net.maku.framework.common.service.impl.BaseServiceImpl; import net.maku.system.convert.SysRoleConvert; import net.maku.system.dao.SysRoleDao; import net.maku.system.entity.SysRoleEntity; +import net.maku.system.enums.DataScopeEnum; import net.maku.system.service.SysRoleDataScopeService; import net.maku.system.service.SysRoleMenuService; import net.maku.system.service.SysRoleService; @@ -62,6 +63,7 @@ public class SysRoleServiceImpl extends BaseServiceImpl and t3.type = #{type} @@ -23,9 +23,10 @@