From d49c2dbfbec7fef674e933e82a72a7d4aff1028c Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 26 五月 2026 14:10:57 +0800
Subject: [PATCH] 【丽水】超链接新增接口 工厂模式

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

diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index e77e553..0ea8666 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -1484,19 +1484,6 @@
                 #{key}
             </foreach>
         </if>
-        <if test="sendstates != null and sendstates.size() > 0">
-            AND sendstate IN
-            <foreach collection="sendstates" item="state" open="(" separator="," close=")">
-                #{state}
-            </foreach>
-        </if>
-        <if test="currentPreachform != null">
-            AND current_preachform = #{currentPreachform}
-        </if>
-        <if test="excep != null and excep != ''">
-            AND excep = #{excep}
-        </if>
-        AND sendstate IS NOT NULL
     </select>
     <select id="getSfStatisticsGroupKey" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
             resultType="String">
@@ -1560,6 +1547,134 @@
         </if>
     </select>
 
+    <select id="getSfStatisticsHyperlink" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
+            resultMap="ServiceSubtaskResult">
+            select id,
+            visit_count,
+            is_visit_again,
+            type,
+            orgid,
+            drcode,
+            drname,
+            leavehospitaldistrictcode,
+            leavehospitaldistrictname,
+            deptcode,
+            deptname,
+            sendstate,
+            preachform,
+            current_preachform,
+            excep,
+            nurse_id,
+            nurse_name,
+            taskid,
+            task_name,
+            visit_time,
+            finishtime,
+            endtime,
+            senddate,
+            suggest,
+            result,
+            templateid,
+            templatename,
+            patid,
+            sendname,
+            send_type,
+            recordid,
+            exrecallcount,
+            continue_flag,
+            continue_time_now,
+            continue_content,
+            continue_count,
+            continue_time_next,
+            task_situation
+            from service_subtask
+            where 1=1
+            and del_flag = 0
+            <if test="orgid != null and orgid != ''">
+                and orgid = #{orgid}
+            </if>
+            <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                AND leavehospitaldistrictcode IN
+                <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                         close=")">
+                    #{leavehospitaldistrictcode}
+                </foreach>
+            </if>
+            <if test="deptcodes != null and deptcodes.size() > 0">
+                AND deptcode IN
+                <foreach collection="deptcodes" item="deptcode" open="(" separator=","
+                         close=")">
+                    #{deptcode}
+                </foreach>
+            </if>
+            <if test="serviceType != null and serviceType.size() > 0">
+                AND service_type IN
+                <foreach collection="serviceType" item="serviceType" open="(" separator=","
+                         close=")">
+                    #{serviceType}
+                </foreach>
+            </if>
+            <if test="startTime != null and endTime!=null">
+                AND visit_time >= DATE(#{startTime})
+                AND visit_time &lt; DATE_ADD(DATE(#{endTime}), INTERVAL 1 DAY)
+            </if>
+            <if test="visitDeptCode != null">and visit_dept_code = #{visitDeptCode}</if>
+            <if test="visitDeptName != null">and visit_dept_name = #{visitDeptName}</if>
+            <if test="isabnormal != null">and isabnormal = #{isabnormal}</if>
+            <if test="continueFlag != null ">and continue_flag = #{continueFlag}</if>
+            <if test="continueTimeNow != null ">and continue_time_now = #{continueTimeNow,jdbcType=TIMESTAMP}</if>
+            <if test="continueCount != null ">and continue_count = #{continueCount}</if>
+            <if test="continueTimeNext != null ">and continue_time_next = #{continueTimeNext,jdbcType=TIMESTAMP}</if>
+            <!-- 鐩墠鍙粺璁¤闊冲拰闂嵎 -->
+            <if test="type != null">
+                and type = #{type}
+            </if>
+            <if test="visitCount != null and visitCount == 1">
+                AND visit_count = 1
+            </if>
+            <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 ${groupKey} IN
+                <foreach collection="groupKeyList" item="key" open="(" separator=","
+                         close=")">
+                    #{key}
+                </foreach>
+            </if>
+            AND sendstate IS NOT NULL
+            <if test="sendstates != null and sendstates.size() > 0">
+                AND sendstate IN
+                <foreach collection="sendstates" item="state" open="(" separator="," close=")">
+                    #{state}
+                </foreach>
+            </if>
+            <if test="currentPreachform != null">
+                AND current_preachform = #{currentPreachform}
+                <if test="followUpCountStyle != null and followUpCountStyle = '1'">
+                    AND sendstate != 4
+                </if>
+            </if>
+            <if test="excep != null and excep != ''">
+                AND excep = #{excep}
+            </if>
+            <if test="taskSituation != null">
+                AND task_situation = #{taskSituation}
+            </if>
+            <if test="drcode != null and drcode != ''">
+                AND drcode = #{drcode}
+            </if>
+            <if test="leavehospitaldistrictcode != null and leavehospitaldistrictcode != ''">
+                AND leavehospitaldistrictcode = #{leavehospitaldistrictcode}
+            </if>
+            <if test="deptcode != null and deptcode != ''">
+                AND deptcode = #{deptcode}
+            </if>
+            <if test="pageSize != null  and pageNum != null">
+                limit ${pageSize} OFFSET ${pageNum}
+            </if>
+    </select>
+
     <select id="getSfStatisticsJoy" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
             resultMap="ServiceSubtaskResult2">
         SELECT sub_id as subTaskId,COUNT(sub_id) joyCount,

--
Gitblit v1.9.3