当手术计费弹窗中点击"签发"耗材时,因耗材的locationId(发放库房)为空导致后端异常。 在DoctorStationAdviceAppServiceImpl.handDevice方法中,当locationId为null时,使用登录用户的科室ID作为默认值, 与NurseBillingAppService中的处理方式保持一致。
54 lines
2.2 KiB
XML
Executable File
54 lines
2.2 KiB
XML
Executable File
<?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.administration.mapper.TraceNoManageMapper">
|
|
<select id="getItemTraceNoInfo" resultType="com.openhis.administration.domain.TraceNoManage">
|
|
SELECT item_table,
|
|
item_id,
|
|
location_id,
|
|
lot_number,
|
|
trace_no,
|
|
MAX(create_time)
|
|
FROM adm_trace_no_manage
|
|
WHERE item_table = #{itemTable}
|
|
AND item_id = #{itemId}
|
|
AND location_id = #{locationId}
|
|
AND lot_number = #{lotNumber}
|
|
AND (trace_no) IN (SELECT trace_no
|
|
FROM adm_trace_no_manage
|
|
WHERE item_table = #{itemTable}
|
|
AND item_id = #{itemId}
|
|
AND location_id = #{locationId}
|
|
AND lot_number = #{lotNumber}
|
|
AND delete_flag = '0'
|
|
GROUP BY trace_no
|
|
HAVING SUM(CASE WHEN status_enum = 1 THEN 1 ELSE 0 END) > -- 进库次数
|
|
SUM(CASE WHEN status_enum = 2 THEN 1 ELSE 0 END) -- 出库次数
|
|
)
|
|
AND delete_flag = '0'
|
|
GROUP BY item_table,
|
|
item_id,
|
|
location_id,
|
|
lot_number,
|
|
trace_no
|
|
</select>
|
|
|
|
<select id="tracePatient" resultType="com.openhis.administration.dto.TracePatientInfoDto">
|
|
SELECT T2.name,
|
|
T2.gender_enum,
|
|
T2.birth_date,
|
|
T2.phone,
|
|
T3.create_time AS register_time
|
|
FROM med_medication_dispense T1
|
|
LEFT JOIN adm_patient T2 ON T2.ID = T1.patient_id
|
|
AND T2.delete_flag = '0'
|
|
LEFT JOIN adm_encounter T3 ON T3.ID = T1.encounter_id
|
|
AND T3.delete_flag = '0'
|
|
WHERE T1.medication_id = #{ medId }
|
|
<if test="dispenseStatus != null">
|
|
AND T1.status_enum = #{dispenseStatus}
|
|
</if>
|
|
AND T1.trace_no = #{traceNo}
|
|
</select>
|
|
</mapper> |