From cdd6551b190b981b807a3b95e9635c559ccc769d Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 19 五月 2025 09:45:07 +0800
Subject: [PATCH] git ch

---
 server/service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java b/server/service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
index 3b5aa86..1f9e5ef 100644
--- a/server/service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
+++ b/server/service/src/main/java/com/doumee/biz/system/impl/SystemMenuBizImpl.java
@@ -72,6 +72,8 @@
         List<SystemMenu> menuPool;
         if (currentMenu.getParentId() == null) {
             menuPool = systemMenuService.findRootList();
+            //2024骞�11鏈�16鏃�13:51:53 杩囨护鍚岀被鍨嬫暟鎹�
+            menuPool = menuPool.stream().filter(i->Constants.equalsInteger(i.getType(),currentMenu.getType())).collect(Collectors.toList());
         } else {
             SystemMenu queryDto = new SystemMenu();
             queryDto.setParentId(currentMenu.getParentId());
@@ -138,17 +140,20 @@
         List<SystemMenu> menus = new ArrayList<SystemMenu>();
         List<SystemMenuNodeVO> rootNodes = new ArrayList<>();
         menus = systemMenuService.findByUserId(userId,type);
-        if(type.equals(Constants.ONE)){
+        if(type.equals(Constants.ONE) || type.equals(Constants.TWO)){
             LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
             Company company = companyService.findById(loginUserInfo.getCompanyId());
             if(Objects.isNull(company)){
                 return rootNodes;
             }
-            SystemUser systemUser = systemUserService.findById(userId);
+            SystemUser dbUser = new SystemUser();
+            dbUser.setId(loginUserInfo.getId());
+            SystemUser systemUser = systemUserService.findOne(dbUser);
             if(Objects.isNull(systemUser)){
                 return rootNodes;
             }
-            if(company.getUsername().equals(systemUser.getUsername())){
+            if(company.getUsername().equals(systemUser.getUsername())
+            || (Constants.equalsInteger(type,Constants.ONE) && !Constants.equalsInteger(systemUser.getCompanyId(),company.getId()))){
                 SystemMenu systemMenu = new SystemMenu();
                 systemMenu.setType(type);
                 systemMenu.setDeleted(Boolean.FALSE);

--
Gitblit v1.9.3