<?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="cokr.xit.fims.levy.dao.RdctMapper">

<!-- 과태료 감경 대장 정보 매퍼
 ========== 변경 이력 ==========
 2023-08-30	JoJH 최초 작성
 ============================ -->

    <resultMap id="rdctRow" type="cokr.xit.fims.levy.Rdct">
        <result property="rdctId"       column="RDCT_ID" />     <!-- 감경 ID -->
        <result property="crdnId"       column="CRDN_ID" />     <!-- 단속 ID -->
        <result property="rtpyrId"      column="RTPYR_ID" />    <!-- 납부자 ID -->
        <result property="rdctYmd"      column="RDCT_YMD" />    <!-- 감경 일자 -->
        <result property="rdctRsnCd"    column="RDCT_RSN_CD" />	<!-- 감경 사유 코드 -->
        <result property="rdctAmt"      column="RDCT_AMT" />    <!-- 감경 금액 -->
        <result property="etcCn"        column="ETC_CN" />      <!-- 기타 내용 -->
        <result property="delYn"        column="DEL_YN" />      <!-- 삭제 여부 -->
        <result property="createdAt"    column="REG_DT" />      <!-- 등록 일시 -->
        <result property="createdBy"    column="RGTR" />        <!-- 등록자 -->
        <result property="lastModified" column="MDFCN_DT" />    <!-- 수정 일시 -->
        <result property="modifiedBy"   column="MDFR" />        <!-- 수정자 -->
        <result property="removedAt"    column="DEL_DT" />      <!-- 삭제 일시 -->
        <result property="removedBy"    column="DLTR" />        <!-- 삭제자 -->
        <result property="delRsn"       column="DEL_RSN" />     <!-- 삭제 사유 -->
    </resultMap>

    <sql id="selectList">
        SELECT R.RDCT_ID            <!-- 감경 ID -->
             , R.RDCT_YMD           <!-- 감경 일자 -->
             , R.RDCT_RSN_CD        <!-- 감경 사유 코드 -->
             , (SELECT GET_CODE_NM('FIM019', R.RDCT_RSN_CD) FROM DUAL) AS RDCT_RSN_NM <!-- 감경 사유 명 -->
             , R.RDCT_AMT           <!-- 감경 금액 -->
             , R.ETC_CN             <!-- 감액 기타 내용 -->
             , R.DEL_YN             <!-- 삭제 여부 -->
             , R.REG_DT             <!-- 등록 일시 -->
             , R.RGTR               <!-- 등록자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = R.RGTR) AS RGTR_NM      <!-- 등록자 명 -->
             , R.MDFCN_DT           <!-- 수정 일시 -->
             , R.MDFR               <!-- 수정자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = R.MDFR) AS MDFR_NM      <!-- 수정자 명 -->
             , C.CRDN_ID            <!-- 단속 ID -->
             , C.SGG_CD             <!-- 시군구 코드 -->
             , C.TASK_SE_CD         <!-- 업무 구분 코드 -->
             , (SELECT GET_CODE_NM('FIM054', C.TASK_SE_CD) FROM DUAL)   AS TASK_SE_NM   <!-- 업무 구분 명 -->
             , C.CRDN_YMD           <!-- 단속 일자 -->
             , (CONCAT(C.CRDN_YMD,C.CRDN_TM))   AS CRDN_YMD_TM  <!-- 단속 일시 -->
             , C.VHRNO              <!-- 차량 번호 -->
             , C.CRDN_STDG_NM       <!-- 단속 법정동 명 -->
             , C.CRDN_ROAD_NM       <!-- 단속 도로 명 -->
             , C.CRDN_PLC           <!-- 단속 장소 -->
             , C.FFNLG_CRDN_AMT     <!-- 과태료 단속 금액 -->
             , C.FFNLG_RDCRT        <!-- 과태료 감경율 -->
             , C.FFNLG_AMT          <!-- 과태료 금액 -->
             , C.ADVNTCE_AMT        <!-- 사전통지금액 -->
             , C.CRDN_STTS_CD       <!-- 단속 상태 코드 -->
             , (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM <!-- 단속 상태 명 -->
             , CA.CRDN_SE_CD        <!-- 단속 구분 코드 -->
             , CA.CRDN_SPAREA_CD    <!-- 단속 특별구역 코드 -->
             , CA.PRK_PSBLTY_RSLT_CD <!-- 주차 가능 결과 코드 -->
             , (SELECT GET_CODE_NM('FIM002', CA.CRDN_SE_CD) FROM DUAL)  AS CRDN_SE_NM   <!-- 단속 구분 명 -->
             , (SELECT GET_CODE_NM('FIM007', CA.CRDN_SPAREA_CD) FROM DUAL)  AS CRDN_SPAREA_NM   <!-- 단속 특별구역 명 -->
             , (SELECT GET_CODE_NM('FIM034', CA.PRK_PSBLTY_RSLT_CD) FROM DUAL) AS PRK_PSBLTY_RSLT_NM <!-- 주차 가능 결과 명 -->
             , P.RTPYR_ID           <!-- 납부자 ID -->
             , P.RTPYR_SE_CD        <!-- 납부자 구분 코드 -->
             , (SELECT GET_CODE_NM('FIM011', P.RTPYR_SE_CD) FROM DUAL)  AS RTPYR_SE_NM  <!-- 납부자 구분 명 -->
             , P.RTPYR_NO           <!-- 납부자 번호 -->
             , P.RTPYR_NM           <!-- 납부자 명 -->
             , PA.ADDR_SN           <!-- 주소 일련번호 -->
             , PA.ZIP               <!-- 우편번호 -->
             , PA.ADDR              <!-- 주소 -->
             , PA.DTL_ADDR          <!-- 상세 주소 -->
             , L.LEVY_ID            <!-- 부과 ID -->
             , L.LEVY_PCPTAX        <!-- 부과 본세 -->
             , L.LEVY_ADAMT         <!-- 부과 가산금 -->
             , L.ISPY_INT           <!-- 분납 이자 -->
             , L.RCVMT_PCPTAX       <!-- 수납 본세 -->
             , L.RCVMT_ADAMT        <!-- 수납 가산금 -->
             , L.RDAMT_PCPTAX       <!-- 감액 본세 -->
             , L.RDAMT_ADAMT        <!-- 감액 가산금 -->
             , L.LAST_AMT           <!-- 최종 금액 -->
             , L.LEVY_PCPTAX   + L.LEVY_ADAMT   AS LEVY_AMT     <!-- 부과 금액 -->
             , L.RCVMT_PCPTAX  + L.RCVMT_ADAMT  AS RCVMT_AMT    <!-- 수납 금액 -->
             , L.RDAMT_PCPTAX  + L.RDAMT_ADAMT  AS RDAMT_AMT    <!-- 감액 금액 -->
          FROM TB_RDCT            R
         INNER JOIN TB_CRDN       C  ON (R.CRDN_ID  = C.CRDN_ID)
         INNER JOIN TB_CRDN_ADI   CA ON (C.CRDN_ID  = CA.CRDN_ID)
    LEFT OUTER JOIN TB_PAYER      P  ON (C.RTPYR_ID = P.RTPYR_ID)
    LEFT OUTER JOIN TB_PAYER_ADDR PA ON (C.RTPYR_ID = PA.RTPYR_ID AND C.ADDR_SN = PA.ADDR_SN)
    LEFT OUTER JOIN TB_LEVY       L  ON (C.CRDN_ID  = L.CRDN_ID AND L.DEL_YN = 'N')
    </sql>

    <select id="selectRdctList" parameterType="map" resultType="dataobject">/* 과태료 감경 대장 목록 조회(rdctMapper.selectRdctList) */
        <include refid="utility.paging-prefix" />
        <include refid="selectList" />
        <where>
            <if test="schRdctYmdFrom != null">
           AND R.RDCT_YMD <![CDATA[>=]]> #{schRdctYmdFrom}    <!-- 감경 일자 시작 -->
            </if>
            <if test="schRdctYmdTo != null">
           AND R.RDCT_YMD <![CDATA[<=]]> #{schRdctYmdTo}      <!-- 감경 일자 시작 -->
            </if>
            <if test="schRdctRsnCd != null">
           AND R.RDCT_RSN_CD = #{schRdctRsnCd}    <!-- 감경 사유 코드 -->
            </if>
            <if test="delYn != null">
           AND R.DEL_YN     =  #{delYn}     <!-- 삭제 여부 -->
            </if>
            <if test="schCrdnYmdFrom != null">
           AND C.CRDN_YMD <![CDATA[>=]]> #{schCrdnYmdFrom}  <!-- 단속 일자 시작 -->
            </if>
            <if test="schCrdnYmdTo != null">
           AND C.CRDN_YMD <![CDATA[<=]]> #{schCrdnYmdTo}    <!-- 단속 일자 종료 -->
            </if>
            <if test="schVhrno != null">
           AND C.VHRNO      =  #{schVhrno}  <!-- 차량번호 -->
            </if>
            <if test="crdnId != null">
           AND C.CRDN_ID    =  #{crdnId}    <!-- 단속 ID -->
            </if>
            <if test="sggCd != null">
           AND C.SGG_CD     =  #{sggCd}     <!-- 시군구 코드 -->
            </if>
            <if test="taskSeCd != null">
           AND C.TASK_SE_CD =  #{taskSeCd}  <!-- 업무 구분 코드 -->
            </if>
           AND C.DEL_YN     =  'N'          <!-- 단속 삭제 여부 -->
            <choose>
                <when test="schRegDateOpt == 'regDt'">
                    <if test="schRegDateFrom != null">
           AND R.REG_DT <![CDATA[>=]]> CONCAT(#{schRegDateFrom},'000000')   <!-- 등록 일자 시작 -->
                    </if>
                    <if test="schRegDateTo != null">
           AND R.REG_DT <![CDATA[<=]]> CONCAT(#{schRegDateTo},'235959')     <!-- 등록 일자 종료 -->
                    </if>
                </when>
                <when test="schRegDateOpt == 'mdfcnDt'">
                    <if test="schRegDateFrom != null">
           AND R.MDFCN_DT <![CDATA[>=]]> CONCAT(#{schRegDateFrom},'000000') <!-- 수정 일자 시작 -->
                    </if>
                    <if test="schRegDateTo != null">
           AND R.MDFCN_DT <![CDATA[<=]]> CONCAT(#{schRegDateTo},'235959')   <!-- 수정 일자 종료 -->
                    </if>
                </when>
                <otherwise>
                </otherwise>
            </choose>
            <choose>
                <when test="schRgtrOpt == 'rgtr'">
                    <if test="schRgtrCd != null">
           AND R.RGTR       =  #{schRgtrCd}     <!-- 등록자 코드 -->
                    </if>
                </when>
                <when test="schRgtrOpt == 'mdfr'">
                    <if test="schRgtrCd != null">
           AND R.MDFR       =  #{schRgtrCd}     <!-- 수정자 코드 -->
                    </if>
                </when>
                <otherwise>
                </otherwise>
            </choose>
            <if test="@org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(by) and @org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(term)">
                <choose>
                    <when test="mainOption == 'codeValue' or mainOption == 'match' or mainOption == 'ymd'">
                        <include refid="dynamicSearch.start" />
                        <choose>
                            <when test="by == 'rdctYmd'"> R.RDCT_YMD </when>
                            <when test="by == 'rdctRsnCd'"> R.RDCT_RSN_CD </when>
                            <when test="by == 'rdctAmt'"> R.RDCT_AMT </when>
                            <when test="by == 'rdctEtcCn'"> R.ETC_CN </when>
                            <when test="by == 'crdnYmd'"> C.CRDN_YMD </when>
                            <when test="by == 'vhrno'"> C.VHRNO </when>
                            <when test="by == 'crdnStdgNm'"> C.CRDN_STDG_NM </when>
                            <when test="by == 'crdnPlc'"> C.CRDN_PLC </when>
                            <when test="by == 'ffnlgCrdnAmt'"> C.FFNLG_CRDN_AMT </when>
                            <when test="by == 'ffnlgAmt'"> C.FFNLG_AMT </when>
                            <when test="by == 'advntceAmt'"> C.ADVNTCE_AMT </when>
                            <when test="by == 'crdnSttsCd'"> C.CRDN_STTS_CD </when>
                            <when test="by == 'rtpyrSeCd'"> P.RTPYR_SE_CD </when>
                            <when test="by == 'rtpyrNo'"> P.RTPYR_NO </when>
                            <when test="by == 'rtpyrNm'"> P.RTPYR_NM </when>
                            <when test="by == 'zip'"> PA.ZIP </when>
                            <when test="by == 'addr'"> PA.ADDR </when>
                            <when test="by == 'dtlAddr'"> PA.DTL_ADDR </when>
                            <when test="by == 'vltnArtcl'"> V.VLTN_ARTCL </when>
                        </choose>
                        <include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" />
                    </when>
                    <otherwise>
                    </otherwise>
                </choose>
            </if>
        </where>
        <include refid="utility.orderBy" />
        <include refid="utility.paging-suffix" />
    </select>

    <sql id="select">
        SELECT C.CRDN_ID        <!-- 단속 ID -->
             , C.SGG_CD         <!-- 시군구 코드 -->
             , C.TASK_SE_CD     <!-- 업무 구분 코드 -->
             , C.VHRNO          <!-- 차량 번호 -->
             , C.FFNLG_CRDN_AMT <!-- 과태료 단속 금액 -->
             , C.FFNLG_RDCRT AS WKSN_RDCRT <!-- 과태료 감경율 -->
             , C.FFNLG_AMT      <!-- 과태료 금액 -->
             , C.ADVNTCE_AMT    <!-- 사전통지금액 -->
             , C.CRDN_STTS_CD   <!-- 단속 상태 코드 -->
             , (CONCAT(C.CRDN_YMD,C.CRDN_TM)) AS CRDN_YMD_TM    <!-- 단속 일시 -->
             , (GET_CODE_NM('FIM010', C.CRDN_STTS_CD)) AS CRDN_STTS_NM  <!-- 단속 상태 명 -->
             , L.LEVY_ID        <!-- 부과 ID -->
             , L.LAST_AMT       <!-- 최종 금액 -->
             , L.LEVY_PCPTAX   + LEVY_ADAMT  AS LEVY_AMT    <!-- 부과 금액 -->
             , L.RCVMT_PCPTAX  + RCVMT_ADAMT AS RCVMT_AMT   <!-- 수납 금액 -->
             , L.RDAMT_PCPTAX  + RDAMT_ADAMT AS RDAMT_AMT   <!-- 감액 금액 -->
             , P.RTPYR_ID       <!-- 납부자 ID -->
             , P.RTPYR_NO       <!-- 납부자 번호 -->
             , P.RTPYR_NM       <!-- 납부자 명 -->
             , R.RDCT_ID        <!-- 감경 ID -->
             , R.RDCT_YMD       <!-- 감경 일자 -->
             , R.RDCT_RSN_CD    <!-- 감경 사유 코드 -->
             , (GET_CODE_NM('FIM019', R.RDCT_RSN_CD)) AS RDCT_RSN_NM    <!-- 감경 사유 명 -->
             , R.RDCT_AMT       <!-- 감경 금액 -->
             , R.ETC_CN         <!-- 감액 기타 내용 -->
             , R.DEL_YN         <!-- 삭제 여부 -->
             , R.REG_DT         <!-- 등록 일시 -->
             , R.RGTR           <!-- 등록자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = R.RGTR) AS RGTR_NM      <!-- 등록자 명 -->
             , R.MDFCN_DT       <!-- 수정 일시 -->
             , R.MDFR           <!-- 수정자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = R.MDFR) AS MDFR_NM      <!-- 수정자 명 -->
             , R.DEL_DT         <!-- 삭제 일시 -->
             , R.DLTR           <!-- 삭제자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = R.DLTR) AS DLTR_NM      <!-- 삭제자 명 -->
          FROM TB_CRDN          C
         INNER JOIN TB_PAYER    P  ON (C.RTPYR_ID = P.RTPYR_ID)
    LEFT OUTER JOIN TB_LEVY     L  ON (C.CRDN_ID  = L.CRDN_ID AND L.DEL_YN = 'N')
    LEFT OUTER JOIN TB_RDCT     R  ON (C.CRDN_ID  = R.CRDN_ID AND R.DEL_YN = 'N')
    </sql>

    <select id="selectRdcts" parameterType="map" resultType="dataobject">/* 과태료 감경 대장 객체 가져오기(rdctMapper.selectRdcts) */
        <include refid="select" />
        <where>
            <if test="rdctIds != null">
           AND R.RDCT_ID  IN (             <!-- 감경 Ids -->
                <foreach collection="rdctIds" item="rdctId" separator=","> #{rdctId} </foreach>
               )
            </if>
            <if test="rdctId != null">
           AND R.RDCT_ID  =  #{rdctId}    <!-- 감경 ID -->
            </if>
            <if test="crdnId != null">
           AND C.CRDN_ID   =  #{crdnId}     <!-- 단속 ID -->
           AND C.DEL_YN    =  'N'           <!-- 삭제 여부 -->
            </if>
        </where>
        <include refid="utility.orderBy" />
    </select>

    <insert id="insertRdct" parameterType="cokr.xit.fims.levy.Rdct">/* 과태료 감경 대장 등록(rdctMapper.insertRdct) */
        <selectKey resultType="string" keyProperty="rdctId" keyColumn="NEW_ID" order="BEFORE">
            <include refid="numbering.keyBySggAndYear">
                <property name="TABLE_NAME" value="TB_RDCT" />
                <property name="TABLE_KEY" value="RDCT_ID" />
                <property name="sggCd" value="#{sggCd}" />
                <property name="pad" value="20" />
            </include>
        </selectKey>
        INSERT
          INTO TB_RDCT (
               RDCT_ID      <!-- 감경 ID -->
             , CRDN_ID      <!-- 단속 ID -->
             , RTPYR_ID     <!-- 납부자 ID -->
             , RDCT_YMD     <!-- 감경 일자 -->
             , RDCT_RSN_CD  <!-- 감경 사유 코드 -->
             , RDCT_AMT     <!-- 감경 금액 -->
             , ETC_CN       <!-- 기타 내용 -->
             , DEL_YN       <!-- 삭제 여부 -->
             , REG_DT       <!-- 등록 일시 -->
             , RGTR         <!-- 등록자 -->
             , MDFCN_DT     <!-- 수정 일시 -->
             , MDFR         <!-- 수정자 -->
        )
        VALUES (
               #{rdctId}       <!-- 감경 ID -->
             , #{crdnId}        <!-- 단속 ID -->
             , #{rtpyrId}       <!-- 납부자 ID -->
             , #{rdctYmd}       <!-- 감경 일자 -->
             , #{rdctRsnCd}     <!-- 감경 사유 코드 -->
             , #{rdctAmt}       <!-- 감경 금액 -->
             , #{etcCn}         <!-- 기타 내용 -->
             , 'N'              <!-- 삭제 여부 -->
             , <include refid="utility.now" />  <!-- 등록 일시 -->
             , #{createdBy}     <!-- 등록자 -->
             , <include refid="utility.now" />  <!-- 수정 일시 -->
             , #{modifiedBy}    <!-- 수정자 -->
        )
    </insert>

    <update id="updateRdct" parameterType="cokr.xit.fims.levy.Rdct">/* 과태료 감경 대장 수정(rdctMapper.updateRdct) */
        UPDATE TB_RDCT
           SET RDCT_YMD     = #{rdctYmd}    <!-- 감경 일자 -->
             , RDCT_RSN_CD  = #{rdctRsnCd}  <!-- 감경 사유 코드 -->
             , RDCT_AMT     = #{rdctAmt}    <!-- 감경 금액 -->
             , ETC_CN       = #{etcCn}      <!-- 기타 내용 -->
             , MDFCN_DT     = <include refid="utility.now" />   <!-- 수정 일시 -->
             , MDFR         = #{modifiedBy} <!-- 수정자 -->
         WHERE RDCT_ID      = #{rdctId}     <!-- 감경 ID -->
           AND DEL_YN       = 'N'
     </update>

    <update id="deleteRdct" parameterType="cokr.xit.fims.levy.Rdct">/* 과태료 감경 대장 삭제(rdctMapper.deleteRdct) */
        UPDATE TB_RDCT
           SET DEL_YN       = 'Y'           <!-- 삭제 여부 -->
             , DEL_DT       = <include refid="utility.now" />   <!-- 삭제 일시 -->
             , DLTR         = #{modifiedBy} <!-- 삭제자 -->
             , DEL_RSN      = #{delRsn}     <!-- 삭제 사유 -->
         WHERE RDCT_ID      = #{rdctId}     <!-- 감경 ID -->
           AND DEL_YN       = 'N'
     </update>

	<select id="selectCrdn" parameterType="map" resultType="dataobject">/* 단속 대장 객체 가져오기(rdctMapper.selectCrdn) */
        SELECT C.CRDN_ID            <!-- 단속 ID -->
             , C.SGG_CD             <!-- 시군구 코드 -->
             , C.TASK_SE_CD         <!-- 업무 구분 코드 -->
             , C.VHRNO              <!-- 차량번호 -->
             , C.FFNLG_CRDN_AMT     <!-- 과태료 단속 금액 -->
             , C.FFNLG_RDCRT        <!-- 과태료 감경율 -->
             , C.FFNLG_AMT          <!-- 과태료 금액 -->
             , C.CRDN_STTS_CD       <!-- 단속 상태 코드 -->
             , T.ADVNTCE_RDCRT      <!-- 사전통지 감경 율 -->
             , T.WKSN_RDCRT         <!-- 사회적약자 감경 율 -->
             , P.RTPYR_ID           <!-- 납부자 ID -->
             , P.RTPYR_NO           <!-- 납부자 번호 -->
             , P.RTPYR_NM           <!-- 납부자 명 -->
             , L.LEVY_ID            <!-- 부과 ID -->
             , L.DUDT_YMD           <!-- 납기 일자 -->
             , L.LEVY_PCPTAX        <!-- 부과 본세 -->
             , L.LEVY_ADAMT         <!-- 부과 가산금 -->
             , L.ISPY_INT           <!-- 분납 이자 -->
             , L.RCVMT_PCPTAX       <!-- 수납 본세 -->
             , L.RCVMT_ADAMT        <!-- 수납 가산금 -->
             , L.RDAMT_PCPTAX       <!-- 감액 본세 -->
             , L.RDAMT_ADAMT        <!-- 감액 가산금 -->
             , R.RDCT_ID           <!-- 감경 ID -->
             , <include refid="utility.today" />     AS TODAY    <!-- 오늘 일자 -->
             , C.FFNLG_CRDN_AMT * T.WKSN_RDCRT / 100 AS CALC_RDCT_AMT    <!-- 감경 금액 -->
             , (SELECT GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM     <!-- 단속 상태 명 -->
          FROM TB_CRDN          C
         INNER JOIN TB_TASK     T  ON (C.SGG_CD   = T.SGG_CD AND C.TASK_SE_CD = T.TASK_SE_CD AND T.USE_YN = 'Y')
    LEFT OUTER JOIN TB_PAYER    P  ON (C.RTPYR_ID = P.RTPYR_ID)
    LEFT OUTER JOIN TB_LEVY     L  ON (C.CRDN_ID  = L.CRDN_ID AND L.DEL_YN = 'N')
    LEFT OUTER JOIN TB_RDCT     R  ON (C.CRDN_ID  = R.CRDN_ID AND R.DEL_YN = 'N')
        <where>
            <if test="rdctId != null">
           AND R.RDCT_ID    =  #{rdctId}    <!-- 감경 ID -->
            </if>
            <if test="crdnId != null">
           AND C.CRDN_ID    =  #{crdnId}    <!-- 단속 ID -->
            </if>
           AND C.DEL_YN     =  'N'          <!-- 삭제 여부 -->
        </where>
	</select>

    <update id="updateCrdnRdct" parameterType="cokr.xit.fims.crdn.Crdn">/* 단속 대장 과태료 감경 금액 수정(rdctMapper.updateCrdnRdct) */
        UPDATE TB_CRDN
           SET FFNLG_RDCRT      = #{ffnlgRdcrt}     <!-- 과태료 감경율 -->
             , FFNLG_AMT        = #{ffnlgAmt}       <!-- 과태료 금액 -->
             , ADVNTCE_AMT      = #{advntceAmt}     <!-- 사전통지 금액 -->
             , MDFCN_DT         = <include refid="utility.now" />   <!-- 수정 일시 -->
             , MDFR             = #{modifiedBy}     <!-- 수정자 -->
         WHERE CRDN_ID          = #{crdnId}         <!-- 단속 ID -->
           AND DEL_YN           = 'N'               <!-- 삭제 여부 -->
     </update>

</mapper>
