From 601bb38a72ec10d43962cdcf1bd7b51835e8b011 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 18 一月 2024 18:32:45 +0800
Subject: [PATCH] 调整

---
 server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java b/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
index f290a33..6fbf47c 100644
--- a/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
+++ b/server/platform/src/main/java/com/doumee/shiro/ShiroRealm.java
@@ -4,9 +4,11 @@
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.CompanyPermission;
 import com.doumee.dao.system.model.SystemPermission;
 import com.doumee.dao.system.model.SystemRole;
 import com.doumee.dao.system.model.SystemUser;
+import com.doumee.service.business.CompanyPermissionService;
 import com.doumee.service.system.SystemDataPermissionService;
 import com.doumee.service.system.SystemPermissionService;
 import com.doumee.service.system.SystemRoleService;
@@ -23,6 +25,7 @@
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -39,6 +42,9 @@
     @Lazy
     @Autowired
     private SystemUserService systemUserService;
+    @Lazy
+    @Autowired
+    private CompanyPermissionService companyPermissionService;
 
     @Lazy
     @Autowired
@@ -88,6 +94,18 @@
         List<SystemRole> roles = systemRoleService.findByUserId(user.getId());
         List<SystemPermission> permissions = systemPermissionService.findByUserId(user.getId());
         LoginUserInfo userInfo = LoginUserInfo.from(user, roles, permissions);
+        CompanyPermission c = new CompanyPermission();
+        c.setUserId(user.getId());
+        c.setIsdeleted(Constants.ZERO);
+        List<CompanyPermission> pList = companyPermissionService.findList(c);
+        if(pList!=null){
+            for (CompanyPermission cc : pList){
+                if(user.getCompanyIdList() == null){
+                    user.setCompanyIdList(new ArrayList<>());
+                }
+                user.getCompanyIdList().add(cc.getCompanyId());
+            }
+        }
         // 楠岃瘉鐢ㄦ埛
         return new SimpleAuthenticationInfo(userInfo, user.getPassword(), this.getName());
     }

--
Gitblit v1.9.3