From 816c07ca2f94523a035791d74f0c956526f850de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Sat, 8 Feb 2025 19:19:48 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=B8=80=E4=BA=9B=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nflg/mobilebroken/gateway/StpInterfaceImpl.java | 5 +++++ .../mobilebroken/repository/service/IAdminApiService.java | 3 +++ .../repository/service/impl/AdminApiServiceImpl.java | 6 ++++++ 3 files changed, 14 insertions(+) diff --git a/nflg-mobilebroken-gateway/src/main/java/com/nflg/mobilebroken/gateway/StpInterfaceImpl.java b/nflg-mobilebroken-gateway/src/main/java/com/nflg/mobilebroken/gateway/StpInterfaceImpl.java index 6dbe8146..d15ca4d4 100644 --- a/nflg-mobilebroken-gateway/src/main/java/com/nflg/mobilebroken/gateway/StpInterfaceImpl.java +++ b/nflg-mobilebroken-gateway/src/main/java/com/nflg/mobilebroken/gateway/StpInterfaceImpl.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; import com.nflg.mobilebroken.common.util.AdminUserUtil; import com.nflg.mobilebroken.common.util.SaTokenAdminUtil; import com.nflg.mobilebroken.common.util.SaTokenAppUtil; +import com.nflg.mobilebroken.repository.service.IAdminApiService; import com.nflg.mobilebroken.repository.service.IAdminRoleService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -22,6 +23,9 @@ public class StpInterfaceImpl implements StpInterface { @Resource private IAdminRoleService adminRoleService; + @Resource + private IAdminApiService adminApiService; + @Override public List getPermissionList(Object loginId, String loginType) { if (StrUtil.equals(loginType, SaTokenAdminUtil.getLoginType())){ @@ -30,6 +34,7 @@ public class StpInterfaceImpl implements StpInterface { List roleCodes = (List) SaTokenAdminUtil.getExtra("roles"); urls = adminRoleService.getUrlsByRoleCodes(roleCodes); AdminUserUtil.setPermissions(urls); + urls.addAll(adminApiService.getPublics()); } return urls; } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IAdminApiService.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IAdminApiService.java index f935b3c8..49531c73 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IAdminApiService.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/IAdminApiService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.nflg.mobilebroken.common.pojo.vo.ApiVO; import com.nflg.mobilebroken.repository.entity.AdminApi; +import java.util.Collection; import java.util.List; /** @@ -17,4 +18,6 @@ import java.util.List; public interface IAdminApiService extends IService { List getAll(); + + Collection getPublics(); } diff --git a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/AdminApiServiceImpl.java b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/AdminApiServiceImpl.java index 87369e0b..d08c12b2 100644 --- a/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/AdminApiServiceImpl.java +++ b/nflg-mobilebroken-repository/src/main/java/com/nflg/mobilebroken/repository/service/impl/AdminApiServiceImpl.java @@ -9,6 +9,7 @@ import com.nflg.mobilebroken.repository.mapper.AdminApiMapper; import com.nflg.mobilebroken.repository.service.IAdminApiService; import org.springframework.stereotype.Service; +import java.util.Collection; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -35,4 +36,9 @@ public class AdminApiServiceImpl extends ServiceImpl i .setItems(Convert.toList(ApiItemVO.class, e.getValue()))) .collect(Collectors.toList()); } + + @Override + public Collection getPublics() { + return lambdaQuery().eq(AdminApi::getIsPublic, true).list().stream().map(AdminApi::getUrl).collect(Collectors.toList()); + } }