From b5d55e1dd793c01f08786f805f01345bca64c893 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 03 十一月 2026 09:58:44 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-task/src/main/resources/mapper/task/ServiceSubtaskMapper.xml |  230 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 186 insertions(+), 44 deletions(-)

diff --git a/ruoyi-task/src/main/resources/mapper/task/ServiceSubtaskMapper.xml b/ruoyi-task/src/main/resources/mapper/task/ServiceSubtaskMapper.xml
index dc7c0b4..ea2743c 100644
--- a/ruoyi-task/src/main/resources/mapper/task/ServiceSubtaskMapper.xml
+++ b/ruoyi-task/src/main/resources/mapper/task/ServiceSubtaskMapper.xml
@@ -1861,9 +1861,17 @@
     <select id="getSfStatisticsGroupKey" parameterType="com.ruoyi.task.domain.ServiceSubtaskCountReq"
             resultType="String">
         select
-        <if test="groupKey != null and groupKey != ''">
-            ${groupKey} as groupKey
-        </if>
+        <choose>
+            <when test="groupColumn != null and groupColumn != ''">
+                ${groupColumn} as groupKey
+            </when>
+            <when test="groupKey != null and groupKey != ''">
+                ${groupKey} as groupKey
+            </when>
+            <otherwise>
+                NULL as groupKey
+            </otherwise>
+        </choose>
         from service_subtask
         where 1=1
         and del_flag = 0
@@ -1877,14 +1885,39 @@
              鍗楀崕婊℃剰搴﹀瓙浠诲姟鐨� leavehospitaldistrictcode 鏈� 83%锛�3236/3811锛変负 NULL锛�
              鍘熸潵銆岀瀹� AND 鐥呭尯銆嶄袱涓潯浠舵案杩滀笉鍙兘鍚屾椂鎴愮珛 鈫� 鏁村紶缁熻琛ㄧ┖銆�
              鍒ょ┖鏀捐鍙奖鍝嶇梾鍖轰负绌虹殑璁板綍锛屾湁鐥呭尯鐨勬暟鎹涓轰笉鍙樸�� -->
-        <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND (leavehospitaldistrictcode IS NULL OR leavehospitaldistrictcode IN
-            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                     close=")">
-                #{leavehospitaldistrictcode}
-            </foreach>
-            )
-        </if>
+        <choose>
+            <!-- 婊℃剰搴︾粺璁★紙getSfStatisticsScript锛夛細鏀圭敤鈥滄湁鏁堢梾鍖衡�濆垪锛�
+                 鍑洪櫌鐥呭尯涓虹┖鍒欏洖閫�鍒板湪闄㈢梾鍖恒�傜瓫閫夊洜姝ょ湡姝g敓鏁堬紝
+                 绌虹梾鍖虹殑璁板綍涔熶細褰掑埌瀹冪湡瀹炵殑鍦ㄩ櫌鐥呭尯锛岃�屼笉鏄贩杩涚敤鎴烽�変腑鐨勭梾鍖恒�� -->
+            <when test="districtColumn != null and districtColumn != ''">
+                <!-- 鍑洪櫌鐥呭尯涓虹┖鍥為��鍒板湪闄㈢梾鍖恒�傝繖閲屽埢鎰忓啓鎴� OR 灞曞紑鑰屼笉鏄� IFNULL(a,b) IN (...)锛�
+                     鍒楄鍑芥暟鍖呬綇灏辩敤涓嶄簡绱㈠紩锛�56 涓囪鏄庣粏琛ㄤ笂鏄叏琛ㄦ壂锛堝疄娴� 5.1s 鈫� 0.7s锛夈��
+                     涓や釜鍒嗘敮鍒嗗埆鍛戒腑 idx_ss_district_pair 鐨� (leave..., hospital...) 鍓嶇紑銆� -->
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    OR (leavehospitaldistrictcode IS NULL AND hospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    ))
+                </if>
+            </when>
+            <otherwise>
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IS NULL OR leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    )
+                </if>
+            </otherwise>
+        </choose>
         <if test="leaveldeptcodes != null and leaveldeptcodes.size() > 0">
             AND leaveldeptcode IN
             <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
@@ -1947,11 +1980,20 @@
         <if test="visitCount != null and visitCount > 1">
             AND visit_count > 1
         </if>
