diff --git a/backend/src/main/java/com/yfd/platform/qgc_sys/mapcfg/service/impl/MapmoduleBServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_sys/mapcfg/service/impl/MapmoduleBServiceImpl.java index 1b7b5098..e9d40a86 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_sys/mapcfg/service/impl/MapmoduleBServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_sys/mapcfg/service/impl/MapmoduleBServiceImpl.java @@ -19,9 +19,12 @@ import com.yfd.platform.utils.SecurityUtils; import jakarta.annotation.Resource; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; /** @@ -131,8 +134,13 @@ public class MapmoduleBServiceImpl extends ServiceImpl layer = mapLayerBizService.getMapLayerTree( - mapmoduleB.getModuleId(), mapmoduleB.getSystemId(), templateId); + List layer; + if (hasCurrentUserModulePermission(mapmoduleB.getModuleId())) { + layer = mapLayerBizService.getMapLayerTree( + mapmoduleB.getModuleId(), mapmoduleB.getSystemId(), templateId); + } else { + layer = new ArrayList<>(); + } mapmoduleVo.setMapLayerVos(layer); // 2. 地图图例 @@ -180,4 +188,23 @@ public class MapmoduleBServiceImpl extends ServiceImpl userMenus = sysMenuMapper.selectMenuByUserId(userId, null); + if (userMenus == null || userMenus.isEmpty()) { + return false; + } + Set menuIds = userMenus.stream() + .map(SysMenu::getId) + .filter(StrUtil::isNotBlank) + .collect(Collectors.toCollection(HashSet::new)); + return menuIds.contains(moduleId); + } +}