From aaf5c38b05b4a3f9291f0b1a7aadbf9dd2bb9066 Mon Sep 17 00:00:00 2001 From: chenbowen Date: Mon, 22 Dec 2025 17:30:25 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E4=B8=B4=E6=97=B6=E6=8E=92=E9=99=A4?= =?UTF-8?q?=E7=89=A9=E6=B5=81=E6=A8=A1=E5=9D=97=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusinessDataPermissionEntityScanner.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/zt-framework/zt-spring-boot-starter-biz-business/src/main/java/com/zt/plat/framework/business/framework/BusinessDataPermissionEntityScanner.java b/zt-framework/zt-spring-boot-starter-biz-business/src/main/java/com/zt/plat/framework/business/framework/BusinessDataPermissionEntityScanner.java index 93c306f5..b8cd3de9 100644 --- a/zt-framework/zt-spring-boot-starter-biz-business/src/main/java/com/zt/plat/framework/business/framework/BusinessDataPermissionEntityScanner.java +++ b/zt-framework/zt-spring-boot-starter-biz-business/src/main/java/com/zt/plat/framework/business/framework/BusinessDataPermissionEntityScanner.java @@ -28,6 +28,13 @@ import java.util.*; @Slf4j public class BusinessDataPermissionEntityScanner { + /** + * 临时排除的包前缀(物流模块 DO,不参与数据权限扫描) + */ + private static final Set EXCLUDED_PACKAGE_PREFIXES = Collections.unmodifiableSet( + new LinkedHashSet<>(Collections.singletonList("com.zt.plat.module.backendlogistics.dal.dataobject")) + ); + private final Set basePackages; private final ClassLoader classLoader; @@ -70,6 +77,9 @@ public class BusinessDataPermissionEntityScanner { if (!StringUtils.hasText(className)) { continue; } + if (isExcludedPackage(className)) { + continue; + } try { Class clazz = ClassUtils.forName(className, classLoader); if (clazz == BusinessBaseDO.class || !BusinessBaseDO.class.isAssignableFrom(clazz)) { @@ -92,6 +102,15 @@ public class BusinessDataPermissionEntityScanner { return new ArrayList<>(metadataMap.values()); } + private boolean isExcludedPackage(String className) { + for (String prefix : EXCLUDED_PACKAGE_PREFIXES) { + if (className.startsWith(prefix)) { + return true; + } + } + return false; + } + private EntityMetadata buildMetadata(Class entityClass) { String tableName = resolveTableName(entityClass); if (!StringUtils.hasText(tableName)) {