sinake
2026-06-30 8611fa1fb659af4b9c4f894926ceb273b978a133
ruoyi-project/src/main/resources/mapper/project/ServiceDonatemaintenanceMapper.xml
@@ -4,7 +4,7 @@
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.mapper.ServiceDonatemaintenanceMapper">
    <resultMap type="com.ruoyi.project.domain.ServiceDonatemaintenance" id="ServiceDonatemaintenanceResult">
    <resultMap type="com.ruoyi.project.domain.entity.ServiceDonatemaintenanceEntity" id="ServiceDonatemaintenanceResult">
        <result property="id" column="ID"/>
        <result property="infoid" column="InfoID"/>
        <result property="caseNo" column="case_no"/>
@@ -37,44 +37,64 @@
        from service_donatemaintenance
    </sql>
    <select id="selectServiceDonatemaintenanceList" parameterType="com.ruoyi.project.domain.ServiceDonatemaintenance"
            resultType="com.ruoyi.project.domain.dto.DonationCompletionBaseInfoDTO">
    <select id="selectServiceDonatemaintenanceList" parameterType="com.ruoyi.project.domain.vo.MaintenanceBaseInfoVO"
            resultType="com.ruoyi.project.domain.entity.MaintenanceBaseInfoEntity">
        select
        sd.treatmenthospitalname AS treatmenthospitalname,
        sd.treatmenthospitalno AS treatmenthospitalno,
        sd.DonorNo AS donorno,
        sd.extracontent AS extracontent,
        sd.inpatientno AS inpatientno,
        sd.DonationCategory as donationcategory,
        sd.case_no AS caseNo,
        sd.NAME AS name,
        sd.RecordState AS recordstate,
        sd.Sex AS sex,
        sd.Age AS age,
        sd.AgeUnit as ageunit
        sd.BloodType AS bloodtype,
        sd.idcardno AS idcardno,
        sd.diagnosisname AS diagnosisname,
        sdm.id AS infoid,
        sd.ReportTime AS reportTime,
        sd.RhYin AS rhYin,
        sd.IllnessOverview AS illnessOverview,
        sd.id AS infoid,
        sdm.id AS id,
        sdm.item_no as itemNo,
        sdm.item_name as itemName,
        sdm.item_time as itemTime,
        sdm.item_desc as itemDesc
        sdt.DeathTime as deathTime,
        sdm.item_desc as itemDesc,
        sdm.state,
        entry_time
        FROM
        service_donatebaseinfo sd
        LEFT JOIN service_donatemaintenance sdm ON sd.ID = sdm.InfoID
        AND sd.del_flag = 0
        AND sdm.del_flag = 0
        and sdm.ID is not null
        left join service_deathinfo sdt on sd.ID = sdt.infoID and sdt.del_flag=0 and sdt.ID is not null
        <where>
            sd.termination_case = 0
            <if test="infoid != null ">and InfoID = #{infoid}</if>
            <if test="infoid != null ">and sd.ID = #{infoid}</if>
            <if test="inpatientno != null ">and sd.InpatientNo = #{inpatientno}</if>
            <if test="caseNo != null  and caseNo != ''">and case_no = #{caseNo}</if>
            <if test="reportTime != null ">and ReportTime = #{reportTime}</if>
            <if test="startEntryTime != null and endEntryTime != null ">and entry_time BETWEEN  #{startEntryTime} and  #{endEntryTime}</if>
            <if test="startAge != null and endAge != null ">and age BETWEEN  #{startAge} and  #{endAge}</if>
            <if test="donorno != null  and donorno != ''">and DonorNo = #{donorno}</if>
            <if test="name != null  and name != ''">and name = #{name}</if>
            <if test="coordinatorName != null  and coordinatorName != ''">and coordinator_name = #{coordinatorName}</if>
            <if test="name != null  and name != ''">and name like concat('%', #{name}, '%')</if>
            <if test="coordinatorName != null  and coordinatorName != ''">and coordinator_name like concat('%', #{coordinatorName}, '%')</if>
            <if test="itemNo != null  and itemNo != ''">and item_no = #{itemNo}</if>
            <if test="itemName != null  and itemName != ''">and item_name like concat('%', #{itemName}, '%')</if>
            <if test="itemTime != null ">and item_time = #{itemTime}</if>
            <if test="itemDesc != null  and itemDesc != ''">and item_desc = #{itemDesc}</if>
            <if test="id != null ">and sdt.id = #{id}</if>
            <if test="state != null  and state != ''">and sdm.state = #{state}</if>
        </where>
        order by sd.InpatientNo desc
        <if test="pageNum != null and pageSize != null">limit #{pageNum},#{pageSize}</if>
    </select>
</mapper>