From c111e3eff1191b29d2d2baf2f485a4bf3a2edc00 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期六, 16 八月 2025 14:34:07 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml |   52 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 46 insertions(+), 6 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
index 9c9ec38..3409748 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -743,30 +743,70 @@
     </select>
     <select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq"
             resultType="com.smartor.domain.PatMedRes">
+        SELECT SUM( rs ) AS rs,
+        SUM( rc ) AS rc
+        FROM (
         SELECT
         COUNT(1) AS rc,
-        COUNT(DISTINCT patid) AS rs
+        0 AS rs
         FROM
         pat_med_inhosp
         <where>
             del_flag=0
+            <if test="orgid != null">
+                AND orgid = #{orgid}
+            </if>
             <if test="zy != null">
                 and inhospstate=0
-                and TO_DATE(starttime,'YYYY-MM-DD') &gt;= TO_DATE(#{startDate},'YYYY-MM-DD')
-                and TO_DATE(starttime,'YYYY-MM-DD') &lt;= TO_DATE(#{endDate},'YYYY-MM-DD')
+                and starttime &gt;= #{startDate}
+                and starttime &gt;= #{endDate}
+                <if test="deptcodeList != null   and deptcodeList.size() > 0">
+                    and deptcode in
+                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+                        #{deptcode}
+                    </foreach>
+                </if>
             </if>
             <if test="cy != null">
                 and inhospstate=1
-                and TO_DATE(endtime,'YYYY-MM-DD') &gt;= TO_DATE(#{startDate},'YYYY-MM-DD')
-                and TO_DATE(endtime,'YYYY-MM-DD') &lt;= TO_DATE(#{endDate},'YYYY-MM-DD')
+                and endtime &gt;= #{startDate}
+                and endtime &lt;= #{endDate}
+                <if test="deptcodeList != null   and deptcodeList.size() > 0">
+                    and leaveldeptcode in
+                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+                        #{deptcode}
+                    </foreach>
+                </if>
             </if>
-            <if test="deptcodeList != null">
+
+        </where>
+        union all
+        select
+        0 AS rc,
+        count(1) AS rs
+        FROM
+        service_subtask
+        <where>
+            del_flag = 0
+            and service_type=2
+            <if test="orgid != null">
+                AND orgid = #{orgid}
+            </if>
+            <if test="startDate != null">
+                and visit_time &gt;= #{startDate}
+            </if>
+            <if test="endDate != null">
+                and visit_time &lt;= #{endDate}
+            </if>
+            <if test="deptcodeList != null   and deptcodeList.size() > 0">
                 and deptcode in
                 <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                     #{deptcode}
                 </foreach>
             </if>
         </where>
+        ) AS combined_data
+
     </select>
 
     <select id="selectEndtimeMax" resultType="java.util.Date">

--
Gitblit v1.9.3