-        <if test="groupKey != null and groupKey != ''">
-            group by ${groupKey}
-        </if>
+        <choose>
+            <when test="groupColumn != null and groupColumn != ''">
+                group by ${groupColumn}
+                order by ${groupColumn}
+            </when>
+            <when test="groupKey != null and groupKey != ''">
+                group by ${groupKey}
+                order by ${groupKey}
+            </when>
+        </choose>
+        <!-- pageNum 鏄� 1 璧峰鐨勶紝OFFSET 蹇呴』鐢� (pageNum-1)*pageSize锛�
+             浠ュ墠鐩存帴鍐� OFFSET ${pageNum}锛岀涓�椤典細璺虫帀绗竴鏉″垎缁勩�� -->
         <if test="pageSize != null  and pageNum != null">
-            limit ${pageSize} OFFSET ${pageNum}
+            limit ${pageSize} OFFSET ${pageOffset}
         </if>
     </select>
 
@@ -1977,6 +2019,8 @@
     -->
     <resultMap type="com.ruoyi.task.domain.ServiceSubtaskStatistic" id="ServiceSubtaskScriptStatisticResult">
         <result property="groupCode" column="group_code"/>
+        <result property="groupName" column="group_name"/>
+        <result property="dischargeCount" column="discharge_count"/>
         <result property="firstVisitCount" column="first_visit_count"/>
         <result property="againVisitCount" column="again_visit_count"/>
         <result property="drcode" column="drcode"/>
@@ -2025,6 +2069,10 @@
             resultMap="ServiceSubtaskScriptStatisticResult">
         select
         IFNULL(${groupColumn}, 'Unknown') as group_code,
+        <!-- 鍒嗙粍閿搴旂殑鏄剧ず鍚嶏細鐥呭尯缁熻鏃跺氨鏄繖涓�缁勭殑鐥呭尯鍚嶃��
+             浠ュ墠杩欎竴鍒楁槸 MAX(hospitaldistrictname)锛屼竴涓粍娣蜂簡澶氫釜鐥呭尯鏃朵細闅忔満鏄剧ず鍏朵腑涓�涓紝
+             浜庢槸鍑虹幇鈥滈�夎娑插唴绉戠梾鍖哄嵈鏄剧ず楠ㄧ涓績涓夌梾鍖衡�濄�� -->
+        MAX(IFNULL(leavehospitaldistrictname, hospitaldistrictname)) as group_name,
         MAX(drcode) as drcode,
         MAX(drname) as drname,
         MAX(leaveldeptcode) as deptcode,
@@ -2056,7 +2104,10 @@
         SUM(CASE WHEN visit_count > 1 and sendstate is not null and current_preachform = '3' THEN 1 ELSE 0 END) as voice_again,
         SUM(CASE WHEN visit_count > 1 and sendstate is not null and current_preachform = '4' THEN 1 ELSE 0 END) as sms_again,
         SUM(CASE WHEN visit_count > 1 and sendstate is not null and current_preachform = '5' THEN 1 ELSE 0 END) as we_chat_again,
-        SUM(CASE WHEN visit_count > 1 and sendstate is not null and excep = '1' THEN 1 ELSE 0 END) as abnormal_again
+        SUM(CASE WHEN visit_count > 1 and sendstate is not null and excep = '1' THEN 1 ELSE 0 END) as abnormal_again,
+        <!-- 鍑洪櫌浜烘锛氬師鏉ョ殑鍐呭瓨瀹炵幇鏄� serviceSubtaskList.size()锛屽嵆鍒嗙粍鍐呭懡涓殑瀛愪换鍔℃潯鏁般��
+             鏀规垚鏈鍙ュ悗涓�鐩存病鏈夎仛鍚堣繖涓�鍒楋紝椤甸潰涓娾�滃嚭闄汉娆♀�濇亽涓� 0锛屼笌搴旈殢璁夸汉娆¤嚜鐩哥煕鐩俱�� -->
+        COUNT(*) as discharge_count
         from service_subtask
         where 1=1
         and del_flag = 0
@@ -2066,14 +2117,37 @@
         <if test="campusid != null and campusid != ''">
             and campusid = #{campusid}
         </if>
