From 9bd00d48acd7b80468b7eca0f6d8ec03a82191a9 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期二, 04 八月 2026 15:03:46 +0800
Subject: [PATCH] 【景宁】随访及时率加上补偿时间计算
---
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml | 92 +++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 86 insertions(+), 6 deletions(-)
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
index ccb334c..b003d6b 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -76,11 +76,19 @@
<result property="managementDoctor" column="management_doctor"/>
<result property="managementDoctorCode" column="management_doctor_code"/>
<result property="campusid" column="campusid"/>
+ <result property="inhospMydFlag" column="inhosp_myd_flag"/>
+ <result property="encounterSourceId" column="encounter_source_id"/>
+ <result property="importanceFlagCode" column="importance_flag_code"/>
+ <result property="emergencyLevelCode" column="emergency_level_code"/>
</resultMap>
<sql id="selectPatMedInhospVo">
select inhospid,
+ encounter_source_id,
+ importance_flag_code,
+ emergency_level_code,
patname,
+ inhosp_myd_flag,
campusid,
fuflag,
management_doctor,
@@ -216,6 +224,10 @@
b.futypedesc,
b.fuadvice,
b.fuspecialadvice,
+ b.inhosp_myd_flag,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
a.idcardno
FROM
pat_med_inhosp b
@@ -245,6 +257,7 @@
concat('%', #{hospitaldistrictname}, '%')
</if>
<if test="endtime != null ">and b.endtime = #{endtime}</if>
+ <if test="inhospMydFlag != null ">and b.inhosp_myd_flag = #{inhospMydFlag}</if>
<if test="managementDoctor != null ">and b.management_doctor = #{managementDoctor}</if>
<if test="managementDoctorCode != null ">and b.management_doctor_code = #{managementDoctorCode}</if>
<if test="inhospno != null ">and b.inhospno = #{inhospno}</if>
@@ -261,8 +274,13 @@
<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="encounterSourceId != null ">and b.encounter_source_id = #{encounterSourceId}</if>
+ <if test="importanceFlagCode != null ">and b.importance_flag_code = #{importanceFlagCode}</if>
+ <if test="emergencyLevelCode != null ">and b.emergency_level_code = #{emergencyLevelCode}</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>
+ <if test="cry != null and cry == 2 ">and b.inhospstate=2</if>
+ <if test="cry != null and cry == 3 ">and b.inhospstate=3</if>
<if test="inhospstate != null ">and b.inhospstate = #{inhospstate}</if>
<if test="campusid != null ">and b.campusid = #{campusid}</if>
<if test="schemestatus != null ">and b.schemestatus = #{schemestatus}</if>
@@ -314,6 +332,16 @@
#{deptcode}
</foreach>
</if>
+ <if test="icd10codeList != null and icd10codeList.size()>0">
+ AND b.leaveicd10code IN
+ <foreach collection="icd10codeList" item="icd10code" open="(" separator=","
+ close=")">
+ #{icd10code}
+ </foreach>
+ </if>
+ <if test="medicalCode != null and medicalCode != ''">and b.medical_code = #{medicalCode}</if>
+ <if test="medicalName != null and medicalName != ''">and b.medical_name = #{medicalName}</if>
+ <if test="medicalCompany != null and medicalCompany != ''">and b.medical_company = #{medicalCompany}</if>
GROUP BY
b.inhospid,
a.age,
@@ -321,10 +349,16 @@
a.telcode,
a.id,
a.sex
- <if test="cry==1">
+ <if test="cry != null and cry==1">
order by b.endtime desc
</if>
- <if test="cry==0">
+ <if test="cry != null and cry==2">
+ order by b.endtime desc
+ </if>
+ <if test="cry != null and cry==3">
+ order by b.endtime desc
+ </if>
+ <if test="cry != null and cry==0">
order by b.starttime desc
</if>
</select>
@@ -334,6 +368,12 @@
select
b.inhospid,
b.nurse_id,
+ b.medical_code,
+ b.medical_name,
+ b.medical_company,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
b.nurse_name,
b.patname,
b.management_doctor,
@@ -394,12 +434,23 @@
b.futypecode,
b.futypedesc,
b.fuadvice,
+ b.inhosp_myd_flag,
b.fuspecialadvice
FROM
pat_med_inhosp b
where 1=1
+ <if test="inhospMydFlag != null ">and b.inhosp_myd_flag = #{inhospMydFlag}</if>
<if test="orgid != null and orgid != ''">
and orgid = #{orgid}
+ </if>
+ <if test="encounterSourceId != null and encounterSourceId != ''">
+ and b.encounter_source_id = #{encounterSourceId}
+ </if>
+ <if test="importanceFlagCode != null and importanceFlagCode != ''">
+ and b.importance_flag_code = #{importanceFlagCode}
+ </if>
+ <if test="emergencyLevelCode != null and emergencyLevelCode != ''">
+ and b.emergency_level_code = #{emergencyLevelCode}
</if>
<if test="serialnum != null and serialnum != ''">
and b.serialnum = #{serialnum}
@@ -412,6 +463,9 @@
select CONCAT( a.age, a.age_unit ) AS age,
a.telcode as telcode,
b.inhospid,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
b.management_doctor,
b.management_doctor_code,
b.patname,
@@ -474,6 +528,7 @@
b.futypedesc,
b.fuadvice,
b.fuspecialadvice,
+ b.inhosp_myd_flag,
b.schemetime
FROM
pat_med_inhosp b,
@@ -483,6 +538,16 @@
and b.del_flag=0
and a.id = b.patid
AND a.idcardno != ''
+ <if test="inhospMydFlag != null ">and b.inhosp_myd_flag = #{inhospMydFlag}</if>
+ <if test="encounterSourceId != null and encounterSourceId != ''">
+ and b.encounter_source_id = #{encounterSourceId}
+ </if>
+ <if test="importanceFlagCode != null and importanceFlagCode != ''">
+ and b.importance_flag_code = #{importanceFlagCode}
+ </if>
+ <if test="emergencyLevelCode != null and emergencyLevelCode != ''">
+ and b.emergency_level_code = #{emergencyLevelCode}
+ </if>
<if test="orgid != null and orgid != ''">
and a.orgid = #{orgid}
</if>
@@ -551,6 +616,7 @@
<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="inhospMydFlag != null ">and inhosp_myd_flag = #{inhospMydFlag}</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>
@@ -615,6 +681,9 @@
<if test="managementDoctor != null ">and management_doctor = #{managementDoctor}</if>
<if test="managementDoctorCode != null ">and management_doctor_code = #{managementDoctorCode}</if>
<if test="campusid != null ">and campusid = #{campusid}</if>
+ <if test="importanceFlagCode != null ">and importance_flag_code = #{importanceFlagCode}</if>
+ <if test="emergencyLevelCode != null ">and emergency_level_code = #{emergencyLevelCode}</if>
+ <if test="encounterSourceId != null ">and encounter_source_id = #{encounterSourceId}</if>
</select>
@@ -687,6 +756,10 @@
<if test="managementDoctor != null ">management_doctor,</if>
<if test="managementDoctorCode != null ">management_doctor_code,</if>
<if test="campusid != null ">campusid,</if>
+ <if test="inhospMydFlag != null ">inhosp_myd_flag,</if>
+ <if test="importanceFlagCode != null ">importance_flag_code,</if>
+ <if test="emergencyLevelCode != null ">emergency_level_code,</if>
+ <if test="encounterSourceId != null ">encounter_source_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="serialnum != null">#{serialnum},</if>
@@ -754,6 +827,9 @@
<if test="managementDoctor != null ">#{managementDoctor},</if>
<if test="managementDoctorCode != null ">#{managementDoctorCode},</if>
<if test="campusid != null ">#{campusid},</if>
+ <if test="importanceFlagCode != null ">#{importanceFlagCode},</if>
+ <if test="emergencyLevelCode != null ">#{emergencyLevelCode},</if>
+ <if test="encounterSourceId != null ">#{encounterSourceId},</if>
</trim>
</insert>
@@ -772,7 +848,7 @@
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,
- management_doctor_doctor,campusid
+ management_doctor_doctor,campusid, inhosp_myd_flag, importance_flag_code, emergency_level_code, encounter_source_id
)
values
<foreach collection="list" item="item" separator=",">
@@ -794,7 +870,8 @@
#{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},
- #{item.fuspecialadvice}, #{item.managementDoctor}, #{item.managementDoctorCode}, #{item.campusid}
+ #{item.fuspecialadvice}, #{item.managementDoctor}, #{item.managementDoctorCode}, #{item.campusid}, #{item.inhospMydFlag},
+ #{item.importanceFlagCode}, #{item.emergencyLevelCode}, #{item.encounterSourceId}
)
</foreach>
</insert>
@@ -867,8 +944,11 @@
<if test="fuspecialadvice != null ">fuspecialadvice = #{fuspecialadvice},</if>
<if test="managementDoctor != null ">management_doctor = #{managementDoctor},</if>
<if test="managementDoctorCode != null ">management_doctor_code = #{managementDoctorCode},</if>
- <if test="campusid != null ">campusid = #{campusid}</if>
-
+ <if test="campusid != null ">campusid = #{campusid},</if>
+ <if test="inhospMydFlag != null ">inhosp_myd_flag = #{inhospMydFlag},</if>
+ <if test="importanceFlagCode != null ">importance_flag_code = #{importanceFlagCode},</if>
+ <if test="emergencyLevelCode != null ">emergency_level_code = #{emergencyLevelCode},</if>
+ <if test="encounterSourceId != null ">encounter_source_id = #{encounterSourceId},</if>
</trim>
where inhospid = #{inhospid}
</update>
--
Gitblit v1.9.3