<?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.brilliance.isc.mda.dao.TdfMapper">

    <resultMap id="BaseResultMap" type="com.brilliance.isc.common.rmbbop.entity.Tdf">
        <result property="inr" column="inr" jdbcType="VARCHAR"/>
        <result property="ver" column="ver" jdbcType="VARCHAR"/>
        <result property="sta" column="sta" jdbcType="VARCHAR"/>
        <result property="levyno" column="levyno" jdbcType="VARCHAR"/>
        <result property="opertype" column="opertype" jdbcType="VARCHAR"/>
        <result property="actiondesc" column="actiondesc" jdbcType="VARCHAR"/>
        <result property="leorgcode" column="leorgcode" jdbcType="VARCHAR"/>
        <result property="transattr" column="transattr" jdbcType="VARCHAR"/>
        <result property="loanertype" column="loanertype" jdbcType="VARCHAR"/>
        <result property="fintype" column="fintype" jdbcType="VARCHAR"/>
        <result property="finkind" column="finkind" jdbcType="VARCHAR"/>
        <result property="outorgcode" column="outorgcode" jdbcType="VARCHAR"/>
        <result property="outorgname" column="outorgname" jdbcType="VARCHAR"/>
        <result property="outorgacct" column="outorgacct" jdbcType="VARCHAR"/>
        <result property="outcountrycode" column="outcountrycode" jdbcType="VARCHAR"/>
        <result property="inorgcode" column="inorgcode" jdbcType="VARCHAR"/>
        <result property="inorgname" column="inorgname" jdbcType="VARCHAR"/>
        <result property="inorgacct" column="inorgacct" jdbcType="VARCHAR"/>
        <result property="incountrycode" column="incountrycode" jdbcType="VARCHAR"/>
        <result property="finvouchmode" column="finvouchmode" jdbcType="VARCHAR"/>
        <result property="fincnyamt" column="fincnyamt" jdbcType="DECIMAL"/>
        <result property="currencycode" column="currencycode" jdbcType="VARCHAR"/>
        <result property="finstrdate" column="finstrdate" jdbcType="DATE"/>
        <result property="finenddate" column="finenddate" jdbcType="DATE"/>
        <result property="ratetype" column="ratetype" jdbcType="VARCHAR"/>
        <result property="finrate" column="finrate" jdbcType="DECIMAL"/>
        <result property="ratebenchmark" column="ratebenchmark" jdbcType="VARCHAR"/>
        <result property="rateaddend" column="rateaddend" jdbcType="DECIMAL"/>
        <result property="rateafreshlimit" column="rateafreshlimit" jdbcType="VARCHAR"/>
        <result property="rateunit" column="rateunit" jdbcType="VARCHAR"/>
        <result property="finstate" column="finstate" jdbcType="VARCHAR"/>
        <result property="paymode" column="paymode" jdbcType="VARCHAR"/>
        <result property="latepayamt" column="latepayamt" jdbcType="DECIMAL"/>
        <result property="lendingcontractno" column="lendingcontractno" jdbcType="VARCHAR"/>
        <result property="banktrano" column="banktrano" jdbcType="VARCHAR"/>
        <result property="addword" column="addword" jdbcType="VARCHAR"/>
        <result property="bankgrouplist" column="bankgrouplist" jdbcType="INTEGER"/>
        <result property="consignflg" column="consignflg" jdbcType="VARCHAR"/>
        <result property="bankgroupflg" column="bankgroupflg" jdbcType="VARCHAR"/>
        <result property="ownextkey" column="ownextkey" jdbcType="VARCHAR"/>
        <result property="sbankname" column="sbankname" jdbcType="VARCHAR"/>
    </resultMap>

    <sql id="Base_Column_List">
        inr,ver,sta,levyno,opertype,actiondesc,leorgcode,transattr,loanertype,fintype,finkind,outorgcode,outorgname,outorgacct,outcountrycode,inorgcode,inorgname,inorgacct,incountrycode,finvouchmode,fincnyamt,currencycode,finstrdate,finenddate,ratetype,finrate,ratebenchmark,rateaddend,rateafreshlimit,rateunit,finstate,paymode,latepayamt,lendingcontractno,banktrano,addword,bankgrouplist,consignflg,bankgroupflg,ownextkey,sbankname
    </sql>

    <select id="selectByPrimaryKey" resultMap="BaseResultMap">
        select
            <include refid="Base_Column_List" />
        from tdf
        where inr = #{inr,jdbcType=VARCHAR}
    </select>

    <delete id="deleteByPrimaryKey">
        delete from tdf
        where inr = #{inr,jdbcType=VARCHAR}
    </delete>

    <insert id="insert">
        insert into tdf (<include refid="Base_Column_List" />)
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            #{inr,jdbcType=VARCHAR},
            #{ver,jdbcType=VARCHAR},
            #{sta,jdbcType=VARCHAR},
            #{levyno,jdbcType=VARCHAR},
            #{opertype,jdbcType=VARCHAR},
            #{actiondesc,jdbcType=VARCHAR},
            #{leorgcode,jdbcType=VARCHAR},
            #{transattr,jdbcType=VARCHAR},
            #{loanertype,jdbcType=VARCHAR},
            #{fintype,jdbcType=VARCHAR},
            #{finkind,jdbcType=VARCHAR},
            #{outorgcode,jdbcType=VARCHAR},
            #{outorgname,jdbcType=VARCHAR},
            #{outorgacct,jdbcType=VARCHAR},
            #{outcountrycode,jdbcType=VARCHAR},
            #{inorgcode,jdbcType=VARCHAR},
            #{inorgname,jdbcType=VARCHAR},
            #{inorgacct,jdbcType=VARCHAR},
            #{incountrycode,jdbcType=VARCHAR},
            #{finvouchmode,jdbcType=VARCHAR},
            #{fincnyamt,jdbcType=DECIMAL},
            #{currencycode,jdbcType=VARCHAR},
            #{finstrdate,jdbcType=DATE},
            #{finenddate,jdbcType=DATE},
            #{ratetype,jdbcType=VARCHAR},
            #{finrate,jdbcType=DECIMAL},
            #{ratebenchmark,jdbcType=VARCHAR},
            #{rateaddend,jdbcType=DECIMAL},
            #{rateafreshlimit,jdbcType=VARCHAR},
            #{rateunit,jdbcType=VARCHAR},
            #{finstate,jdbcType=VARCHAR},
            #{paymode,jdbcType=VARCHAR},
            #{latepayamt,jdbcType=DECIMAL},
            #{lendingcontractno,jdbcType=VARCHAR},
            #{banktrano,jdbcType=VARCHAR},
            #{addword,jdbcType=VARCHAR},
            #{bankgrouplist,jdbcType=INTEGER},
            #{consignflg,jdbcType=VARCHAR},
            #{bankgroupflg,jdbcType=VARCHAR},
            #{ownextkey,jdbcType=VARCHAR},
            #{sbankname,jdbcType=VARCHAR},
        </trim>
    </insert>

    <insert id="insertSelective">
        insert into tdf
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="inr != null">inr,</if>
            <if test="ver != null">ver,</if>
            <if test="sta != null">sta,</if>
            <if test="levyno != null">levyno,</if>
            <if test="opertype != null">opertype,</if>
            <if test="actiondesc != null">actiondesc,</if>
            <if test="leorgcode != null">leorgcode,</if>
            <if test="transattr != null">transattr,</if>
            <if test="loanertype != null">loanertype,</if>
            <if test="fintype != null">fintype,</if>
            <if test="finkind != null">finkind,</if>
            <if test="outorgcode != null">outorgcode,</if>
            <if test="outorgname != null">outorgname,</if>
            <if test="outorgacct != null">outorgacct,</if>
            <if test="outcountrycode != null">outcountrycode,</if>
            <if test="inorgcode != null">inorgcode,</if>
            <if test="inorgname != null">inorgname,</if>
            <if test="inorgacct != null">inorgacct,</if>
            <if test="incountrycode != null">incountrycode,</if>
            <if test="finvouchmode != null">finvouchmode,</if>
            <if test="fincnyamt != null">fincnyamt,</if>
            <if test="currencycode != null">currencycode,</if>
            <if test="finstrdate != null">finstrdate,</if>
            <if test="finenddate != null">finenddate,</if>
            <if test="ratetype != null">ratetype,</if>
            <if test="finrate != null">finrate,</if>
            <if test="ratebenchmark != null">ratebenchmark,</if>
            <if test="rateaddend != null">rateaddend,</if>
            <if test="rateafreshlimit != null">rateafreshlimit,</if>
            <if test="rateunit != null">rateunit,</if>
            <if test="finstate != null">finstate,</if>
            <if test="paymode != null">paymode,</if>
            <if test="latepayamt != null">latepayamt,</if>
            <if test="lendingcontractno != null">lendingcontractno,</if>
            <if test="banktrano != null">banktrano,</if>
            <if test="addword != null">addword,</if>
            <if test="bankgrouplist != null">bankgrouplist,</if>
            <if test="consignflg != null">consignflg,</if>
            <if test="bankgroupflg != null">bankgroupflg,</if>
            <if test="ownextkey != null">ownextkey,</if>
            <if test="sbankname != null">sbankname,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="inr != null">#{inr,jdbcType=VARCHAR}, </if>
            <if test="ver != null">#{ver,jdbcType=VARCHAR}, </if>
            <if test="sta != null">#{sta,jdbcType=VARCHAR}, </if>
            <if test="levyno != null">#{levyno,jdbcType=VARCHAR}, </if>
            <if test="opertype != null">#{opertype,jdbcType=VARCHAR}, </if>
            <if test="actiondesc != null">#{actiondesc,jdbcType=VARCHAR}, </if>
            <if test="leorgcode != null">#{leorgcode,jdbcType=VARCHAR}, </if>
            <if test="transattr != null">#{transattr,jdbcType=VARCHAR}, </if>
            <if test="loanertype != null">#{loanertype,jdbcType=VARCHAR}, </if>
            <if test="fintype != null">#{fintype,jdbcType=VARCHAR}, </if>
            <if test="finkind != null">#{finkind,jdbcType=VARCHAR}, </if>
            <if test="outorgcode != null">#{outorgcode,jdbcType=VARCHAR}, </if>
            <if test="outorgname != null">#{outorgname,jdbcType=VARCHAR}, </if>
            <if test="outorgacct != null">#{outorgacct,jdbcType=VARCHAR}, </if>
            <if test="outcountrycode != null">#{outcountrycode,jdbcType=VARCHAR}, </if>
            <if test="inorgcode != null">#{inorgcode,jdbcType=VARCHAR}, </if>
            <if test="inorgname != null">#{inorgname,jdbcType=VARCHAR}, </if>
            <if test="inorgacct != null">#{inorgacct,jdbcType=VARCHAR}, </if>
            <if test="incountrycode != null">#{incountrycode,jdbcType=VARCHAR}, </if>
            <if test="finvouchmode != null">#{finvouchmode,jdbcType=VARCHAR}, </if>
            <if test="fincnyamt != null">#{fincnyamt,jdbcType=DECIMAL}, </if>
            <if test="currencycode != null">#{currencycode,jdbcType=VARCHAR}, </if>
            <if test="finstrdate != null">#{finstrdate,jdbcType=DATE}, </if>
            <if test="finenddate != null">#{finenddate,jdbcType=DATE}, </if>
            <if test="ratetype != null">#{ratetype,jdbcType=VARCHAR}, </if>
            <if test="finrate != null">#{finrate,jdbcType=DECIMAL}, </if>
            <if test="ratebenchmark != null">#{ratebenchmark,jdbcType=VARCHAR}, </if>
            <if test="rateaddend != null">#{rateaddend,jdbcType=DECIMAL}, </if>
            <if test="rateafreshlimit != null">#{rateafreshlimit,jdbcType=VARCHAR}, </if>
            <if test="rateunit != null">#{rateunit,jdbcType=VARCHAR}, </if>
            <if test="finstate != null">#{finstate,jdbcType=VARCHAR}, </if>
            <if test="paymode != null">#{paymode,jdbcType=VARCHAR}, </if>
            <if test="latepayamt != null">#{latepayamt,jdbcType=DECIMAL}, </if>
            <if test="lendingcontractno != null">#{lendingcontractno,jdbcType=VARCHAR}, </if>
            <if test="banktrano != null">#{banktrano,jdbcType=VARCHAR}, </if>
            <if test="addword != null">#{addword,jdbcType=VARCHAR}, </if>
            <if test="bankgrouplist != null">#{bankgrouplist,jdbcType=INTEGER}, </if>
            <if test="consignflg != null">#{consignflg,jdbcType=VARCHAR}, </if>
            <if test="bankgroupflg != null">#{bankgroupflg,jdbcType=VARCHAR}, </if>
            <if test="ownextkey != null">#{ownextkey,jdbcType=VARCHAR}, </if>
            <if test="sbankname != null">#{sbankname,jdbcType=VARCHAR}, </if>
        </trim>
    </insert>

    <update id="updateByPrimaryKeySelective">
        update tdf
        <set>
            <if test="ver != null">ver = #{ver,jdbcType=VARCHAR},</if>
            <if test="sta != null">sta = #{sta,jdbcType=VARCHAR},</if>
            <if test="levyno != null">levyno = #{levyno,jdbcType=VARCHAR},</if>
            <if test="opertype != null">opertype = #{opertype,jdbcType=VARCHAR},</if>
            <if test="actiondesc != null">actiondesc = #{actiondesc,jdbcType=VARCHAR},</if>
            <if test="leorgcode != null">leorgcode = #{leorgcode,jdbcType=VARCHAR},</if>
            <if test="transattr != null">transattr = #{transattr,jdbcType=VARCHAR},</if>
            <if test="loanertype != null">loanertype = #{loanertype,jdbcType=VARCHAR},</if>
            <if test="fintype != null">fintype = #{fintype,jdbcType=VARCHAR},</if>
            <if test="finkind != null">finkind = #{finkind,jdbcType=VARCHAR},</if>
            <if test="outorgcode != null">outorgcode = #{outorgcode,jdbcType=VARCHAR},</if>
            <if test="outorgname != null">outorgname = #{outorgname,jdbcType=VARCHAR},</if>
            <if test="outorgacct != null">outorgacct = #{outorgacct,jdbcType=VARCHAR},</if>
            <if test="outcountrycode != null">outcountrycode = #{outcountrycode,jdbcType=VARCHAR},</if>
            <if test="inorgcode != null">inorgcode = #{inorgcode,jdbcType=VARCHAR},</if>
            <if test="inorgname != null">inorgname = #{inorgname,jdbcType=VARCHAR},</if>
            <if test="inorgacct != null">inorgacct = #{inorgacct,jdbcType=VARCHAR},</if>
            <if test="incountrycode != null">incountrycode = #{incountrycode,jdbcType=VARCHAR},</if>
            <if test="finvouchmode != null">finvouchmode = #{finvouchmode,jdbcType=VARCHAR},</if>
            <if test="fincnyamt != null">fincnyamt = #{fincnyamt,jdbcType=DECIMAL},</if>
            <if test="currencycode != null">currencycode = #{currencycode,jdbcType=VARCHAR},</if>
            <if test="finstrdate != null">finstrdate = #{finstrdate,jdbcType=DATE},</if>
            <if test="finenddate != null">finenddate = #{finenddate,jdbcType=DATE},</if>
            <if test="ratetype != null">ratetype = #{ratetype,jdbcType=VARCHAR},</if>
            <if test="finrate != null">finrate = #{finrate,jdbcType=DECIMAL},</if>
            <if test="ratebenchmark != null">ratebenchmark = #{ratebenchmark,jdbcType=VARCHAR},</if>
            <if test="rateaddend != null">rateaddend = #{rateaddend,jdbcType=DECIMAL},</if>
            <if test="rateafreshlimit != null">rateafreshlimit = #{rateafreshlimit,jdbcType=VARCHAR},</if>
            <if test="rateunit != null">rateunit = #{rateunit,jdbcType=VARCHAR},</if>
            <if test="finstate != null">finstate = #{finstate,jdbcType=VARCHAR},</if>
            <if test="paymode != null">paymode = #{paymode,jdbcType=VARCHAR},</if>
            <if test="latepayamt != null">latepayamt = #{latepayamt,jdbcType=DECIMAL},</if>
            <if test="lendingcontractno != null">lendingcontractno = #{lendingcontractno,jdbcType=VARCHAR},</if>
            <if test="banktrano != null">banktrano = #{banktrano,jdbcType=VARCHAR},</if>
            <if test="addword != null">addword = #{addword,jdbcType=VARCHAR},</if>
            <if test="bankgrouplist != null">bankgrouplist = #{bankgrouplist,jdbcType=INTEGER},</if>
            <if test="consignflg != null">consignflg = #{consignflg,jdbcType=VARCHAR},</if>
            <if test="bankgroupflg != null">bankgroupflg = #{bankgroupflg,jdbcType=VARCHAR},</if>
            <if test="ownextkey != null">ownextkey = #{ownextkey,jdbcType=VARCHAR},</if>
            <if test="sbankname != null">sbankname = #{sbankname,jdbcType=VARCHAR},</if>
        </set>
        where inr = #{inr,jdbcType=VARCHAR}
    </update>

    <update id="updateByPrimaryKey">
        update tdf
        <set>
            ver = #{ver,jdbcType=VARCHAR},
            sta = #{sta,jdbcType=VARCHAR},
            levyno = #{levyno,jdbcType=VARCHAR},
            opertype = #{opertype,jdbcType=VARCHAR},
            actiondesc = #{actiondesc,jdbcType=VARCHAR},
            leorgcode = #{leorgcode,jdbcType=VARCHAR},
            transattr = #{transattr,jdbcType=VARCHAR},
            loanertype = #{loanertype,jdbcType=VARCHAR},
            fintype = #{fintype,jdbcType=VARCHAR},
            finkind = #{finkind,jdbcType=VARCHAR},
            outorgcode = #{outorgcode,jdbcType=VARCHAR},
            outorgname = #{outorgname,jdbcType=VARCHAR},
            outorgacct = #{outorgacct,jdbcType=VARCHAR},
            outcountrycode = #{outcountrycode,jdbcType=VARCHAR},
            inorgcode = #{inorgcode,jdbcType=VARCHAR},
            inorgname = #{inorgname,jdbcType=VARCHAR},
            inorgacct = #{inorgacct,jdbcType=VARCHAR},
            incountrycode = #{incountrycode,jdbcType=VARCHAR},
            finvouchmode = #{finvouchmode,jdbcType=VARCHAR},
            fincnyamt = #{fincnyamt,jdbcType=DECIMAL},
            currencycode = #{currencycode,jdbcType=VARCHAR},
            finstrdate = #{finstrdate,jdbcType=DATE},
            finenddate = #{finenddate,jdbcType=DATE},
            ratetype = #{ratetype,jdbcType=VARCHAR},
            finrate = #{finrate,jdbcType=DECIMAL},
            ratebenchmark = #{ratebenchmark,jdbcType=VARCHAR},
            rateaddend = #{rateaddend,jdbcType=DECIMAL},
            rateafreshlimit = #{rateafreshlimit,jdbcType=VARCHAR},
            rateunit = #{rateunit,jdbcType=VARCHAR},
            finstate = #{finstate,jdbcType=VARCHAR},
            paymode = #{paymode,jdbcType=VARCHAR},
            latepayamt = #{latepayamt,jdbcType=DECIMAL},
            lendingcontractno = #{lendingcontractno,jdbcType=VARCHAR},
            banktrano = #{banktrano,jdbcType=VARCHAR},
            addword = #{addword,jdbcType=VARCHAR},
            bankgrouplist = #{bankgrouplist,jdbcType=INTEGER},
            consignflg = #{consignflg,jdbcType=VARCHAR},
            bankgroupflg = #{bankgroupflg,jdbcType=VARCHAR},
            ownextkey = #{ownextkey,jdbcType=VARCHAR},
            sbankname = #{sbankname,jdbcType=VARCHAR},
        </set>
        where inr = #{inr,jdbcType=VARCHAR}
    </update>

    <delete id="deleteByIds">
        delete from act where inr in
        <foreach item="item" index="index" collection="collection" open="(" separator="," close=")">
            #{item}
        </foreach>
    </delete>

    <delete id="dyncDelete">
        ${sql}
    </delete>

    <select id="dyncRead" resultMap="BaseResultMap">
        ${sql}
    </select>

</mapper>