-        <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND (leavehospitaldistrictcode IS NULL OR leavehospitaldistrictcode IN
-            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                     close=")">
-                #{leavehospitaldistrictcode}
-            </foreach>
-            )
-        </if>
+        <choose>
+            <!-- 婊℃剰搴︾粺璁★細鏀圭敤鈥滄湁鏁堢梾鍖衡�濆垪锛堝嚭闄㈢梾鍖轰负绌哄洖閫�鍦ㄩ櫌鐥呭尯锛夛紝绛涢�夋墠鐪熸鐢熸晥 -->
+            <when test="districtColumn != null and districtColumn != ''">
+                <!-- 鍑洪櫌鐥呭尯涓虹┖鍥為��鍒板湪闄㈢梾鍖恒�傝繖閲屽埢鎰忓啓鎴� OR 灞曞紑鑰屼笉鏄� IFNULL(a,b) IN (...)锛�
+                     鍒楄鍑芥暟鍖呬綇灏辩敤涓嶄簡绱㈠紩锛�56 涓囪鏄庣粏琛ㄤ笂鏄叏琛ㄦ壂锛堝疄娴� 5.1s 鈫� 0.7s锛夈��
+                     涓や釜鍒嗘敮鍒嗗埆鍛戒腑 idx_ss_district_pair 鐨� (leave..., hospital...) 鍓嶇紑銆� -->
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    OR (leavehospitaldistrictcode IS NULL AND hospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    ))
+                </if>
+            </when>
+            <otherwise>
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IS NULL OR leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    )
+                </if>
+            </otherwise>
+        </choose>
         <if test="deptcodes != null and deptcodes.size() > 0">
             AND leaveldeptcode IN
             <foreach collection="deptcodes" item="deptcode" open="(" separator=","
@@ -2134,8 +2208,10 @@
         <if test="visitCount != null and visitCount > 1">
             AND visit_count > 1
         </if>
-        <if test="groupKey != null and groupKey != '' and groupKeyList != null and groupKeyList.size>0">
-            AND IFNULL(${groupKey}, 'Unknown') IN
+        <!-- 杩囨护鍒楀繀椤讳笌 GROUP BY 鐨勫垪涓�鑷达細閮界敤 groupColumn锛堟弧鎰忓害鐥呭尯缁熻鏃跺畠鏄�
+             IFNULL(鍑洪櫌鐥呭尯, 鍦ㄩ櫌鐥呭尯) 杩欐牱鐨勮〃杈惧紡锛夛紝鍚﹀垯鑱氬悎鍑烘潵鐨勫垎缁勯敭杩囨护涓嶄笂锛岄鐩噺浼氬叏鍙� 0銆� -->
+        <if test="groupColumn != null and groupColumn != '' and groupKeyList != null and groupKeyList.size>0">
+            AND IFNULL(${groupColumn}, 'Unknown') IN
             <foreach collection="groupKeyList" item="key" open="(" separator=","
                      close=")">
                 #{key}
@@ -2153,7 +2229,14 @@
     <select id="getSfStatisticsScriptJoySum" parameterType="com.ruoyi.task.domain.ServiceSubtaskCountReq"
             resultType="map">
         select
-        IFNULL(t.${groupColumn}, 'Unknown') as groupCode,
+        <choose>
+            <when test="districtColumn != null and districtColumn != ''">
+                IFNULL(${districtColumn}, 'Unknown') as groupCode,
+            </when>
+            <otherwise>
+                IFNULL(t.${groupColumn}, 'Unknown') as groupCode,
+            </otherwise>
+        </choose>
         SUM(CASE WHEN a.categoryid IN(${configValue})
         THEN 1 ELSE 0 END) as joyAllCount,
         SUM(CASE WHEN a.categoryid IN(${configValue})
@@ -2171,14 +2254,38 @@
         <if test="campusid != null and campusid != ''">
             and t.campusid = #{campusid}
         </if>
-        <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND (t.leavehospitaldistrictcode IS NULL OR t.leavehospitaldistrictcode IN
-            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                     close=")">
-                #{leavehospitaldistrictcode}
-            </foreach>
-            )
-        </if>
+        <choose>
+            <!-- 婊℃剰搴︾粺璁★細涓庤仛鍚堜富鏌ヨ涓�鑷达紝鐢ㄢ�滄湁鏁堢梾鍖衡�濆垪杩囨护锛�
+                 鍚﹀垯棰樼洰閲忎細鍜屼富鏌ヨ鐨勮瀵逛笉涓婏紙鍒嗙粍閿笉涓�鏍凤紝杩囨护涓嶄笂灏卞叏鍙� 0锛夈�� -->
+            <when test="districtColumn != null and districtColumn != ''">
+                <!-- 鍑洪櫌鐥呭尯涓虹┖鍥為��鍒板湪闄㈢梾鍖恒�傝繖閲屽埢鎰忓啓鎴� OR 灞曞紑鑰屼笉鏄� IFNULL(a,b) IN (...)锛�
+                     鍒楄鍑芥暟鍖呬綇灏辩敤涓嶄簡绱㈠紩锛�56 涓囪鏄庣粏琛ㄤ笂鏄叏琛ㄦ壂锛堝疄娴� 5.1s 鈫� 0.7s锛夈��
+                     涓や釜鍒嗘敮鍒嗗埆鍛戒腑 idx_ss_district_pair 鐨� (leave..., hospital...) 鍓嶇紑銆� -->
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    OR (leavehospitaldistrictcode IS NULL AND hospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    ))
+                </if>
+            </when>
+            <otherwise>
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (t.leavehospitaldistrictcode IS NULL OR t.leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                    )
+                </if>
+            </otherwise>
+        </choose>
         <if test="deptcodes != null and deptcodes.size() > 0">
             AND t.leaveldeptcode IN
             <foreach collection="deptcodes" item="deptcode" open="(" separator=","
