From 1b998cdf41ac4f1e4fec4d9bf076d7da700619c4 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 07 五月 2026 17:41:18 +0800
Subject: [PATCH] 【市一】短信标题调整

---
 smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml |  165 +++++++++++++++++++++++++++++++++---------------------
 1 files changed, 101 insertions(+), 64 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
index 24f8484..b71c096 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -48,6 +48,8 @@
         <result property="patno" column="patno"/>
         <result property="inhospstate" column="inhospstate"/>
         <result property="deptcheckFlag" column="deptcheck_flag"/>
+        <result property="inWardcheckFlag" column="in_wardcheck_flag"/>
+        <result property="inDeptcheckFlag" column="in_deptcheck_flag"/>
         <result property="wardcheckFlag" column="wardcheck_flag"/>
         <result property="diagcheckFlag" column="diagcheck_flag"/>
         <result property="age" column="age"/>
@@ -98,6 +100,8 @@
                nurse_name,
                deptcheck_flag,
                wardcheck_flag,
+               in_deptcheck_flag,
+               in_wardcheck_flag,
                diagcheck_flag,
                inhospstate,
                patno,
@@ -157,6 +161,8 @@
         b.out_way_name,
         b.deptcheck_flag,
         b.wardcheck_flag,
+        b.in_deptcheck_flag,
+        b.in_wardcheck_flag,
         b.diagcheck_flag,
         b.inhospstate,
         b.patno,
@@ -248,6 +254,8 @@
         <if test="nurseName != null and nurseName != ''">and b.nurse_name = #{nurseName}</if>
         <if test="deptcheckFlag != null ">and b.deptcheck_flag = #{deptcheckFlag}</if>
         <if test="wardcheckFlag != null ">and b.wardcheck_flag = #{wardcheckFlag}</if>
+        <if test="inDeptcheckFlag != null ">and b.in_deptcheck_flag = #{inDeptcheckFlag}</if>
+        <if test="inWardcheckFlag != null ">and b.in_wardcheck_flag = #{inWardcheckFlag}</if>
         <if test="diagcheckFlag != null ">and b.diagcheck_flag = #{diagcheckFlag}</if>
         <if test="cry != null and cry == 0 ">and b.endtime is null</if>
         <if test="cry != null and cry == 1 ">and b.inhospstate=1</if>
@@ -280,11 +288,26 @@
                 #{leavehospitaldistrictcode}
             </foreach>
         </if>
+
+        <if test="hospitaldistrictcodeList != null and hospitaldistrictcodeList.size()>0">
+            AND b.hospitaldistrictcode IN
+            <foreach collection="hospitaldistrictcodeList" item="hospitaldistrictcode" open="(" separator=","
+                     close=")">
+                #{hospitaldistrictcode}
+            </foreach>
+        </if>
         <if test="leaveldeptcodes != null and leaveldeptcodes.size()>0">
             AND b.leaveldeptcode IN
             <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
                      close=")">
                 #{leaveldeptcode}
+            </foreach>
+        </if>
+        <if test="deptcodeList != null and deptcodeList.size()>0">
+            AND b.deptcode IN
+            <foreach collection="deptcodeList" item="deptcode" open="(" separator=","
+                     close=")">
+                #{deptcode}
             </foreach>
         </if>
         GROUP BY
@@ -316,6 +339,8 @@
         b.out_way_name,
         b.deptcheck_flag,
         b.wardcheck_flag,
+        b.in_deptcheck_flag,
+        b.in_wardcheck_flag,
         b.diagcheck_flag,
         b.inhospstate,
         b.patno,
@@ -394,8 +419,9 @@
         b.nurse_id,
         b.nurse_name,
         b.deptcheck_flag,
-        b.diagcheck_flag,
         b.wardcheck_flag,
+        b.in_deptcheck_flag,
+        b.in_wardcheck_flag,
         b.inhospstate,
         b.patno,
         b.inhospno,
