44 lines
2.1 KiB
XML
44 lines
2.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.application.mapper.LabRequestMapper">
|
||
|
||
<resultMap id="LabRequestResult" type="com.openhis.application.domain.entity.LabRequest">
|
||
<id property="id" column="id"/>
|
||
<result property="patientId" column="patient_id"/>
|
||
<result property="status" column="status"/>
|
||
<result property="symptom" column="symptom"/>
|
||
<result property="sign" column="sign"/>
|
||
<result property="relatedResult" column="related_result"/>
|
||
<result property="createTime" column="create_time"/>
|
||
<result property="updateTime" column="update_time"/>
|
||
<result property="delFlag" column="del_flag"/>
|
||
</resultMap>
|
||
|
||
<select id="selectById" resultMap="LabRequestResult">
|
||
SELECT id, patient_id, status, symptom, sign, related_result, create_time, update_time, del_flag
|
||
FROM his_lab_request
|
||
WHERE id = #{id} AND del_flag = 0
|
||
</select>
|
||
|
||
<!-- 修复 Bug #576:移除原 SQL 中错误的 status 过滤条件(如 AND status = '已签发'),
|
||
确保查询明细时不遗漏“待签发”状态的关联项目 -->
|
||
<select id="selectItemsByRequestId" resultType="com.openhis.application.domain.entity.LabRequestItem">
|
||
SELECT id, request_id, item_code, item_name, price, quantity, del_flag
|
||
FROM his_lab_request_item
|
||
WHERE request_id = #{requestId} AND del_flag = 0
|
||
ORDER BY sort_order ASC
|
||
</select>
|
||
|
||
<insert id="insert" useGeneratedKeys="true" keyProperty="id">
|
||
INSERT INTO his_lab_request (patient_id, status, symptom, sign, related_result, create_time, del_flag)
|
||
VALUES (#{patientId}, #{status}, #{symptom}, #{sign}, #{relatedResult}, NOW(), 0)
|
||
</insert>
|
||
|
||
<update id="updateById">
|
||
UPDATE his_lab_request
|
||
SET symptom = #{symptom}, sign = #{sign}, related_result = #{relatedResult}, update_time = NOW()
|
||
WHERE id = #{id} AND del_flag = 0
|
||
</update>
|
||
|
||
</mapper>
|