@@ -2239,14 +2346,28 @@
         <if test="visitCount != null and visitCount > 1">
             AND t.visit_count > 1
         </if>
-        <if test="groupKey != null and groupKey != '' and groupKeyList != null and groupKeyList.size>0">
+        <if test="districtColumn != null and districtColumn != '' and groupKeyList != null and groupKeyList.size>0">
+            AND IFNULL(${districtColumn}, 'Unknown') IN
+            <foreach collection="groupKeyList" item="key" open="(" separator=","
+                     close=")">
+                #{key}
+            </foreach>
+        </if>
+        <if test="(districtColumn == null or districtColumn == '') and groupKey != null and groupKey != '' and groupKeyList != null and groupKeyList.size>0">
             AND IFNULL(t.${groupKey}, 'Unknown') IN
             <foreach collection="groupKeyList" item="key" open="(" separator=","
                      close=")">
                 #{key}
             </foreach>
         </if>
-        group by IFNULL(t.${groupColumn}, 'Unknown')
+        <choose>
+            <when test="districtColumn != null and districtColumn != ''">
+                group by IFNULL(${districtColumn}, 'Unknown')
+            </when>
+            <otherwise>
+                group by IFNULL(t.${groupColumn}, 'Unknown')
+            </otherwise>
+        </choose>
     </select>
 
     <select id="getSfStatisticsHyperlink" parameterType="com.ruoyi.task.domain.ServiceSubtaskCountReq"
@@ -2300,13 +2421,20 @@
             and campusid = #{campusid}
         </if>
         <!-- 2026-10-21锛氱梾鍖轰负绌烘椂瑙嗕负"涓嶉檺"锛堝崡鍗庢弧鎰忓害 83% 瀛愪换鍔℃棤鐥呭尯锛夛紝鏈夌梾鍖虹殑鏁版嵁琛屼负涓嶅彉 -->
+        <!-- 涓� getSfStatisticsScript 鐨勬眹鎬昏淇濇寔涓�鑷达細鍑洪櫌鐥呭尯涓虹┖鍒欏洖閫�鍒板湪闄㈢梾鍖猴紝
+             鍚﹀垯鐐光�滄煡鐪嬭鎯呪�濇煡鍑烘潵鐨勬潯鏁颁細鍜屾眹鎬昏鐨勬暟瀛楀涓嶄笂銆� -->
         <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND (leavehospitaldistrictcode IS NULL OR leavehospitaldistrictcode IN
+            AND (leavehospitaldistrictcode IN
             <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
                      close=")">
                 #{leavehospitaldistrictcode}
             </foreach>
-            )
+            OR (leavehospitaldistrictcode IS NULL AND hospitaldistrictcode IN
+            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                     close=")">
+                #{leavehospitaldistrictcode}
+            </foreach>
+            ))
         </if>
         <if test="deptcodes != null and deptcodes.size() > 0">
             AND leaveldeptcode IN
@@ -2637,11 +2765,17 @@
             AND ss.campusid = #{campusid}
         </if>
         <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND ss.leavehospitaldistrictcode IN
+            AND (ss.leavehospitaldistrictcode IN
             <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
                      close=")">
                 #{leavehospitaldistrictcode}
             </foreach>
+            OR (ss.leavehospitaldistrictcode IS NULL AND ss.hospitaldistrictcode IN
+            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                     close=")">
+                #{leavehospitaldistrictcode}
+            </foreach>
+            ))
         </if>
         <if test="deptcodes != null and deptcodes.size() > 0">
             AND ss.leaveldeptcode IN
