105 lines
4.1 KiB
XML
105 lines
4.1 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="com.openhis.web.inhospitalnursestation.mapper.EncounterAutoRollAppMapper">
|
|
|
|
<select id="getSource" resultType="com.openhis.web.inhospitalnursestation.dto.AutoRollSourceDto">
|
|
SELECT ID AS instance_id,
|
|
NAME AS instance_name,
|
|
permitted_unit_code
|
|
FROM wor_activity_definition
|
|
WHERE delete_flag = '0'
|
|
AND status_enum = #{status}
|
|
AND category_code = #{basicService}
|
|
</select>
|
|
|
|
<select id="getEncounter" resultType="com.openhis.web.inhospitalnursestation.dto.EncounterAutoRollQueryDto">
|
|
SELECT tear.ID,
|
|
tear.status_enum,
|
|
tear.quantity,
|
|
sdd.dict_label AS unit_code_name,
|
|
CASE
|
|
WHEN tear.instance_table = 'wor_activity_definition' THEN
|
|
wor.NAME
|
|
ELSE NULL
|
|
END AS definition_name
|
|
FROM tmp_encounter_auto_roll AS tear
|
|
LEFT JOIN wor_activity_definition AS wor ON tear.instance_table = 'wor_activity_definition'
|
|
AND tear.instance_id = wor.
|
|
ID
|
|
LEFT JOIN sys_dict_data AS sdd ON sdd.dict_value = wor.permitted_unit_code
|
|
AND sdd.dict_type = 'unit_code'
|
|
AND sdd.status = '0'
|
|
WHERE tear.delete_flag = '0'
|
|
AND tear.encounter_id = #{encounterId}
|
|
</select>
|
|
|
|
<select id="getInBedPatientInfo" resultType="com.openhis.web.inhospitalnursestation.dto.InBedPatientInfoDto">
|
|
SELECT ae.ID AS encounter_id,
|
|
ae.organization_id,
|
|
ae.patient_id,
|
|
aa.ID AS account_id,
|
|
aed.ID AS encounter_diagnosis_id,
|
|
aed.condition_id
|
|
FROM adm_encounter AS ae
|
|
LEFT JOIN adm_account AS aa ON aa.encounter_id = ae.ID
|
|
AND aa.delete_flag = '0'
|
|
AND aa.type_code = #{typeCode}
|
|
LEFT JOIN adm_encounter_diagnosis AS aed ON aed.encounter_id = ae.ID
|
|
AND aed.delete_flag = '0'
|
|
AND aed.maindise_flag = #{maindiseFlag}
|
|
WHERE ae.delete_flag = '0'
|
|
AND ae.class_enum = #{classEnum}
|
|
AND EXISTS(
|
|
SELECT 1
|
|
FROM adm_encounter_location AS ael
|
|
WHERE ael.encounter_id = ae.ID
|
|
AND ael.delete_flag = '0'
|
|
AND ael.status_enum = #{status}
|
|
AND ael.form_enum = #{formEnum}
|
|
)
|
|
</select>
|
|
|
|
<select id="getNursingRequest" resultType="com.openhis.web.inhospitalnursestation.dto.AutoRollNursingDto">
|
|
SELECT
|
|
wsr.activity_id AS activity_definition_id,
|
|
wsr.quantity,
|
|
wsr.patient_id,
|
|
wsr.encounter_id,
|
|
wsr.requester_id
|
|
FROM
|
|
wor_service_request AS wsr
|
|
WHERE
|
|
wsr.delete_flag = '0'
|
|
AND wsr.category_enum = #{categoryEnum}
|
|
AND wsr.status_enum = #{status}
|
|
<if test="encounterIdList != null and !encounterIdList.isEmpty()">
|
|
AND wsr.encounter_id IN
|
|
<foreach collection="encounterIdList" item="itemId" open="(" separator="," close=")">
|
|
#{itemId}
|
|
</foreach>
|
|
</if>
|
|
</select>
|
|
|
|
<select id="getAutoRollBasicService"
|
|
resultType="com.openhis.web.inhospitalnursestation.dto.AutoRollBasicServiceDto">
|
|
SELECT
|
|
tear.encounter_id,
|
|
tear.instance_id AS activity_definition_id,
|
|
tear.quantity,
|
|
tear.practitioner_id AS requester_id,
|
|
tear.organization_id
|
|
FROM
|
|
tmp_encounter_auto_roll AS tear
|
|
WHERE
|
|
tear.delete_flag = '0'
|
|
AND tear.status_enum = #{status}
|
|
<if test="encounterIdList != null and !encounterIdList.isEmpty()">
|
|
AND tear.encounter_id IN
|
|
<foreach collection="encounterIdList" item="itemId" open="(" separator="," close=")">
|
|
#{itemId}
|
|
</foreach>
|
|
</if>
|
|
</select>
|
|
|
|
</mapper>
|