Newer
Older
casic-metering-biz-xichang / casic-metering-dao / src / main / resources / mapper / business / BizBusinessOutsourceAssessSampleRelationMapper.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.casic.missiles.mapper.business.BizBusinessOutsourceAssessSampleRelationMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.casic.missiles.model.business.BizBusinessOutsourceAssessSampleRelation">
        <id column="id" property="id" />
        <result column="access_id" property="accessId" />
        <result column="sample_id" property="sampleId" />
        <result column="order_id" property="orderId" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, access_id, sample_id, order_id, create_time, update_time
    </sql>

    <select id="selectListByAssessId" resultType="com.casic.missiles.dto.business.outsource.OutsourceAssessEquipmentDTO">
        SELECT eei.id, eei.equipment_no, eei.equipment_name, eei.manufacture_no, eei.model, bboi.id AS orderId, bboi.order_no,
        bboi.customer_id, bboi.customer_name, eei.meter_identify, eei.certificate_valid AS validDate, eei.help_instruction, eei.manufacturer
        FROM biz_business_outsource_assess_sample_relation bboasr
        JOIN biz_business_order_info bboi ON bboi.id = bboasr.order_id
        JOIN eqpt_equipment_info eei ON eei.id = bboasr.sample_id
        WHERE bboasr.access_id = #{assessId}
    </select>

    <select id="selectDeviceList" resultType="com.casic.missiles.dto.business.outsource.OutsourceDeviceListResponse">
        SELECT bboasr.id, eei.id AS sampleId, eei.equipment_no AS sampleNo, eei.equipment_name AS sampleName,
        eei.manufacture_no, eei.model, eei.help_instruction, eei.manufacturer, eei.check_date, eei.certificate_valid, eei.meter_identify,
        bboi.id AS orderId, bboi.order_no, bboi.customer_id, bboi.customer_name, bboi.require_over_time,
        bboa.contacts, bboa.phone, bboa.mobile, bboa.outsourcer_id, bboa.outsourcer_no, bboa.outsourcer_name, bboa.director, bboa.full_address,
        bboa.email, bboa.postal_code, bboasr.access_id, bboa.project_no AS accessNo, bboasr.conclusion,
        bbon.id AS noticeId, bbon.notice_no, bbop.id AS protocolId, bbop.protocol_no,
        bboc.id AS certificateId, bboc.certificate_no, bboc.certificate_name, bboc.certificate_report_file, bboc.original_record_file
        FROM biz_business_outsource_assess_sample_relation bboasr
        JOIN biz_business_order_info bboi ON bboi.id = bboasr.order_id
        JOIN eqpt_equipment_info eei ON eei.id = bboasr.sample_id
        JOIN biz_business_outsource_assess bboa ON bboa.id = bboasr.access_id
        LEFT JOIN biz_business_outsource_notice bbon ON bboa.id = bbon.access_id
        LEFT JOIN biz_business_outsource_protocol bbop ON bboa.id = bbop.access_id
        LEFT JOIN biz_business_outsource_certificate bboc ON (bboc.order_id = bboi.id AND bboc.sample_id = eei.id)
        WHERE 1=1
        <if test="request != null and request.measureStatus != null">
            and bboasr.measure_status = #{request.measureStatus}
        </if>
        <if test="request != null and request.sampleName != null and request.sampleName !=''">
            and eei.equipment_name like concat('%',#{request.sampleName},'%')
        </if>
        <if test="request != null and request.model != null and request.model !=''">
            and eei.model like concat('%',#{request.model},'%')
        </if>
        <if test="request != null and request.manufactureNo != null and request.manufactureNo !=''">
            and eei.manufacture_no like concat('%',#{request.manufactureNo},'%')
        </if>
        <if test="request != null and request.manufacturer != null and request.manufacturer !=''">
            and eei.manufacturer like concat('%',#{request.manufacturer},'%')
        </if>
        <if test="request != null and request.helpInstruction != null and request.helpInstruction !=''">
            and eei.help_instruction like concat('%',#{request.helpInstruction},'%')
        </if>
        <if test="request != null and request.orderNo != null and request.orderNo !=''">
            and bboi.order_no like concat('%',#{request.orderNo},'%')
        </if>
        <if test="request != null and request.customerName != null and request.customerName !=''">
            and bboi.customer_name like concat('%',#{request.customerName},'%')
        </if>
        <if test="request != null and request.outsourcerNo != null and request.outsourcerNo !=''">
            and bboa.outsourcer_no like concat('%',#{request.outsourcerNo},'%')
        </if>
        <if test="request != null and request.outsourcerName != null and request.outsourcerName !=''">
            and bboa.outsourcer_name like concat('%',#{request.outsourcerName},'%')
        </if>
        <if test="request != null and request.contacts != null and request.contacts !=''">
            and bboa.contacts like concat('%',#{request.contacts},'%')
        </if>
        <if test="request != null and request.startTime != null and request.startTime !=''">
            and bboi.require_over_time &gt;= #{request.startTime}
        </if>
        <if test="request != null and request.endTime != null and request.endTime !=''">
            and bboi.require_over_time &lt;= #{request.endTime}
        </if>
        <if test="request != null and request.ids != null and request.ids.size() > 0">
            and bboasr.id in
            <foreach collection="request.ids" item="id" index="index" open="(" close=")" separator=",">
                #{id}
            </foreach>
        </if>
        ORDER BY bboasr.create_time DESC
    </select>
</mapper>