<?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.supervision.mapper.DiseaseAncillaryMapper">

    <resultMap id="BaseResultMap" type="com.supervision.model.DiseaseAncillary">
        <id property="id" column="id" jdbcType="VARCHAR"/>
        <result property="diseaseId" column="disease_id" jdbcType="VARCHAR"/>
        <result property="itemId" column="item_id" jdbcType="VARCHAR"/>
        <result property="requireCheck" column="require_check" jdbcType="INTEGER"/>
        <result property="isBasisConfirm" column="is_basis_confirm" jdbcType="INTEGER"/>
        <result property="isPrimarilyDiagnosisCriteria" column="is_primarily_diagnosis_criteria" jdbcType="INTEGER"/>
        <result property="isBasisIdentification" column="is_basis_identification" jdbcType="INTEGER"/>
        <result property="isFullCheck" column="is_full_check" jdbcType="INTEGER"/>
        <result property="isDiagnosisAssessment" column="is_diagnosis_assessment" jdbcType="INTEGER"/>
        <result property="expectedDiagnosisResult" column="expected_diagnosis_result" jdbcType="INTEGER"/>
        <result property="result" column="result" jdbcType="VARCHAR"/>
        <result property="description" column="description" jdbcType="VARCHAR"/>
        <result property="createUserId" column="create_user_id" jdbcType="VARCHAR"/>
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
        <result property="updateUserId" column="update_user_id" jdbcType="VARCHAR"/>
        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
    </resultMap>

    <sql id="Base_Column_List">
        id,disease_id,item_id,require_check,is_basis_confirm,is_primarily_diagnosis_criteria,is_basis_identification
          ,is_full_check,is_diagnosis_assessment,expected_diagnosis_result,
        result,description,create_user_id,
        create_time,update_user_id,update_time
    </sql>

    <select id="queryDiseaseAncillaryDtoList" parameterType="com.supervision.model.DiseaseAncillary" resultType="com.supervision.dto.DiseaseAncillaryDto">
        select da.id            as id,
        da.disease_id           as diseaseId,
        da.item_id              as itemId,
        da.require_check        as requireCheck,
        da.basis_confirm        as basisConfirm,
        da.basis_identification as basisIdentification,
        da.result               as result,
        da.description          as description,
        da.create_time          as createTime,
        da.create_user_id       as createUserId,
        da.update_user_id       as updateUserId,
        da.update_time          as updateTime,
        ca.item_name            as itemName
        from vp_disease_ancillary da
            join vp_config_ancillary_item ca on da.item_id = ca.id
        <where>
            <if test="diseaseAncillary.diseaseId != null and diseaseAncillary.diseaseId != ''">
                AND da.medical_rec_id = #{diseaseAncillary.medicalRecId}
            </if>
            <if test="diseaseAncillary.itemId != null and diseaseAncillary.itemId != ''">
                AND da.item_id = #{diseaseAncillary.itemId}
            </if>
        </where>
    </select>

</mapper>