@@ -2719,11 +2853,17 @@
             and ss.campusid = #{campusid}
         </if>
         <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-            AND ss.leavehospitaldistrictcode IN
+            AND (ss.leavehospitaldistrictcode IN
             <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
                      close=")">
                 #{leavehospitaldistrictcode}
             </foreach>
+            OR (ss.leavehospitaldistrictcode IS NULL AND ss.hospitaldistrictcode IN
+            <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                     close=")">
+                #{leavehospitaldistrictcode}
+            </foreach>
+            ))
         </if>
         <if test="deptcodes != null and deptcodes.size() > 0">
             AND ss.leaveldeptcode IN
@@ -3085,7 +3225,7 @@
         SUM(CASE WHEN sendstate = 1 THEN 1 ELSE 0 END) AS blq,
         SUM(CASE WHEN sendstate = 4 THEN 1 ELSE 0 END) AS wxsf,
         SUM(CASE WHEN sendstate != 4 THEN 1 ELSE 0 END) AS xsf,
-        SUM(CASE WHEN (sendstate = 1 OR sendstate = 2 OR sendstate = 3 OR sendstate = 5 OR sendstate = 7 ) THEN 1 ELSE 0
+        SUM(CASE WHEN (sendstate = 1 OR sendstate = 2 OR sendstate = 3 OR sendstate = 7 ) THEN 1 ELSE 0
         END) AS dsf,
         SUM(CASE WHEN sendstate != 2 THEN 1 ELSE 0 END) AS yfs,
         SUM(CASE WHEN sendstate = 2 THEN 1 ELSE 0 END) AS wfs,
@@ -3282,7 +3422,8 @@
         褰撳墠鐧诲綍浜恒�屽緟澶勭悊銆嶉殢璁夸换鍔★紝鎸夊嚭闄㈠勾鏈堬紙endtime锛夊垎缁勭粺璁★紝鍑洪櫌闅忚 / 闂ㄨ瘖闅忚鍒嗗紑璁℃暟銆�
         鍙e緞锛堜笌闅忚鍒楄〃銆屽緟闅忚銆嶉〉绛句竴鑷达級锛�
           1) 鍑洪櫌闅忚 service_type = '2'锛岄棬璇婇殢璁� service_type = '3'
-          2) 寰呴殢璁匡紙鏈畬鎴愶級鈫� sendstate IN (1,2,3,5,7)锛屾帓闄� 4 涓嶆墽琛� / 6 瀹屾垚
+          2) 缁熻鐘舵�� 鈫� sendstate IN (1,2,3,7)锛�1 琚鍙� / 2 寰呭彂閫� / 3 宸插彂閫� / 7 瓒呮椂
+             锛堜笉鍚� 4 涓嶆墽琛屻��5 鍙戦�佸け璐ャ��6 宸插畬鎴愶級
           3) 鍑洪櫌婊� 7 澶� 鈫� endtime < (浠婂ぉ - 7 澶�) + 1 澶╋紝
              鍗炽��7 澶╁墠閭d竴澶┿�嶅嚭闄㈢殑涔熻鍏ワ紙鐢� <= DATE_SUB(...) 鍙細鎴埌褰撳ぉ 0 鐐癸紝浼氭紡鎺� 9 鏉★級
           4) 鍙湅鏈�杩� 4 涓嚭闄㈡湀浠斤紙鍚綋鏈堬級鈫� endtime >= 褰撴湀寰�鍓嶆帹 3 涓湀鐨� 1 鍙�
@@ -3302,7 +3443,8 @@
         FROM service_subtask
         WHERE del_flag = '0'
         AND service_type IN ('2', '3')
-        AND sendstate IN (1, 2, 3, 5, 7)
+        <!-- 娴獥銆屽緟澶勭悊闅忚浠诲姟銆嶅彛寰勶細1 琚鍙� / 2 寰呭彂閫� / 3 宸插彂閫� / 7 瓒呮椂 -->
+        AND sendstate IN (1, 2, 3, 7)
         AND endtime IS NOT NULL
         AND endtime &lt; DATE_ADD(DATE_SUB(CURDATE(), INTERVAL 7 DAY), INTERVAL 1 DAY)
         AND endtime &gt;= DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 3 MONTH), '%Y-%m-01')

--
Gitblit v1.9.3