From 2d3c7bb2b88bdd09b209243fe07e756a8abeb030 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 05 六月 2026 14:12:07 +0800
Subject: [PATCH] 【丽水】随访统计全部

---
 smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java         |   10 ++++++++++
 smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java |    2 +-
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml            |   18 ++++++++++++++++--
 3 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
index 51efcc1..fbc41e7 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
@@ -266,6 +266,16 @@
     @ApiModelProperty(value = "绉戝鐥呭尯")
     private Integer statisticaltype;
 
+    @ApiModelProperty(value = "浠诲姟ID", required = true)
+    private Long taskId;
+
+    @Excel(name = "浠诲姟鍚嶇О")
+    @ApiModelProperty(value = "浠诲姟鍚嶇О")
+    private String taskName;
+
+    @ApiModelProperty(value = "鐤剧梾鐥呯")
+    private String diagType;
+
 
     @ApiModelProperty(value = "鍖荤敓缂栫爜")
     private String drcode;
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index 498598d..b4d9b1c 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -2557,7 +2557,7 @@
      * @return
      */
     @Override
-    @Cacheable(value = "specialSfStatistics", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#serviceSubtaskCountReq.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
+//    @Cacheable(value = "specialSfStatistics", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#serviceSubtaskCountReq.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
     public List<ServiceSubtaskStatistic> getSpecialSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq) {
         log.info("getSpecialSfStatistics鐨勫叆鍙備负锛歿}", serviceSubtaskCountReq);
         String groupKey = "drcode";
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index 57723af..b77ca33 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -122,6 +122,9 @@
     </resultMap>
 
     <resultMap type="com.smartor.domain.ServiceSubtaskStatistic" id="ServiceSubtaskStatisticResult">
+        <result property="taskName" column="task_name"/>
+        <result property="drcode" column="drcode"/>
+        <result property="drname" column="drname"/>
         <result property="dischargeCount" column="discharge_count"/>
         <result property="nonFollowUp" column="non_follow_up"/>
         <result property="filterCount" column="filter_count"/>
@@ -1508,7 +1511,13 @@
     <select id="getSpecialSfStatistics" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
             resultMap="ServiceSubtaskStatisticResult">
         select
-        a.task_name,
+        <if test="groupKey != null and groupKey == 'task_name'">
+            a.task_name,
+        </if>
+        <if test="groupKey != null and groupKey == 'drcode'">
+            b.drcode,
+            b.drname,
+        </if>
         COUNT(1) AS discharge_count,
         SUM(CASE WHEN b.sendstate = 4 THEN 1 ELSE 0 END) AS non_follow_up,
         SUM(CASE WHEN b.sendstate = 4 and b.task_situation = 6 THEN 1 ELSE 0 END) AS filter_count,
@@ -1607,7 +1616,12 @@
         <if test="visitCount != null and visitCount > 1">
             AND b.visit_count > 1
         </if>
-        GROUP BY a.task_name
+        <if test="groupKey != null and groupKey == 'task_name'">
+            GROUP BY a.task_name
+        </if>
+        <if test="groupKey != null and groupKey == 'drcode'">
+            GROUP BY b.drcode, b.drname
+        </if>
     </select>
 
     <select id="getSfStatisticsGroupKey" parameterType="com.smartor.domain.ServiceSubtaskCountReq"

--
Gitblit v1.9.3