From da026a34bcc97b2eb49607a3b02d94d8f683f997 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 07 一月 2026 16:18:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml | 393 +++++++++++++++++++++++++++++++++++--------------------
1 files changed, 250 insertions(+), 143 deletions(-)
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
index 5682971..5e0594e 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -214,8 +214,8 @@
pat_archive a ON a.id = b.patid
LEFT JOIN
pat_archivetag c ON c.patid = a.id AND (c.del_flag = 0 OR c.del_flag IS NULL)
- <where>
- a.del_flag = 0
+ where 1=1
+ AND a.del_flag = 0
AND b.del_flag = 0
AND a.idcardno IS NOT NULL
<if test="startOutHospTime != null ">and date_format(b.endtime,'%y%m%d') >=
@@ -289,7 +289,6 @@
#{leaveldeptcode}
</foreach>
</if>
- </where>
GROUP BY
b.inhospid,
a.age,
@@ -370,11 +369,13 @@
b.fuspecialadvice
FROM
pat_med_inhosp b
-
- <where>
- <if test="serialnum != null ">and b.serialnum = #{serialnum}</if>
-
- </where>
+ where 1=1
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="serialnum != null ">
+ and b.serialnum = #{serialnum}
+ </if>
order by b.inhospid desc
</select>
@@ -448,51 +449,53 @@
FROM
pat_med_inhosp b,
pat_archive a
- <where>
- a.del_flag=0
- and b.del_flag=0
- and a.id = b.patid
- AND a.idcardno != ''
- <if test="hospitalname != null and hospitalname != ''">and hospitalname like concat('%', #{hospitalname},
- '%')
- </if>
- <if test="managementDoctor != null ">and b.management_doctor = #{managementDoctor}</if>
- <if test="managementDoctorCode != null ">and b.management_doctor_code = #{managementDoctorCode}</if>
- <if test="patname != null and patname != ''">and patname like concat('%', #{patname}, '%')</if>
- <if test="hospitaldistrictname != null and hospitaldistrictname != ''">and hospitaldistrictname like
- concat('%', #{hospitaldistrictname}, '%')
- </if>
- <if test="endtime != null ">and b.endtime = #{endtime}</if>
- <if test="serialnum != null ">and b.serialnum = #{serialnum}</if>
- <if test="fuflag != null ">and b.fuflag = #{fuflag}</if>
- <if test="nurseId != null ">and b.nurse_id = #{nurseId}</if>
- <if test="nurseName != null ">and b.nurse_name = #{nurseName}</if>
- <if test="patno != null ">and b.patno = #{patno}</if>
- <if test="campusid != null ">and b.campusid = #{campusid}</if>
- <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="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('%',
- #{leavediagname}, '%')
- </if>
- <if test="drname != null and drname != ''">and b.drname like concat('%', #{drname}, '%')</if>
- <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size()>0">
- AND b.leavehospitaldistrictcode IN
- <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
- close=")">
- #{leavehospitaldistrictcode}
- </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>
- </where>
+ where 1=1
+ and a.del_flag=0
+ and b.del_flag=0
+ and a.id = b.patid
+ AND a.idcardno != ''
+ <if test="orgid != null and orgid != ''">
+ and a.orgid = #{orgid}
+ </if>
+ <if test="hospitalname != null and hospitalname != ''">and hospitalname like concat('%', #{hospitalname},
+ '%')
+ </if>
+ <if test="managementDoctor != null ">and b.management_doctor = #{managementDoctor}</if>
+ <if test="managementDoctorCode != null ">and b.management_doctor_code = #{managementDoctorCode}</if>
+ <if test="patname != null and patname != ''">and patname like concat('%', #{patname}, '%')</if>
+ <if test="hospitaldistrictname != null and hospitaldistrictname != ''">and hospitaldistrictname like
+ concat('%', #{hospitaldistrictname}, '%')
+ </if>
+ <if test="endtime != null ">and b.endtime = #{endtime}</if>
+ <if test="serialnum != null ">and b.serialnum = #{serialnum}</if>
+ <if test="fuflag != null ">and b.fuflag = #{fuflag}</if>
+ <if test="nurseId != null ">and b.nurse_id = #{nurseId}</if>
+ <if test="nurseName != null ">and b.nurse_name = #{nurseName}</if>
+ <if test="patno != null ">and b.patno = #{patno}</if>
+ <if test="campusid != null ">and b.campusid = #{campusid}</if>
+ <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="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('%',
+ #{leavediagname}, '%')
+ </if>
+ <if test="drname != null and drname != ''">and b.drname like concat('%', #{drname}, '%')</if>
+ <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size()>0">
+ AND b.leavehospitaldistrictcode IN
+ <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+ close=")">
+ #{leavehospitaldistrictcode}
+ </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>
order by b.inhospid desc
</select>
@@ -513,8 +516,9 @@
<select id="selectPatMedInhosp" parameterType="Long" resultMap="PatMedInhospResult">
<include refid="selectPatMedInhospVo"/>
where del_flag=0
- <if test="cry != null and cry == 0 ">and endtime is null</if>
+ <if test="cry != null and cry == 0 ">and inhospstate=0</if>
<if test="cry != null and cry == 1 ">and inhospstate=1</if>
+ <if test="cry != null and cry == 3 ">and inhospstate=3</if>
<if test="serialnum != null">and serialnum = #{serialnum}</if>
<if test="hospitalname != null">and hospitalname = #{hospitalname}</if>
<if test="hospitalcode != null">and hospitalcode = #{hospitalcode}</if>
@@ -856,15 +860,17 @@
<if test="mz != null">
SELECT deptname
FROM pat_med_outhosp
- <where>
- del_flag=0
- <if test="deptcodeList != null and deptcodeList.size() > 0">
- and deptcode in
- <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
- #{deptcode}
- </foreach>
- </if>
- </where>
+ where 1=1
+ and del_flag=0
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
</if>
<if test="mz != null and zy != null">
UNION ALL
@@ -872,46 +878,52 @@
<if test="zy != null">
SELECT deptname
FROM pat_med_inhosp
- <where>
- del_flag=0
- and inhospstate=0
- <if test="deptcodeList != null and deptcodeList.size() > 0">
- and deptcode in
- <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
- #{deptcode}
- </foreach>
- </if>
- </where>
+ where 1=1
+ and del_flag=0
+ and inhospstate=0
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
</if>
<if test="cy != null and zy != null">
UNION ALL
SELECT deptname
FROM pat_med_inhosp
- <where>
- del_flag=0
- and inhospstate=1
- <if test="deptcodeList != null and deptcodeList.size() > 0">
- and deptcode in
- <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
- #{deptcode}
- </foreach>
- </if>
- </where>
+ where 1=1
+ and del_flag=0
+ and inhospstate=1
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
</if>
<if test="mz != null and zy != null and cy==null">
UNION ALL
SELECT deptname
FROM pat_med_inhosp
- <where>
- del_flag=0
- and inhospstate=1
- <if test="deptcodeList != null and deptcodeList.size() > 0">
- and deptcode in
- <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
- #{deptcode}
- </foreach>
- </if>
- </where>
+ where 1=1
+ and del_flag=0
+ and inhospstate=1
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
</if>
) AS combined
GROUP BY deptname;
@@ -919,67 +931,162 @@
<select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq"
resultType="com.smartor.domain.PatMedRes">
SELECT SUM( rs ) AS rs,
- SUM( rc ) AS rc
+ SUM( rc ) AS rc,
+ SUM( scsf ) AS scsf,
+ SUM( zcsf ) AS zcsf,
+ SUM( zbsf ) AS zbsf
FROM (
+ <!-- 鍑洪櫌浜烘-->
SELECT
COUNT(1) AS rc,
- 0 AS rs
+ 0 AS rs,
+ 0 AS scsf,
+ 0 AS zcsf,
+ 0 AS zbsf
FROM
pat_med_inhosp
- <where>
- del_flag=0
- <if test="orgid != null">
- AND orgid = #{orgid}
- </if>
- <if test="zy != null">
- and inhospstate=0
- and date_format(starttime,'%y%m%d') >= date_format(#{startDate},'%y%m%d')
- and date_format(starttime,'%y%m%d') <= date_format(#{endDate},'%y%m%d')
- <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 date_format(endtime,'%y%m%d') >= date_format(#{startDate},'%y%m%d')
- and date_format(endtime,'%y%m%d') <= date_format(#{endDate},'%y%m%d')
- <if test="deptcodeList != null and deptcodeList.size() > 0">
- and leaveldeptcode in
- <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
- #{deptcode}
- </foreach>
- </if>
- </if>
-
- </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 date_format( visit_time, '%y%m%d' ) >= date_format( #{startDate}, '%y%m%d' )
- </if>
- <if test="endDate != null">
- AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d')
- </if>
+ where 1=1
+ and del_flag=0
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="zy != null">
+ and inhospstate=0
+ and date_format(starttime,'%y%m%d') >= date_format(#{startDate},'%y%m%d')
+ and date_format(starttime,'%y%m%d') <= date_format(#{endDate},'%y%m%d')
<if test="deptcodeList != null and deptcodeList.size() > 0">
and deptcode in
<foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
#{deptcode}
</foreach>
</if>
- </where>
+ </if>
+ <if test="cy != null">
+ and inhospstate=1
+ and date_format(endtime,'%y%m%d') >= date_format(#{startDate},'%y%m%d')
+ and date_format(endtime,'%y%m%d') <= date_format(#{endDate},'%y%m%d')
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and leaveldeptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ </if>
+ <!-- 闅忚鏈嶅姟浜烘暟 -->
+ union all
+ select
+ 0 AS rc,
+ count(1) AS rs,
+ 0 AS scsf,
+ 0 AS zcsf,
+ 0 AS zbsf
+ FROM
+ service_subtask
+ where 1=1
+ and del_flag = 0
+ and service_type=2
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="startDate != null">
+ AND date_format( visit_time, '%y%m%d' ) >= date_format( #{startDate}, '%y%m%d' )
+ </if>
+ <if test="endDate != null">
+ AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d')
+ </if>
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <!-- 棣栨闅忚浜烘暟 -->
+ union all
+ select
+ 0 AS rc,
+ 0 AS rs,
+ count(1) AS scsf,
+ 0 AS zcsf,
+ 0 AS zbsf
+ FROM
+ service_subtask
+ where 1=1
+ and del_flag = 0
+ and service_type=2
+ and is_visit_again = 0
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="startDate != null">
+ AND date_format( visit_time, '%y%m%d' ) >= date_format( #{startDate}, '%y%m%d' )
+ </if>
+ <if test="endDate != null">
+ AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d')
+ </if>
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <!-- 鍐嶆闅忚浜烘暟 -->
+ union all
+ select
+ 0 AS rc,
+ 0 AS rs,
+ 0 AS scsf,
+ count(1) AS zcsf,
+ 0 AS zbsf
+ FROM
+ service_subtask
+ where 1=1
+ and del_flag = 0
+ and service_type=2
+ and is_visit_again = 1
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="startDate != null">
+ AND date_format( visit_time, '%y%m%d' ) >= date_format( #{startDate}, '%y%m%d' )
+ </if>
+ <if test="endDate != null">
+ AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d')
+ </if>
+ <if test="deptcodeList != null and deptcodeList.size() > 0">
+ and deptcode in
+ <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+ <!-- 涓撶梾闅忚浜烘暟 -->
+ union all
+ select
+ 0 AS rc,
+ 0 AS rs,
+ 0 AS scsf,
+ 0 AS zcsf,
+ count(1) AS zbsf
+ FROM
+ service_subtask
+ where 1=1
+ and del_flag = 0
+ and service_type=13
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="startDate != null">
+ AND date_format( visit_time, '%y%m%d' ) >= date_format( #{startDate}, '%y%m%d' )
+ </if>
+ <if test="endDate != null">
+ AND date_format( visit_time, '%y%m%d' ) <= date_format(#{endDate},'%y%m%d')
+ </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>
+
</mapper>
--
Gitblit v1.9.3