<?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.xisc.pm.infra.mapper.PmPdBlockPosTraMapper">


    <sql id = "BaseSql">
        PPBPT.TRA_ID,
        PPBPT.OPERATION_TYPE,
        PPBPT.OPERATION_USER,
        PPBPT.OPERATION_TIME,
        PPBPT.PD_BLOCK_POS_ID,
        PPBPT.PD_MAT_NO,
        PPBPT.ORDER_BLOCK_NO,
        PPBPT.ORDER_NO,
        PPBPT.PRO_CONT_ID,
        PPBPT.ORDER_SEQ_NO,
        PPBPT.BLOCK_PLATE_NUM,
        PPBPT.SLAB_NO,
        PPBPT.PLATE_NO,
        PPBPT.TENANT_ID,
        PPBPT.ATTRIBUTE1,
        PPBPT.ATTRIBUTE2,
        PPBPT.ATTRIBUTE3,
        PPBPT.ATTRIBUTE4,
        PPBPT.ATTRIBUTE5,
        PPBPT.creation_date,        PPBPT.created_by,        PPBPT.last_updated_by,        PPBPT.last_update_date,        PPBPT.object_version_number
    </sql>

    <select id = "selectList" resultType = "com.xisc.pm.domain.entity.PmPdBlockPosTra">
        select
        <include refid = "BaseSql"/>
        from PM_PD_BLOCK_POS_TRA PPBPT
        <where>
            <if test="traId !=null">
                and PPBPT.TRA_ID = #{traId,jdbcType = INTEGER}
            </if>
            <if test="operationType !=null">
                and PPBPT.OPERATION_TYPE = #{operationType,jdbcType = VARCHAR}
            </if>
            <if test="operationUser !=null">
                and PPBPT.OPERATION_USER = #{operationUser,jdbcType = VARCHAR}
            </if>
            <if test="operationTime !=null">
                and PPBPT.OPERATION_TIME = #{operationTime,jdbcType = OTHER}
            </if>
            <if test="pdBlockPosId !=null">
                and PPBPT.PD_BLOCK_POS_ID = #{pdBlockPosId,jdbcType = INTEGER}
            </if>
            <if test="pdMatNo !=null">
                and PPBPT.PD_MAT_NO = #{pdMatNo,jdbcType = VARCHAR}
            </if>
            <if test="orderBlockNo !=null">
                and PPBPT.ORDER_BLOCK_NO = #{orderBlockNo,jdbcType = INTEGER}
            </if>
            <if test="orderNo !=null">
                and PPBPT.ORDER_NO = #{orderNo,jdbcType = VARCHAR}
            </if>
            <if test="proContId !=null">
                and PPBPT.PRO_CONT_ID = #{proContId,jdbcType = INTEGER}
            </if>
            <if test="orderSeqNo !=null">
                and PPBPT.ORDER_SEQ_NO = #{orderSeqNo,jdbcType = INTEGER}
            </if>
            <if test="blockPlateNum !=null">
                and PPBPT.BLOCK_PLATE_NUM = #{blockPlateNum,jdbcType = INTEGER}
            </if>
            <if test="slabNo !=null">
                and PPBPT.SLAB_NO = #{slabNo,jdbcType = VARCHAR}
            </if>
            <if test="plateNo !=null">
                and PPBPT.PLATE_NO = #{plateNo,jdbcType = VARCHAR}
            </if>
            <if test="tenantId !=null">
                and PPBPT.TENANT_ID = #{tenantId,jdbcType = INTEGER}
            </if>
            <if test="attribute1 !=null">
                and PPBPT.ATTRIBUTE1 = #{attribute1,jdbcType = VARCHAR}
            </if>
            <if test="attribute2 !=null">
                and PPBPT.ATTRIBUTE2 = #{attribute2,jdbcType = VARCHAR}
            </if>
            <if test="attribute3 !=null">
                and PPBPT.ATTRIBUTE3 = #{attribute3,jdbcType = VARCHAR}
            </if>
            <if test="attribute4 !=null">
                and PPBPT.ATTRIBUTE4 = #{attribute4,jdbcType = VARCHAR}
            </if>
            <if test="attribute5 !=null">
                and PPBPT.ATTRIBUTE5 = #{attribute5,jdbcType = VARCHAR}
            </if>
        </where>
    </select>
</mapper>

