From 34f78281cf395a24e1f3f1c3b861186ff8a03b7b Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 16 十月 2026 11:09:40 +0800
Subject: [PATCH] 出入院模块、门急诊模块、模块模块、宣教模块、其它模块

---
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskDetailMapper.xml |   52 ++++++++++++++++++++--------------------------------
 1 files changed, 20 insertions(+), 32 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskDetailMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskDetailMapper.xml
index 7054aae..6c48fbf 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskDetailMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskDetailMapper.xml
@@ -185,6 +185,24 @@
 
     </select>
 
+    <!--
+        寮傚父闂澶勭悊鎯呭喌鏌ヨ锛坱racedeallist锛夌殑銆屾湁鏁堝~鍐欐暟銆嶏細
+        鍘熸潵瀵规瘡涓� scriptid 閮芥墽琛屼竴娆� selectServiceSubtaskDetailList锛堟煡鍥炲叏閮ㄥ垪鍐嶅幓 size锛夛紝
+        涓�涓棶棰樹竴娆°�佽�屼笖鏁翠釜鎺ュ彛浼氳璋冪敤涓ら亶锛屽嚑鍗佷笂鐧句釜闂灏辨槸涓婄櫨娆″ぇ琛ㄦ壂鎻忥紱
+        杩欓噷鍚堝苟鎴愪竴鏉� group by銆�
+        娉ㄦ剰锛氫负涓庡師鍙e緞瀹屽叏涓�鑷达紝杩欓噷涓嶅姞 del_flag 鏉′欢锛堝師 selectServiceSubtaskDetailList
+        铏界劧 Java 閲� setDelFlag("0")锛屼絾 SQL 閲屽苟娌℃湁 del_flag 杩囨护锛夈��
+    -->
+    <select id="countDetailByScriptIds" resultType="java.util.Map">
+        select scriptid as scriptid, count(*) as cnt
+        from service_subtask_detail
+        where scriptid in
+        <foreach collection="scriptIds" item="scriptId" open="(" separator="," close=")">
+            #{scriptId}
+        </foreach>
+        group by scriptid
+    </select>
+
     <select id="getServiceSubtaskDetails" parameterType="com.smartor.domain.ServiceSubtaskDetailVO"
             resultType="java.util.HashMap">
         select
@@ -265,7 +283,7 @@
         <if test="questiontext != null">and questiontext = #{questiontext}</if>
     </select>
 
-    <select id="isExistServiceSubtaskDetail" resultType="com.smartor.domain.DTO.ServiceSubtaskDetailDTO">
+                <select id="isExistServiceSubtaskDetail" resultType="com.smartor.domain.DTO.ServiceSubtaskDetailDTO">
         select id, questiontext, matchedtext, score
         from service_subtask_detail
         where del_flag = 0
@@ -454,7 +472,6 @@
         where id = #{id}
     </update>
 
-
     <update id="updateSSDByCondition" parameterType="com.smartor.domain.ServiceSubtaskDetail">
         update service_subtask_detail
         <trim prefix="SET" suffixOverrides=",">
@@ -547,33 +564,4 @@
             service_subtask_detail.matchedtext
     </select>
 
-    <select id="selectRepeatDetailIds" resultType="Long">
-        SELECT d1.id
-        FROM service_subtask_detail d1
-        INNER JOIN (
-            SELECT sub_id, questiontext,
-                   MAX(create_time) AS max_create_time,
-                   MAX(id) AS keep_id
-            FROM service_subtask_detail
-            WHERE del_flag = 0
-            GROUP BY sub_id, questiontext
-            HAVING COUNT(*) &gt; 1
-        ) d2 ON d1.sub_id = d2.sub_id
-            AND d1.questiontext = d2.questiontext
-            AND (
-                d1.create_time &lt; d2.max_create_time
-                OR (d1.create_time = d2.max_create_time AND d1.id &lt; d2.keep_id)
-            )
-        WHERE d1.del_flag = 0
-    </select>
-
-    <update id="deleteRepeatDetailByIds">
-        UPDATE service_subtask_detail
-        SET del_flag = 1
-        WHERE del_flag = 0
-        AND id IN
-        <foreach collection="ids" item="id" open="(" separator="," close=")">
-            #{id}
-        </foreach>
-    </update>
-</mapper>
+        </mapper>

--
Gitblit v1.9.3