From eb845e8be695ed1280a7cbf854a4d1dedf9db30d Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 30 十月 2026 15:02:55 +0800
Subject: [PATCH] 【丽水】/smartor/serviceSubtask/getSfStatisticsHyperlink 和 /smartor/serviceSubtask/getSfStatistics 统计的时候,对于 service_subtask.current_preachForm 为空的数据 当成 service_subtask.preachform 字符串的第一个执行方式、首次待随访全部(visitCount = 1 && sendstate in (1、2、3、7)) 区别于原先的待随访,这个是给市一使用的                                                                                                                                                                                            再次待随访全部(visitCount > 1 && sendstate in (1、2、3、7)) 区别于原先的待随访,这个是给市一使用的                                                                                                                                                                                            首次待随访待发送(visitCount = 1 && sendstate in (1、2))                                                                                                                                                                                            再次待随访待发送(visitCount > 1 && sendstate in (1、2))                                                                                                                                                                                            首次待随访已发送(visitCount = 1 && sendstate = in (3、7))                                                                                                                                                                                            再次待随访已发送(visitCount > 1 && sendstate = in (3、7))                                                                                                                                                                                            首次已发送(visitCount = 1 && sendstate = 3)                                                                                                                                                                                            再次已发送(visitCount > 1 && sendstate = 3)

---
 smartor/src/main/java/com/smartor/service/impl/UserExtInfoServiceImpl.java |   21 ++++++++++++++++++++-
 1 files changed, 20 insertions(+), 1 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/UserExtInfoServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/UserExtInfoServiceImpl.java
index 9bf78d7..4e4fdbf 100644
--- a/smartor/src/main/java/com/smartor/service/impl/UserExtInfoServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/UserExtInfoServiceImpl.java
@@ -1,6 +1,7 @@
 package com.smartor.service.impl;
 
 import com.ruoyi.common.core.service.IUserExtInfoService;
+import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.utils.StringUtils;
 import com.smartor.domain.IvrLibaScriptAssort;
 import com.smartor.domain.SvyLibScriptCategory;
@@ -16,6 +17,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.TimeUnit;
 
 /**
  * 鐢ㄦ埛鎵╁睍淇℃伅鏈嶅姟瀹炵幇锛坰martor 妯″潡锛�
@@ -23,6 +25,9 @@
  */
 @Service
 public class UserExtInfoServiceImpl implements IUserExtInfoService {
+
+    private static final String SATISFACTION_CACHE_KEY = "satisfaction:categories:";
+    private static final int SATISFACTION_CACHE_TTL = 30;
 
     @Autowired
     private SysUserOrgMapper sysUserOrgMapper;
@@ -32,6 +37,9 @@
 
     @Autowired
     private SvyLibScriptCategoryMapper svyLibScriptCategoryMapper;
+
+    @Autowired
+    private RedisCache redisCache;
 
     /**
      * 鑾峰彇鐢ㄦ埛鏈烘瀯/闄㈠尯淇℃伅
@@ -52,10 +60,18 @@
     }
 
     /**
-     * 鑾峰彇婊℃剰搴﹂棶棰樺垎绫伙紙璇煶 + 闂嵎锛�
+     * 鑾峰彇婊℃剰搴﹂棶棰樺垎绫伙紙璇煶 + 闂嵎锛夛紝甯edis缂撳瓨
      */
     @Override
+    @SuppressWarnings("unchecked")
     public Map<String, Object> getSatisfactionCategories(String orgid) {
+        // 鍏堟煡缂撳瓨
+        String cacheKey = SATISFACTION_CACHE_KEY + orgid;
+        Map<String, Object> cached = redisCache.getCacheObject(cacheKey);
+        if (cached != null) {
+            return cached;
+        }
+
         Map<String, Object> satisfactionCategories = new HashMap<>();
 
         // 鑾峰彇璇煶闂鍒嗙被
@@ -90,6 +106,9 @@
         }
         satisfactionCategories.put("questionnaireCategorys", questionnaireCategorys);
 
+        // 鍐欏叆缂撳瓨
+        redisCache.setCacheObject(cacheKey, satisfactionCategories, SATISFACTION_CACHE_TTL, TimeUnit.MINUTES);
+
         return satisfactionCategories;
     }
 }

--
Gitblit v1.9.3