From e31696f287e7137509dd46cf7764e70389092227 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期五, 10 七月 2026 14:35:54 +0800
Subject: [PATCH] 【丽水】查询条件不匹配drname

---
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 47 insertions(+), 0 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index 1c2ca15..99d91ff 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -2636,6 +2636,7 @@
         <if test="longSendTime != null">
             AND DATE_FORMAT(long_send_time,'%y%m%d') &lt;= DATE_FORMAT(#{longSendTime},'%y%m%d')
         </if>
+                       //
         <if test="deptOrDistrict == 1">
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND leavehospitaldistrictcode IN
@@ -2680,6 +2681,9 @@
         </if>
         <if test="visitCount != null and visitCount > 1">
             AND visit_count > 1
+        </if>
+        <if test="drname != null  and drname != ''">
+            AND drname like concat('%', #{drname}, '%')
         </if>
     </select>
 
@@ -2896,5 +2900,48 @@
         </choose>
     </select>
 
+    <select id="statQuestionOption" resultType="com.smartor.domain.ServiceSubtaskDetailRatioExport">
+        SELECT
+        d.questiontext AS questiontext,
+        t.taskid AS taskid,
+        d.asrtext AS optionresult,
+        COUNT(*) AS count,
+        CONCAT(ROUND(COUNT(*) * 100.0 / t2.total_count, 2), '%') AS ratio
+        FROM
+        service_task t
+        INNER JOIN service_subtask s ON s.taskid = t.taskid
+        INNER JOIN service_subtask_detail d ON d.sub_id = s.id
+        INNER JOIN (
+        SELECT
+        t.taskid,
+        d.questiontext,
+        COUNT(*) AS total_count
+        FROM
+        service_task t
+        INNER JOIN service_subtask s ON s.taskid = t.taskid
+        INNER JOIN service_subtask_detail d ON d.sub_id = s.id
+        WHERE t.taskid IN
+        <foreach collection="taskIds" item="taskId" open="(" separator="," close=")">
+            #{taskId}
+        </foreach>
+        and s.sendstate=6
+        GROUP BY
+        t.taskid,
+        d.questiontext
+        ) t2 ON t2.taskid = t.taskid AND t2.questiontext = d.questiontext
+        WHERE t.taskid IN
+        <foreach collection="taskIds" item="taskId" open="(" separator="," close=")">
+            #{taskId}
+        </foreach>
+        AND s.sendstate = 6
+        GROUP BY
+        t.taskid,
+        d.questiontext,
+        d.asrtext
+        ORDER BY
+        d.questiontext,
+        t.taskid
+    </select>
+
 </mapper>
 

--
Gitblit v1.9.3