From b25c3b5188e402695f3792ad7da53e452682cd80 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 12 十月 2026 19:43:07 +0800
Subject: [PATCH] 满意度统计BUG修改

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java |   41 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 39 insertions(+), 2 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index dbb20cd..20f6318 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -16,6 +16,7 @@
 import com.ruoyi.system.service.ISysConfigService;
 import com.ruoyi.system.service.ISysUserService;
 import com.ruoyi.common.core.service.IUserExtInfoService;
+import com.ruoyi.common.core.service.ISatisfactionCategoryService;
 import com.ruoyi.system.mapper.SysUserDeptMapper;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -74,6 +75,10 @@
 
     @Value("${isAdmin}")
     private List<Long> isAdmin;
+
+
+    @Value("${spring.profiles.active}")
+    private String active;
 
     /**
      * 鏍规嵁鏉′欢鍒嗛〉鏌ヨ鐢ㄦ埛鍒楄〃
@@ -310,9 +315,40 @@
             }
             sysUser.setBelongDepts(list);
             // 璁剧疆婊℃剰搴﹀垎绫伙紙璧扮紦瀛橈級
-            sysUser.setSatisfactionCategories(userExtInfoService.getSatisfactionCategories(sysUser.getOrgid()));
+            // 婊℃剰搴︽ā鍧楀寲鍚庯細涓嶅啀缁忕敱 smartor 鐨� IUserExtInfoService锛�
+            // 鏀逛负鎸� ruoyi-common 鐨� ISatisfactionCategoryService 鎺ュ彛鏌ユ壘瀹炵幇
+            // 锛堝疄鐜板湪 ruoyi-satisfaction锛岀敱甯搁┗闂ㄩ潰淇濊瘉"妯″潡鍏抽棴/缂哄け鏃惰繑鍥炵┖ Map"锛�
+            sysUser.setSatisfactionCategories(loadSatisfactionCategories(sysUser.getOrgid()));
         }
         return sysUser;
+    }
+
+    /**
+     * 瀹夊叏鍦拌幏鍙栨弧鎰忓害鍒嗙被銆�
+     * <p>
+     * 婊℃剰搴︽ā鍧楀彲浠ヨ閰嶇疆鍏抽棴锛坽@code sys_config} 鍙傛暟 {@code satisfaction.enabled=false}锛夛紝涔熷彲浠ユ暣浣撲笉鍦ㄤ緷璧栭噷锛�
+     * 杩欎袱绉嶆儏鍐典笅閮藉繀椤�<b>涓嶅奖鍝嶇櫥褰曚富娴佺▼</b>锛屽洜姝よ繖閲岋細
+     * <ul>
+     *   <li>瀹瑰櫒閲屾病鏈� {@code ISatisfactionCategoryService} 瀹炵幇鏃惰繑鍥炵┖ Map锛�</li>
+     *   <li>璋冪敤杩囩▼涓姏浠讳綍寮傚父涔熷彧璁版棩蹇楀苟杩斿洖绌� Map銆�</li>
+     * </ul>
+     *
+     * @param orgid 鏈烘瀯ID
+     * @return 婊℃剰搴﹀垎绫伙紱涓嶅彲鐢ㄦ椂杩斿洖绌� Map锛堜笉浼氳繑鍥� null锛�
+     */
+    private Map<String, Object> loadSatisfactionCategories(String orgid) {
+        try {
+            ISatisfactionCategoryService satisfactionCategoryService =
+                    SpringUtils.getBean(ISatisfactionCategoryService.class);
+            if (satisfactionCategoryService == null) {
+                return Collections.emptyMap();
+            }
+            Map<String, Object> categories = satisfactionCategoryService.getSatisfactionCategories(orgid);
+            return categories == null ? Collections.emptyMap() : categories;
+        } catch (Exception e) {
+            log.warn("鑾峰彇婊℃剰搴﹀垎绫诲け璐ワ紝宸查檷绾т负绌虹粨鏋滐紙涓嶅奖鍝嶇櫥褰曪級銆俹rgid={}", orgid, e);
+            return Collections.emptyMap();
+        }
     }
 
     /**
@@ -337,7 +373,8 @@
     @Override
     public SysUser selectUserByUserNameAndDeptId(String userName) {
         String[] split = userName.split("&");
-        if (split[2].contains("null")) {
+        //鍗楀崕闄勪竴涔熶笉楠岃瘉dept_id浜�
+        if (split[2].contains("null") || active.equals("nhfy")) {
             split[2] = null;
         }
         SysUser sysUser = userMapper.selectUserByUserNameByCondition(split[0], split[1], split[2]);

--
Gitblit v1.9.3