@@ -474,6 +500,8 @@
         <if test="diagcheckFlag != null ">and b.diagcheck_flag = #{diagcheckFlag}</if>
         <if test="deptcheckFlag != null ">and b.deptcheck_flag = #{deptcheckFlag}</if>
         <if test="wardcheckFlag != null ">and b.wardcheck_flag = #{wardcheckFlag}</if>
+        <if test="inDeptcheckFlag != null ">and b.in_deptcheck_flag = #{inDeptcheckFlag}</if>
+        <if test="inWardcheckFlag != null ">and b.in_wardcheck_flag = #{inWardcheckFlag}</if>
         <if test="inhospstate != null ">and b.inhospstate = #{inhospstate}</if>
         <if test="schemestatus != null ">and b.schemestatus = #{schemestatus}</if>
         <if test="leavediagname != null  and leavediagname != ''">and b.leavediagname like concat('%',
@@ -558,6 +586,9 @@
         <if test="inhospstate != null">and inhospstate = #{inhospstate}</if>
         <if test="deptcheckFlag != null">and deptcheck_flag = #{deptcheckFlag}</if>
         <if test="wardcheckFlag != null">and wardcheck_flag = #{wardcheckFlag}</if>
+        <if test="inDeptcheckFlag != null">and in_deptcheck_flag = #{inDeptcheckFlag}</if>
+        <if test="inWardcheckFlag != null">and in_wardcheck_flag = #{inWardcheckFlag}</if>
+        <if test="wardcheckFlag != null">and wardcheck_flag = #{wardcheckFlag}</if>
         <if test="diagcheckFlag != null">and diagcheck_flag = #{diagcheckFlag}</if>
         <if test="longTaskReason != null">and long_task_reason = #{longTaskReason}</if>
         <if test="nurseId != null ">and nurse_id = #{nurseId}</if>
@@ -627,6 +658,8 @@
             <if test="inhospstate != null">inhospstate,</if>
             <if test="deptcheckFlag != null">deptcheck_flag,</if>
             <if test="wardcheckFlag != null">wardcheck_flag,</if>
+            <if test="inDeptcheckFlag != null">in_deptcheck_flag,</if>
+            <if test="inWardcheckFlag != null">in_wardcheck_flag,</if>
             <if test="diagcheckFlag != null">diagcheck_flag,</if>
             <if test="longTaskReason != null">long_task_reason,</if>
             <if test="nurseId != null ">nurse_id,</if>
@@ -692,6 +725,8 @@
             <if test="inhospstate != null">#{inhospstate},</if>
             <if test="deptcheckFlag != null">#{deptcheckFlag},</if>
             <if test="wardcheckFlag != null">#{wardcheckFlag},</if>
+            <if test="inDeptcheckFlag != null">#{inDeptcheckFlag},</if>
+            <if test="inWardcheckFlag != null">#{inWardcheckFlag},</if>
             <if test="diagcheckFlag != null">#{diagcheckFlag},</if>
             <if test="longTaskReason != null">#{longTaskReason},</if>
             <if test="nurseId != null ">#{nurseId},</if>
@@ -727,7 +762,7 @@
         schemestatus, generalschemestatus, leaveldeptcode, leaveldeptname, hospitaldistrictid,
         leavehospitaldistrictcode, leavehospitaldistrictname, leavehospitaldistrictid,
         deptid, leaveldeptid, schemetime, patname, patno, inhospstate,
-        deptcheck_flag, wardcheck_flag, diagcheck_flag, long_task_reason,
+        deptcheck_flag, wardcheck_flag,in_deptcheck_flag, in_wardcheck_flag, diagcheck_flag, long_task_reason,
         nurse_id, nurse_name, out_way_id, out_way_name, guid,
         operator, operator_id, inhospno, remark,
         fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor,
@@ -749,7 +784,7 @@
             #{item.leavehospitaldistrictcode}, #{item.leavehospitaldistrictname}, #{item.leavehospitaldistrictid},
             #{item.deptid}, #{item.leaveldeptid}, #{item.schemetime}, #{item.patname}, #{item.patno},
             #{item.inhospstate},
-            #{item.deptcheckFlag}, #{item.wardcheckFlag}, #{item.diagcheckFlag}, #{item.longTaskReason},
+            #{item.deptcheckFlag}, #{item.wardcheckFlag},#{item.inDeptcheckFlag}, #{item.inWardcheckFlag}, #{item.diagcheckFlag}, #{item.longTaskReason},
             #{item.nurseId}, #{item.nurseName}, #{item.outWayId}, #{item.outWayName}, #{item.guid},
             #{item.operator}, #{item.operatorId}, #{item.inhospno}, #{item.remark},
             #{item.fuflag}, #{item.fudate}, #{item.fuperiod}, #{item.futypecode}, #{item.futypedesc}, #{item.fuadvice},
@@ -804,6 +839,8 @@
             <if test="inhospstate != null">inhospstate = #{inhospstate},</if>
             <if test="deptcheckFlag != null">deptcheck_flag = #{deptcheckFlag},</if>
             <if test="wardcheckFlag != null">wardcheck_flag = #{wardcheckFlag},</if>
+            <if test="inDeptcheckFlag != null">in_deptcheck_flag = #{inDeptcheckFlag},</if>
+            <if test="inWardcheckFlag != null">in_wardcheck_flag = #{inWardcheckFlag},</if>
             <if test="diagcheckFlag != null">diagcheck_flag = #{diagcheckFlag},</if>
             <if test="longTaskReason != null">long_task_reason = #{longTaskReason},</if>
             <if test="nurseId != null ">nurse_id = #{nurseId},</if>
@@ -855,73 +892,73 @@
     <select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq"
             resultType="com.smartor.domain.PatMedRes">
         SELECT SUM(rc) AS rc,
-               SUM(rs) AS rs,
-               SUM(scsf) AS scsf,
-               SUM(zcsf) AS zcsf,
-               SUM(zbsf) AS zbsf
+        SUM(rs) AS rs,
+        SUM(scsf) AS scsf,
+        SUM(zcsf) AS zcsf,
+        SUM(zbsf) AS zbsf
         FROM (
-            <!-- 鍑洪櫌浜烘锛氬幓鎺� date_format 鍖呰锛屼娇鏃ユ湡瀛楁绱㈠紩鐢熸晥 -->
-            SELECT
-                COUNT(1) AS rc,
-                0 AS rs,
-                0 AS scsf,
-                0 AS zcsf,
-                0 AS zbsf
-            FROM pat_med_inhosp
-            JOIN pat_archive ON pat_archive.id = pat_med_inhosp.patid
-            WHERE pat_med_inhosp.del_flag = 0
-            <if test="orgid != null and orgid != ''">
-                AND pat_med_inhosp.orgid = #{orgid}
-            </if>
-            AND pat_archive.idcardno IS NOT NULL
-            <if test="zy != null">
-                AND pat_med_inhosp.inhospstate = 0
-                AND pat_med_inhosp.starttime &gt;= #{startDate}
-                AND pat_med_inhosp.starttime &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
-                <if test="deptcodeList != null and deptcodeList.size() > 0">
-                    AND pat_med_inhosp.deptcode IN
-                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
-                        #{deptcode}
-                    </foreach>
-                </if>
-            </if>
-            <if test="cy != null">
-                AND pat_med_inhosp.inhospstate = 1
-                AND pat_med_inhosp.endtime &gt;= #{startDate}
-                AND pat_med_inhosp.endtime &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
-                <if test="deptcodeList != null and deptcodeList.size() > 0">
-                    AND pat_med_inhosp.leaveldeptcode IN
-                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
-                        #{deptcode}
-                    </foreach>
-                </if>
-            </if>
-            UNION ALL
-            <!-- 闅忚鏈嶅姟/棣栨/鍐嶆/涓撶梾闅忚锛氬悎骞朵负鍗曟鎵弿锛岀敤鏉′欢鑱氬悎浠f浛4涓� UNION ALL -->
-            SELECT
-                0 AS rc,
-                COUNT(1) AS rs,
-                SUM(CASE WHEN service_type = 2 AND visit_count = 1 THEN 1 ELSE 0 END) AS scsf,
-                SUM(CASE WHEN service_type = 2 AND visit_count > 1  THEN 1 ELSE 0 END) AS zcsf,
-                SUM(CASE WHEN service_type = 13                      THEN 1 ELSE 0 END) AS zbsf
-            FROM service_subtask
-            WHERE del_flag = 0
-            AND service_type IN (2, 13)
-            <if test="orgid != null and orgid != ''">
-                AND orgid = #{orgid}
-            </if>
-            <if test="startDate != null">
-                AND visit_time &gt;= #{startDate}
-            </if>
-            <if test="endDate != null">
-                AND visit_time &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
-            </if>
+        <!-- 鍑洪櫌浜烘锛氬幓鎺� date_format 鍖呰锛屼娇鏃ユ湡瀛楁绱㈠紩鐢熸晥 -->
+        SELECT
+        COUNT(1) AS rc,
+        0 AS rs,
+        0 AS scsf,
+        0 AS zcsf,
+        0 AS zbsf
+        FROM pat_med_inhosp
+        JOIN pat_archive ON pat_archive.id = pat_med_inhosp.patid
+        WHERE pat_med_inhosp.del_flag = 0
+        <if test="orgid != null and orgid != ''">
+            AND pat_med_inhosp.orgid = #{orgid}
+        </if>
+        AND pat_archive.idcardno IS NOT NULL
+        <if test="zy != null">
+            AND pat_med_inhosp.inhospstate = 0
+            AND pat_med_inhosp.starttime &gt;= #{startDate}
+            AND pat_med_inhosp.starttime &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
             <if test="deptcodeList != null and deptcodeList.size() > 0">
-                AND deptcode IN
+                AND pat_med_inhosp.deptcode IN
                 <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                     #{deptcode}
                 </foreach>
             </if>
+        </if>
+        <if test="cy != null">
+            AND pat_med_inhosp.inhospstate = 1
+            AND pat_med_inhosp.endtime &gt;= #{startDate}
+            AND pat_med_inhosp.endtime &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
+            <if test="deptcodeList != null and deptcodeList.size() > 0">
+                AND pat_med_inhosp.leaveldeptcode IN
+                <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+                    #{deptcode}
+                </foreach>
+            </if>
+        </if>
+        UNION ALL
+        <!-- 闅忚鏈嶅姟/棣栨/鍐嶆/涓撶梾闅忚锛氬悎骞朵负鍗曟鎵弿锛岀敤鏉′欢鑱氬悎浠f浛4涓� UNION ALL -->
+        SELECT
+        0 AS rc,
+        COUNT(1) AS rs,
+        SUM(CASE WHEN service_type = 2 AND visit_count = 1 THEN 1 ELSE 0 END) AS scsf,
+        SUM(CASE WHEN service_type = 2 AND visit_count > 1 THEN 1 ELSE 0 END) AS zcsf,
+        SUM(CASE WHEN service_type = 13 THEN 1 ELSE 0 END) AS zbsf
+        FROM service_subtask
+        WHERE del_flag = 0
+        AND service_type IN (2, 13)
+        <if test="orgid != null and orgid != ''">
+            AND orgid = #{orgid}
+        </if>
+        <if test="startDate != null">
+            AND visit_time &gt;= #{startDate}
+        </if>
+        <if test="endDate != null">
+            AND visit_time &lt; DATE_ADD(#{endDate}, INTERVAL 1 DAY)
+        </if>
+        <if test="deptcodeList != null and deptcodeList.size() > 0">
+            AND deptcode IN
+            <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+                #{deptcode}
+            </foreach>
+        </if>
         ) AS combined_data
     </select>
 

--
Gitblit v1.9.3