From 2d3b575ed96eee7ccd5b324baa3135d2236934ac Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 13 十一月 2026 16:39:37 +0800
Subject: [PATCH] 【市一】1、登录服务问题处理 2、电话挂断问题处理 3、查询报错问题处理

---
 ruoyi-common/src/main/java/com/ruoyi/common/aspectj/SetOrgIdAspect.java |   38 +++++++++++++++++++++++++-------------
 1 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/aspectj/SetOrgIdAspect.java b/ruoyi-common/src/main/java/com/ruoyi/common/aspectj/SetOrgIdAspect.java
index 3a20a64..8fb88bc 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/aspectj/SetOrgIdAspect.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/aspectj/SetOrgIdAspect.java
@@ -42,12 +42,19 @@
             {
                 String orgid = loginUser.getUser().getOrgid();
                 String campusid = loginUser.getUser().getCampusid();
+                boolean allCampusUser = false;
                 //鏄剧ず鎵�鏈夐櫌鍖烘潈闄�
                 String allCampus = sysConfigService.selectConfigByKey("sys.authority.campus.all");
-                if(StringUtils.isNotEmpty(allCampus)){
-                    allCampus = "," + allCampus + ",";
-                    if (allCampus.contains("," + loginUser.getUser().getUserName() + ",")) {
-                        campusid = null;
+                if (StringUtils.isNotEmpty(allCampus)) {
+                    String userName = loginUser.getUser().getUserName();
+                    if (StringUtils.isNotEmpty(userName)) {
+                        for (String item : allCampus.split("[,锛�;锛沑\s]+")) {
+                            if (userName.equals(item.trim())) {
+                                campusid = null;
+                                allCampusUser = true;
+                                break;
+                            }
+                        }
                     }
                 }
                 
@@ -76,17 +83,22 @@
                         }
                         
                         // 濡傛灉闇�瑕佸悓鏃惰缃甤ampusid
-                        if (setOrgId.withCampusId() && campusid != null)
+                        if (setOrgId.withCampusId())
                         {
                             String campusFieldName = setOrgId.campusField();
-                            
-                            // 妫�鏌ュ瓧娈垫槸鍚﹀凡缁忔湁鍊硷紝濡傛灉鏈変笖skipIfPresent涓簍rue锛屽垯璺宠繃璁剧疆
-                            Object currentValueCampus = getFieldValue(param, campusFieldName);
-                            if (setOrgId.skipIfPresent() && currentValueCampus != null && !currentValueCampus.toString().isEmpty()) {
-                                // 濡傛灉瀛楁宸茬粡鏈夊�间笖skipIfPresent涓簍rue锛屽垯璺宠繃璁剧疆
-                                log.debug("瀛楁 {} 宸叉湁鍊�: {}锛岃烦杩囪缃�", campusFieldName, currentValueCampus);
-                            } else {
-                                setFieldValue(param, campusFieldName, campusid);
+                            if (allCampusUser) {
+                                // 鍏ㄩ櫌鍖烘潈闄愬繀椤昏鐩栬姹傞噷鍙兘甯﹁繘鏉ョ殑 campusid锛�
+                                // 鍚﹀垯鍓嶇浼� campusid=8 浼氶噸鏂版妸闄㈠尯鏉′欢鍔犲洖鍘汇��
+                                setFieldValue(param, campusFieldName, null);
+                            } else if (campusid != null) {
+                                // 妫�鏌ュ瓧娈垫槸鍚﹀凡缁忔湁鍊硷紝濡傛灉鏈変笖skipIfPresent涓簍rue锛屽垯璺宠繃璁剧疆
+                                Object currentValueCampus = getFieldValue(param, campusFieldName);
+                                if (setOrgId.skipIfPresent() && currentValueCampus != null && !currentValueCampus.toString().isEmpty()) {
+                                    // 濡傛灉瀛楁宸茬粡鏈夊�间笖skipIfPresent涓簍rue锛屽垯璺宠繃璁剧疆
+                                    log.debug("瀛楁 {} 宸叉湁鍊�: {}锛岃烦杩囪缃�", campusFieldName, currentValueCampus);
+                                } else {
+                                    setFieldValue(param, campusFieldName, campusid);
+                                }
                             }
                         }
                     }

--
Gitblit v1.9.3