From a1890ea179d410b48bcce4b10d55a7e0411bcd00 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 11 十一月 2025 18:23:30 +0800
Subject: [PATCH] 问题处理
---
smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 53 insertions(+), 6 deletions(-)
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
index 7bfeba3..50b0bf2 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
@@ -39,11 +39,13 @@
<result property="idcardno" column="idcardno"/>
<result property="remark" column="remark"/>
<result property="fudate" column="fudate"/>
+ <result property="campusid" column="campusid"/>
</resultMap>
<sql id="selectPatMedOuthospVo">
select id,
outhospno,
+ campusid,
diagcheck_flag,
patno,
remark,
@@ -82,6 +84,7 @@
resultMap="PatMedOuthospResult">
select
pmo.id,
+ pmo.campusid,
pmo.remark,
pmo.fudate,
pmo.outhospno,
@@ -113,11 +116,8 @@
pmo.hpi,
pmo.fuflag,
pmo.patname,
- CONCAT(pa.age,pa.age_unit,pa.age2,pa.age_unit2) AS age,
- pa.telcode,
- pmo.mainsuit,
- pa.idcardno
- from pat_med_outhosp pmo left join pat_archive pa on pmo.patid = pa.id
+ pmo.mainsuit
+ from pat_med_outhosp pmo
<where>
pmo.del_flag=0
<if test="orgid != null ">and pmo.orgid = #{orgid}</if>
@@ -125,6 +125,15 @@
#{hospitalname},
'%')
</if>
+ <if test="deptcodes != null and deptcodes.size()>0">
+ AND pmo.deptcode IN
+ <foreach collection="deptcodes" item="deptcode" open="(" separator=","
+ close=")">
+ #{deptcode}
+ </foreach>
+ </if>
+
+
<if test="deptname != null and deptname != ''">and pmo.deptname like concat('%', #{deptname}, '%')</if>
<if test="drname != null and drname != ''">and pmo.drname like concat('%', #{drname}, '%')</if>
<if test="patname != null and patname != ''">and pmo.patname like concat('%', #{patname}, '%')</if>
@@ -135,6 +144,7 @@
date_format(#{endTime},'%y%m%d')
</if>
<if test="patid != null ">and pmo.patid = #{patid}</if>
+ <if test="campusid != null ">and pmo.campusid = #{campusid}</if>
<if test="fuflag != null ">and pmo.fuflag = #{fuflag}</if>
<if test="patno != null ">and pmo.patno = #{patno}</if>
<if test="outhospno != null and outhospno != ''">and pmo.outhospno = #{outhospno}</if>
@@ -185,6 +195,7 @@
<if test="remark != null">remark,</if>
<if test="fuflag != null">fuflag,</if>
<if test="fudate != null">fudate,</if>
+ <if test="campusid != null">campusid,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="serialnum != null">#{serialnum},</if>
@@ -219,6 +230,7 @@
<if test="remark != null">#{remark},</if>
<if test="fuflag != null">#{fuflag},</if>
<if test="fudate != null">#{fudate},</if>
+ <if test="campusid != null">#{campusid},</if>
</trim>
</insert>
@@ -256,6 +268,7 @@
diagcheck_flag,
fuflag,
fudate,
+ campusid,
remark)
values
<foreach collection="list" item="item" separator=",">
@@ -291,6 +304,7 @@
#{item.diagcheckFlag},
#{item.fuflag},
#{item.fudate},
+ #{item.campusid},
#{item.remark}
)
</foreach>
@@ -332,6 +346,7 @@
<if test="remark != null">remark = #{remark},</if>
<if test="fuflag != null">fuflag = #{fuflag},</if>
<if test="fudate != null">fudate = #{fudate},</if>
+ <if test="campusid != null">campusid = #{campusid},</if>
</trim>
where id = #{id}
</update>
@@ -351,13 +366,19 @@
<select id="selectPatMedOuthospCount" parameterType="com.smartor.domain.PatMedReq"
resultType="com.smartor.domain.PatMedRes">
+ SELECT SUM( rs ) AS rs,
+ SUM( rc ) AS rc
+ FROM (
SELECT
COUNT(id) AS rc,
- COUNT(DISTINCT patid) AS rs
+ 0 AS rs
FROM
pat_med_outhosp
<where>
del_flag=0
+ <if test="orgid != null">
+ and orgid = #{orgid}
+ </if>
and date_format(admitdate,'%y%m%d') >= date_format(#{startDate},'%y%m%d')
and date_format(admitdate,'%y%m%d') <= date_format(#{endDate},'%y%m%d')
<if test="deptcodeList != null and deptcodeList.size()>0">
@@ -367,6 +388,32 @@
</foreach>
</if>
</where>
+ union all
+ select
+ 0 AS rc,
+ count(1) AS rs
+ FROM
+ service_subtask
+ <where>
+ del_flag = 0
+ and service_type=3
+ <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>
+ <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="getDeptRanking" parameterType="com.smartor.domain.PatMedReq" resultType="com.smartor.domain.PatMedRes">
--
Gitblit v1.9.3