<?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.epst.dao.EpostRcptRegMapper">

<!-- 전자우편 접수 등록 정보 매퍼
 ========== 변경 이력 ==========
 2023-10-11	JoJH 최초 작성
 ============================ -->

	<resultMap id="epostRcptRegRow" type="cokr.xit.fims.epst.EpostRcptReg">
		<result property="conKey"					column="CON_KEY" />					<!-- 외부연계식별키 -->
		<result property="conOrg"					column="CON_ORG" />					<!-- 외부기관구분코드 -->
		<result property="sndngId"					column="SNDNG_ID" />				<!-- 발송 ID -->
		<result property="rceptId"					column="RCEPT_ID" />				<!-- 접수우체국국기호 -->
		<result property="rceptYmd"					column="RCEPT_YMD" />				<!-- 접수 일자 -->
		<result property="dataCd"					column="DATA_CD" />					<!-- 접수코드 -->
		<result property="divKb"					column="DIV_KB" />					<!-- 취급구분 -->
		<result property="dfpayyn"					column="DFPAYYN" />					<!-- 결재방법 -->
		<result property="rcptKb"					column="RCPT_KB" />					<!-- 내용문 유형 -->
		<result property="sealCd"					column="SEAL_CD" />					<!-- 내용문 상세 종류 -->
		<result property="wordKb"					column="WORD_KB" />					<!-- 내용문 종류 -->
		<result property="mailCnt"					column="MAIL_CNT" />				<!-- 내용문 매수 -->
		<result property="recevCnt"					column="RECEV_CNT" />				<!-- 수취인 수 -->
		<result property="envCd"					column="ENV_CD" />					<!-- 봉투 종류 -->
		<result property="colorYn"					column="COLOR_YN" />				<!-- 칼라우편물 -->
		<result property="mmYn"						column="MM_YN" />					<!-- 메일머지 플래그 -->
		<result property="flexCd"					column="FLEX_CD" />					<!-- 이면구분 -->
		<result property="dmCnt"					column="DM_CNT" />					<!-- 동봉물 개수 -->
		<result property="sbFg"						column="SB_FG" />					<!-- 반송불필요 여부 -->
		<result property="apvlNb"					column="APVL_NB" />					<!-- 승인번호 -->
		<result property="sendDate"					column="SEND_DATE" />				<!-- 신청 일자 -->
		<result property="sendTime"					column="SEND_TIME" />				<!-- 전송 시간 -->
		<result property="relorsectCd"				column="RELORSECT_CD" />			<!-- 연계기관결제부서코드 -->
		<result property="recevSenderOrgCode"		column="RECEV_SENDER_ORG_CODE" />	<!-- 발송기관코드 -->
		<result property="recevSenderNm"			column="RECEV_SENDER_NM" />			<!-- 발송인명 -->
		<result property="recevSenderZipcode"		column="RECEV_SENDER_ZIPCODE" />	<!-- 발송인 우편번호 -->
		<result property="recevSenderAddr"			column="RECEV_SENDER_ADDR" />		<!-- 주소 -->
		<result property="recevSenderDetailaddr"	column="RECEV_SENDER_DETAILADDR" />	<!-- 상세주소 -->
		<result property="recevSenderDepartTel"		column="RECEV_SENDER_DEPART_TEL" />	<!-- 부과부서 전화번호 -->
		<result property="recevSenderDepartNm"		column="RECEV_SENDER_DEPART_NM" />	<!-- 부과부서 -->
		<result property="recevDivCd"				column="RECEV_DIV_CD" />			<!-- 등기구분 -->
		<result property="recevPrintDt"				column="RECEV_PRINT_DT" />			<!-- 출력일자 -->
		<result property="recevPrintYear"			column="RECEV_PRINT_YEAR" />		<!-- 출력연도 -->
		<result property="recevPrintMonth"			column="RECEV_PRINT_MONTH" />		<!-- 출력월 -->
		<result property="recevPrintDay"			column="RECEV_PRINT_DAY" />			<!-- 출력일 -->
		<result property="recevSenderFax"			column="RECEV_SENDER_FAX" />		<!-- 부과부서 팩스번호 -->
		<result property="recevSerderStaff"			column="RECEV_SERDER_STAFF" />		<!-- 부과부서 담당자 -->
		<result property="recevSenderEmail"			column="RECEV_SENDER_EMAIL" />		<!-- 부과부서 이메일 -->
		<result property="regVarData1"				column="REG_VAR_DATA1" />			<!-- 추가 데이터1 -->
		<result property="regVarData2"				column="REG_VAR_DATA2" />			<!-- 추가 데이터2 -->
		<result property="regVarData3"				column="REG_VAR_DATA3" />			<!-- 추가 데이터3 -->
		<result property="regVarData4"				column="REG_VAR_DATA4" />			<!-- 추가 데이터4 -->
		<result property="regVarData5"				column="REG_VAR_DATA5" />			<!-- 추가 데이터5 -->
		<result property="jobCd"					column="JOB_CD" />					<!-- 작업 코드 -->
		<result property="postPrcsSttsCd"			column="POST_PRCS_STTS_CD" />		<!-- 우편 처리 상태 -->
		<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" />					<!-- 삭제자 -->
	</resultMap>

    <sql id="selectEpostRcptReg">
        SELECT ERR.CON_KEY                 <!-- 외부연계식별키 -->
             , ERR.CON_ORG                 <!-- 외부기관구분코드 -->
             , ERR.SNDNG_ID                <!-- 발송 ID -->
             , ERR.RCEPT_ID                <!-- 접수우체국국기호 -->
             , ERR.RCEPT_YMD               <!-- 접수 일자 -->
             , ERR.DATA_CD                 <!-- 접수코드 -->
             , ERR.DIV_KB                  <!-- 취급구분 -->
             , (GET_CODE_NM('EGP002', ERR.DIV_KB)) AS DIV_KB_NM <!-- 취급 구분 명 -->
             , ERR.DFPAYYN                 <!-- 결재방법 -->
             , ERR.RCPT_KB                 <!-- 내용문 유형 -->
             , ERR.SEAL_CD                 <!-- 내용문 상세 종류 -->
             , ERR.WORD_KB                 <!-- 내용문 종류 -->
             , ERR.MAIL_CNT                <!-- 내용문 매수 -->
             , ERR.RECEV_CNT               <!-- 수취인 수 -->
             , ERR.ENV_CD                  <!-- 봉투 종류 -->
             , ERR.COLOR_YN                <!-- 칼라우편물 -->
             , ERR.MM_YN                   <!-- 메일머지 플래그 -->
             , ERR.FLEX_CD                 <!-- 이면구분 -->
             , ERR.DM_CNT                  <!-- 동봉물 개수 -->
             , ERR.SB_FG                   <!-- 반송불필요 여부 -->
             , ERR.APVL_NB                 <!-- 승인번호 -->
             , ERR.SEND_DATE               <!-- 신청 일자 -->
             , ERR.SEND_TIME               <!-- 전송 시간 -->
             , ERR.RELORSECT_CD            <!-- 연계기관결제부서코드 -->
             , ERR.RECEV_SENDER_ORG_CODE   <!-- 발송기관코드 -->
             , ERR.RECEV_SENDER_NM         <!-- 발송인명 -->
             , ERR.RECEV_SENDER_ZIPCODE    <!-- 발송인 우편번호 -->
             , ERR.RECEV_SENDER_ADDR       <!-- 주소 -->
             , ERR.RECEV_SENDER_DETAILADDR <!-- 상세주소 -->
             , ERR.RECEV_SENDER_DEPART_TEL <!-- 부과부서 전화번호 -->
             , ERR.RECEV_SENDER_DEPART_NM  <!-- 부과부서 -->
             , ERR.RECEV_DIV_CD            <!-- 등기구분 -->
             , ERR.RECEV_PRINT_DT          <!-- 출력일자 -->
             , ERR.RECEV_PRINT_YEAR        <!-- 출력연도 -->
             , ERR.RECEV_PRINT_MONTH       <!-- 출력월 -->
             , ERR.RECEV_PRINT_DAY         <!-- 출력일 -->
             , ERR.RECEV_SENDER_FAX        <!-- 부과부서 팩스번호 -->
             , ERR.RECEV_SERDER_STAFF      <!-- 부과부서 담당자 -->
             , ERR.RECEV_SENDER_EMAIL      <!-- 부과부서 이메일 -->
             , ERR.REG_VAR_DATA1           <!-- 추가 데이터1 -->
             , ERR.REG_VAR_DATA2           <!-- 추가 데이터2 -->
             , ERR.REG_VAR_DATA3           <!-- 추가 데이터3 -->
             , ERR.REG_VAR_DATA4           <!-- 추가 데이터4 -->
             , ERR.REG_VAR_DATA5           <!-- 추가 데이터5 -->
             , ERR.JOB_CD                  <!-- 작업 코드 -->
             , ERR.POST_PRCS_STTS_CD       <!-- 우편 처리 상태 코드 -->
             , (GET_CODE_NM('EGP012', ERR.POST_PRCS_STTS_CD))   AS POST_PRCS_STTS_NM <!-- 우편 처리 상태 명 -->
             , ERR.DEL_YN                  <!-- 삭제 여부 -->
             , ERR.REG_DT                  <!-- 등록 일시 -->
             , ERR.RGTR                    <!-- 등록자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = ERR.RGTR)   AS RGTR_NM <!-- 등록자 명 -->
             , ERR.MDFCN_DT                <!-- 수정 일시 -->
             , ERR.MDFR                    <!-- 수정자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = ERR.MDFR)   AS MDFR_NM <!-- 수정자 명 -->
             , ERR.DEL_DT                  <!-- 삭제 일시 -->
             , ERR.DLTR                    <!-- 삭제자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = ERR.DLTR)   AS DLTR_NM <!-- 삭제자 명 -->
          FROM TB_EPOST_RCPT_REG ERR
    </sql>

    <select id="selectEpostRcptRegList" parameterType="map" resultType="dataobject">/* 전자우편 접수 등록 목록 조회(epostRcptRegMapper.selectEpostRcptRegList) */
        <include refid="utility.paging-prefix" />
        <include refid="selectEpostRcptReg" />
         WHERE ERR.CON_ORG      = #{conOrg} <!-- 외부기관구분코드 -->
        <if test="relorsectCd != null">
           AND ERR.RELORSECT_CD = #{relorsectCd}    <!-- 연계기관결제부서코드 -->
        </if>
        <if test="schSendDateFrom != null">
           AND ERR.SEND_DATE <![CDATA[>=]]> #{schSendDateFrom}  <!-- 전송 일자 시작 -->
        </if>
        <if test="schSendDateTo != null">
           AND ERR.SEND_DATE <![CDATA[<=]]> #{schSendDateTo}    <!-- 전송 일자 종료 -->
        </if>
        <if test="schRceptYmdFrom != null">
           AND ERR.RCEPT_YMD <![CDATA[>=]]> #{schRceptYmdFrom}  <!-- 접수 일자 시작 -->
        </if>
        <if test="schRceptYmdTo != null">
           AND ERR.RCEPT_YMD <![CDATA[<=]]> #{schRceptYmdTo}    <!-- 접수 일자 종료 -->
        </if>
        <if test="postPrcsSttsCdFrom != null">
           AND ERR.POST_PRCS_STTS_CD <![CDATA[>=]]> #{postPrcsSttsCdFrom}   <!-- 우편 처리 상태 시작 -->
        </if>
        <if test="postPrcsSttsCdTo != null">
           AND ERR.POST_PRCS_STTS_CD <![CDATA[<=]]> #{postPrcsSttsCdTo}     <!-- 우편 처리 상태 종료 -->
        </if>
        <if test="delYn != null">
           AND ERR.DEL_YN       = #{delYn}  <!-- 삭제 여부 -->
        </if>
        <choose>
            <when test="schRegDateOpt == 'regDt'">
                <if test="schRegDateFrom != null">AND ERR.REG_DT <![CDATA[>=]]> CONCAT(#{schRegDateFrom},'000000') <!-- 등록 일자 시작 --></if>
                <if test="schRegDateTo != null">AND ERR.REG_DT <![CDATA[<=]]> CONCAT(#{schRegDateTo},'235959')   <!-- 등록 일자 종료 --></if>
            </when>
            <when test="schRegDateOpt == 'mdfcnDt'">
                <if test="schRegDateFrom != null">AND ERR.MDFCN_DT <![CDATA[>=]]> CONCAT(#{schRegDateFrom},'000000')   <!-- 수정 일자 시작 --></if>
                <if test="schRegDateTo != null">AND ERR.MDFCN_DT <![CDATA[<=]]> CONCAT(#{schRegDateTo},'235959')     <!-- 수정 일자 종료 --></if>
            </when>
            <otherwise />
        </choose>
        <choose>
            <when test="schRgtrOpt == 'rgtr'">
                <if test="schRgtrCd != null">AND ERR.RGTR         = #{schRgtrCd}  <!-- 등록자 코드 --></if>
            </when>
            <when test="schRgtrOpt == 'mdfr'"><if test="schRgtrCd != null">AND ERR.MDFR         = #{schRgtrCd}  <!-- 수정자 코드 --></if>
            </when>
            <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 == 'sendDate'"> ERR.SEND_DATE </when>
                        <when test="by == 'jobCd'"> ERR.JOB_CD </when>
                        <when test="by == 'divKb'"> ERR.DIV_KB </when>
                        <when test="by == 'rceptYmd'"> ERR.RCEPT_YMD </when>
                        <when test="by == 'rceptAmt'"> ERR.RCEPT_AMT </when>
                        <when test="by == 'conKey'"> ERR.CON_KEY </when>
                        <when test="by == 'recevCnt'"> ERR.RECEV_CNT </when>
                        <when test="by == 'postPrcsSttsCd'"> ERR.POST_PRCS_STTS_CD </when>
                    </choose>
                    <include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" />
                </when>
                <otherwise />
            </choose>
        </if>
        <include refid="utility.orderBy" />
        <include refid="utility.paging-suffix" />
    </select>

    <select id="selectEpostRcptRegs" parameterType="map" resultType="dataobject">/* 전자우편 접수 등록 객체 가져오기(epostRcptRegMapper.selectEpostRcptRegs) */
        <include refid="selectEpostRcptReg" />
        <where>
            <if test="postPrcsSttsCdFrom != null">AND ERR.CON_KEY  = #{conKey} <!-- 외부연계식별키 --></if>
            <if test="postPrcsSttsCdFrom != null">AND ERR.CON_ORG  = #{conOrg} <!-- 외부기관구분코드 --></if>
            <if test="postPrcsSttsCdFrom != null">AND ERR.SNDNG_ID = #{sndngId} <!-- 발송 ID --></if>
            <if test="delYn != null">AND ERR.DEL_YN   = #{delYn} <!-- 삭제 여부 --></if>
        </where>
        <include refid="utility.orderBy" />
    </select>

    <select id="selectEpostRcptRegDtlList" parameterType="map" resultType="dataobject">/* 전자우편 발송 상태 정보들을 가져오기(epostRcptRegMapper.selectEpostRcptRegDtlList) */
		<include refid="utility.paging-prefix" />
        SELECT ERR.CON_KEY                    <!-- 외부연계식별키 -->
             , ERR.CON_ORG                    <!-- 외부기관구분코드 -->
             , ERD.RGST_NMBR                  <!-- 등기 번호 -->
             , ERD.RECEV_CAR_OWNER_ZIPCODE    <!-- 우편번호 -->
             , ERD.RECEV_CAR_OWNER_ADDR       <!-- 주소 -->
             , ERD.RECEV_CAR_OWNER_DETAILADDR <!-- 상세주소 -->
             , ERD.RECEV_CAR_OWNER_NM         <!-- 소유자명 -->
             , ERD.REG_DT                     <!-- 등록 일시 -->
             , ERD.RGTR                       <!-- 등록자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = ERD.RGTR)   AS RGTR_NM <!-- 등록자 명 -->
             , ERD.MDFCN_DT                   <!-- 수정 일시 -->
             , ERD.MDFR                       <!-- 수정자 -->
             , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = ERD.MDFR)   AS MDFR_NM <!-- 수정자 명 -->
             , EDR.DELIVRSLTCD  <!-- 배달결과코드 -->
             , (GET_CODE_NM('EGP009', EDR.DELIVRSLTCD)) AS DELIVRSLTCD_NM   <!-- 배달결과코드 명 -->
             , EDR.NONDELIVREASNCD            <!-- 미배달사유코드 -->
             , EDR.NONDELIVREASNCDNM          <!-- 미배달사유명 -->
             , EDR.SUBRECPRSNNM               <!-- 수령인명 -->
             , EDR.RELRECPRSNCD               <!-- 수령인관계코드 -->
             , EDR.RELRECPRSNCDNM             <!-- 수령인관계명 -->
             , (CASE WHEN LENGTH(EDR.DELIVHHMI) = 4 THEN CONCAT(EDR.DELIVYMD, EDR.DELIVHHMI, '00')
                     ELSE CONCAT(EDR.DELIVYMD, EDR.DELIVHHMI)
                END)    AS DELIV_YMD_TM       <!-- 배달일시 -->
          FROM TB_EPOST_RCPT_REG        ERR
         INNER JOIN TB_EPOST_RCPT_DTL   ERD ON (ERR.CON_KEY      = ERD.CON_KEY)
    LEFT OUTER JOIN TB_EPOST_DLVR_RSLT  EDR ON (ERD.DLVR_RSLT_ID = EDR.DLVR_RSLT_ID)
         WHERE ERR.CON_KEY      = #{conKey}
           AND ERR.DEL_YN       = 'N'
        <include refid="utility.orderBy" />
		<include refid="utility.paging-suffix" />
    </select>

    <select id="selectEpostSenderRegSeq" parameterType="String" resultType="String">/* 전자우편 접수 CON_KEY 조회(epostRcptRegMapper.selectEpostSenderRegSeq) */
        SELECT LPAD(IFNULL(RIGHT(MAX(CON_KEY), 3), '000') + 1, 3, '0')  AS CON_KEY  <!-- 외부연계식별키 -->
          FROM TB_EPOST_RCPT_REG
         WHERE CON_KEY LIKE CONCAT(#{conKey}, '%')
    </select>

    <select id="selectEpostRgNo" parameterType="String" resultType="String">/* 전자우편 등기번호 조회(epostRcptRegMapper.selectEpostRgNo) */
        SELECT RG_NO        <!-- 등기 번호 -->
             , RG_NO_NEXT   <!-- 다음 등기 번호 -->
          FROM TB_EPOST_RG_NO
         WHERE SGG_CD           = #{sggCd}
           AND TASK_SE_CD       = #{taskSeCd}
           AND USE_PSBLTY_PSTN  = 'Y'
    </select>

    <select id="selectDeptSggInfo" parameterType="String" resultType="dataobject">/* 시군구 및 부서 정보 조회(epostRcptRegMapper.selectDeptSggInfo) */
        SELECT D.DEPT_CD                <!-- 부서 코드 -->
             , D.DEPT_NM                <!-- 부서 명 -->
             , D.DEPT_TELNO             <!-- 부서 전화번호 -->
             , D.DEPT_FXNO              <!-- 부서 팩스번호 -->
             , D.VRBACNT_LINK_SE_CD     <!-- 가상계좌 연계 구분 코드 -->
             , D.PSTOFC_NM              <!-- 우체국 명 -->
             , D.RG_NO_HEADER           <!-- 등기 번호 헤더 -->
             , D.SNDNG_LINK_SE_CD       <!-- 발송 연계 구분 코드 -->
             , D.EGP_CON_ORG            <!-- E그린 외부기관구분코드 -->
             , D.EGP_RCEPT_ID           <!-- E그린 접수우체국국기호 -->
             , D.EGP_APVL_NB            <!-- E그린 후납계약승인번호 -->
             , D.EGP_ESB_PATH           <!-- E그린 ESB경로 -->
             , D.EGP_CERT_CN            <!-- E그린 인증서CN -->
             , D.ENS_INTERFACE_ID       <!-- 세외수입 인터페이스ID -->
             , D.ENS_SOURCE_CD          <!-- 세외수입 소스코드 -->
             , D.ENS_TARGET_CD          <!-- 세외수입 타겟코드 -->
             , D.ENS_URL                <!-- 세외수입 URL -->
             , D.SRVR_OS                <!-- 서버 OS -->
             , S.SGG_CD                 <!-- 시군구 코드 -->
             , S.SGG_NM                 <!-- 시군구 명 -->
             , (GET_INST_LEADER(S.SGG_NM, S.INST_SE_CD))    AS SGG_LEADER   <!-- 시군구 기관 장 -->
             , S.INST_SE_CD             <!-- 기관 구분 코드 -->
             , S.INST_CD                <!-- 기관 코드 -->
             , S.INST_NM                <!-- 기관 명 -->
             , (GET_INST_LEADER(S.INST_NM, S.INST_SE_CD))   AS INST_LEADER  <!-- 기관 장 -->
             , S.INST_ADDR              <!-- 기관 주소 -->
             , S.INST_DADDR             <!-- 기관 상세주소 -->
             , S.INST_ZIP               <!-- 기관 우편번호 -->
             , S.UP_INST_CD             <!-- 상위 기관 코드 -->
             , S.UP_INST_NM             <!-- 상위 기관 명 -->
          FROM TB_DEPT      D
         INNER JOIN TB_SGG  S ON (D.SGG_CD = S.SGG_CD AND D.INST_CD = S.INST_CD)
         WHERE D.DEPT_CD    = #{deptCd}
           AND D.USE_YN     = 'Y'
    </select>

    <insert id="insertEpostRcptReg" parameterType="cokr.xit.fims.epst.EpostRcptReg">/* 전자우편 접수 등록 등록(epostRcptRegMapper.insertEpostRcptReg) */
        INSERT
          INTO TB_EPOST_RCPT_REG (
               CON_KEY                 <!-- 외부연계식별키 -->
             , CON_ORG                 <!-- 외부기관구분코드 -->
             , SNDNG_ID                <!-- 발송 ID -->
             , RCEPT_ID                <!-- 접수우체국국기호 -->
             , RCEPT_YMD               <!-- 접수 일자 -->
             , DATA_CD                 <!-- 접수코드 -->
             , DIV_KB                  <!-- 취급구분 -->
             , DFPAYYN                 <!-- 결재방법 -->
             , RCPT_KB                 <!-- 내용문 유형 -->
             , SEAL_CD                 <!-- 내용문 상세 종류 -->
             , WORD_KB                 <!-- 내용문 종류 -->
             , MAIL_CNT                <!-- 내용문 매수 -->
             , RECEV_CNT               <!-- 수취인 수 -->
             , ENV_CD                  <!-- 봉투 종류 -->
             , COLOR_YN                <!-- 칼라우편물 -->
             , MM_YN                   <!-- 메일머지 플래그 -->
             , FLEX_CD                 <!-- 이면구분 -->
             , DM_CNT                  <!-- 동봉물 개수 -->
             , SB_FG                   <!-- 반송불필요 여부 -->
             , APVL_NB                 <!-- 승인번호 -->
             , SEND_DATE               <!-- 신청 일자 -->
             , SEND_TIME               <!-- 전송 시간 -->
             , RELORSECT_CD            <!-- 연계기관결제부서코드 -->
             , RECEV_SENDER_ORG_CODE   <!-- 발송기관코드 -->
             , RECEV_SENDER_NM         <!-- 발송인명 -->
             , RECEV_SENDER_ZIPCODE    <!-- 발송인 우편번호 -->
             , RECEV_SENDER_ADDR       <!-- 주소 -->
             , RECEV_SENDER_DETAILADDR <!-- 상세주소 -->
             , RECEV_SENDER_DEPART_TEL <!-- 부과부서 전화번호 -->
             , RECEV_SENDER_DEPART_NM  <!-- 부과부서 -->
             , RECEV_DIV_CD            <!-- 등기구분 -->
             , RECEV_PRINT_DT          <!-- 출력일자 -->
             , RECEV_PRINT_YEAR        <!-- 출력연도 -->
             , RECEV_PRINT_MONTH       <!-- 출력월 -->
             , RECEV_PRINT_DAY         <!-- 출력일 -->
             , RECEV_SENDER_FAX        <!-- 부과부서 팩스번호 -->
             , RECEV_SERDER_STAFF      <!-- 부과부서 담당자 -->
             , RECEV_SENDER_EMAIL      <!-- 부과부서 이메일 -->
             , REG_VAR_DATA1           <!-- 추가 데이터1 -->
             , REG_VAR_DATA2           <!-- 추가 데이터2 -->
             , REG_VAR_DATA3           <!-- 추가 데이터3 -->
             , REG_VAR_DATA4           <!-- 추가 데이터4 -->
             , REG_VAR_DATA5           <!-- 추가 데이터5 -->
             , JOB_CD                  <!-- 작업 코드 -->
             , POST_PRCS_STTS_CD       <!-- 우편 처리 상태 -->
             , DEL_YN                  <!-- 삭제 여부 -->
             , REG_DT                  <!-- 등록 일시 -->
             , RGTR                    <!-- 등록자 -->
             , MDFCN_DT                <!-- 수정 일시 -->
             , MDFR                    <!-- 수정자 -->
        )
        VALUES (
               #{conKey}                <!-- 외부연계식별키 -->
             , #{conOrg}                <!-- 외부기관구분코드 -->
             , #{sndngId}               <!-- 발송 ID -->
             , #{rceptId}               <!-- 접수우체국국기호 -->
             , #{rceptYmd}              <!-- 접수 일자 -->
             , #{dataCd}                <!-- 접수코드 -->
             , #{divKb}                 <!-- 취급구분 -->
             , #{dfpayyn}               <!-- 결재방법 -->
             , #{rcptKb}                <!-- 내용문 유형 -->
             , #{sealCd}                <!-- 내용문 상세 종류 -->
             , #{wordKb}                <!-- 내용문 종류 -->
             , #{mailCnt}               <!-- 내용문 매수 -->
             , #{recevCnt}              <!-- 수취인 수 -->
             , #{envCd}                 <!-- 봉투 종류 -->
             , #{colorYn}               <!-- 칼라우편물 -->
             , #{mmYn}                  <!-- 메일머지 플래그 -->
             , #{flexCd}                <!-- 이면구분 -->
             , #{dmCnt}                 <!-- 동봉물 개수 -->
             , #{sbFg}                  <!-- 반송불필요 여부 -->
             , #{apvlNb}                <!-- 승인번호 -->
             , #{sendDate}              <!-- 신청 일자 -->
             , #{sendTime}              <!-- 전송 시간 -->
             , #{relorsectCd}           <!-- 연계기관결제부서코드 -->
             , #{recevSenderOrgCode}    <!-- 발송기관코드 -->
             , #{recevSenderNm}         <!-- 발송인명 -->
             , #{recevSenderZipcode}    <!-- 발송인 우편번호 -->
             , #{recevSenderAddr}       <!-- 주소 -->
             , #{recevSenderDetailaddr} <!-- 상세주소 -->
             , #{recevSenderDepartTel}  <!-- 부과부서 전화번호 -->
             , #{recevSenderDepartNm}   <!-- 부과부서 -->
             , #{recevDivCd}            <!-- 등기구분 -->
             , #{recevPrintDt}          <!-- 출력일자 -->
             , #{recevPrintYear}        <!-- 출력연도 -->
             , #{recevPrintMonth}       <!-- 출력월 -->
             , #{recevPrintDay}         <!-- 출력일 -->
             , #{recevSenderFax}        <!-- 부과부서 팩스번호 -->
             , #{recevSerderStaff}      <!-- 부과부서 담당자 -->
             , #{recevSenderEmail}      <!-- 부과부서 이메일 -->
             , #{regVarData1}           <!-- 추가 데이터1 -->
             , #{regVarData2}           <!-- 추가 데이터2 -->
             , #{regVarData3}           <!-- 추가 데이터3 -->
             , #{regVarData4}           <!-- 추가 데이터4 -->
             , #{regVarData5}           <!-- 추가 데이터5 -->
             , #{jobCd}                 <!-- 작업 코드 -->
             , #{postPrcsSttsCd}        <!-- 우편 처리 상태 -->
             , 'N'                      <!-- 삭제 여부 -->
             ,<include refid="utility.now" /> <!-- 등록 일시 -->
             , #{createdBy}             <!-- 등록자 -->
             ,<include refid="utility.now" /> <!-- 수정 일시 -->
             , #{modifiedBy}            <!-- 수정자 -->
        )
    </insert>

    <update id="updateEpostRcptReg" parameterType="cokr.xit.fims.epst.EpostRcptReg">/* 전자우편 접수 등록 수정(epostRcptRegMapper.updateEpostRcptReg) */
        UPDATE TB_EPOST_RCPT_REG
           SET RCEPT_YMD            = #{rceptYmd}                  <!-- 접수 일자 -->
             , CON_ORG              = #{conOrg}                    <!-- 접수우체국국기호 -->
             , RCEPT_ID             = #{rceptId}                   <!-- 접수우체국국기호 -->
             , DATA_CD              = #{dataCd}                    <!-- 접수코드 -->
             , DIV_KB               = #{divKb}                     <!-- 취급구분 -->
             , DFPAYYN              = #{dfpayyn}                   <!-- 결재방법 -->
             , RCPT_KB              = #{rcptKb}                    <!-- 내용문 유형 -->
             , SEAL_CD              = #{sealCd}                    <!-- 내용문 상세 종류 -->
             , WORD_KB              = #{wordKb}                    <!-- 내용문 종류 -->
             , MAIL_CNT             = #{mailCnt}                   <!-- 내용문 매수 -->
             , RECEV_CNT            = #{recevCnt}                  <!-- 수취인 수 -->
             , ENV_CD               = #{envCd}                     <!-- 봉투 종류 -->
             , COLOR_YN             = #{colorYn}                   <!-- 칼라우편물 -->
             , MM_YN                = #{mmYn}                      <!-- 메일머지 플래그 -->
             , FLEX_CD              = #{flexCd}                    <!-- 이면구분 -->
             , DM_CNT               = #{dmCnt}                     <!-- 동봉물 개수 -->
             , SB_FG                = #{sbFg}                      <!-- 반송불필요 여부 -->
             , APVL_NB              = #{apvlNb}                    <!-- 승인번호 -->
             , SEND_DATE            = #{sendDate}                  <!-- 신청 일자 -->
             , SEND_TIME            = #{sendTime}                  <!-- 전송 시간 -->
             , RELORSECT_CD         = #{relorsectCd}               <!-- 연계기관결제부서코드 -->
             , RECEV_SENDER_ORG_CODE= #{recevSenderOrgCode}        <!-- 발송기관코드 -->
             , RECEV_SENDER_NM      = #{recevSenderNm}             <!-- 발송인명 -->
             , RECEV_SENDER_ZIPCODE = #{recevSenderZipcode}        <!-- 발송인 우편번호 -->
             , RECEV_SENDER_ADDR    = #{recevSenderAddr}           <!-- 주소 -->
             , RECEV_SENDER_DETAILADDR  = #{recevSenderDetailaddr} <!-- 상세주소 -->
             , RECEV_SENDER_DEPART_TEL  = #{recevSenderDepartTel}  <!-- 부과부서 전화번호 -->
             , RECEV_SENDER_DEPART_NM   = #{recevSenderDepartNm}   <!-- 부과부서 -->
             , RECEV_DIV_CD         = #{recevDivCd}                <!-- 등기구분 -->
             , RECEV_PRINT_DT       = #{recevPrintDt}              <!-- 출력일자 -->
             , RECEV_PRINT_YEAR     = #{recevPrintYear}            <!-- 출력연도 -->
             , RECEV_PRINT_MONTH    = #{recevPrintMonth}           <!-- 출력월 -->
             , RECEV_PRINT_DAY      = #{recevPrintDay}             <!-- 출력일 -->
             , RECEV_SENDER_FAX     = #{recevSenderFax}            <!-- 부과부서 팩스번호 -->
             , RECEV_SERDER_STAFF   = #{recevSerderStaff}          <!-- 부과부서 담당자 -->
             , RECEV_SENDER_EMAIL   = #{recevSenderEmail}          <!-- 부과부서 이메일 -->
             , REG_VAR_DATA1        = #{regVarData1}               <!-- 추가 데이터1 -->
             , REG_VAR_DATA2        = #{regVarData2}               <!-- 추가 데이터2 -->
             , REG_VAR_DATA3        = #{regVarData3}               <!-- 추가 데이터3 -->
             , REG_VAR_DATA4        = #{regVarData4}               <!-- 추가 데이터4 -->
             , REG_VAR_DATA5        = #{regVarData5}               <!-- 추가 데이터5 -->
             , JOB_CD               = #{jobCd}                     <!-- 작업 코드 -->
             , POST_PRCS_STTS_CD    = #{postPrcsSttsCd}            <!-- 우편 처리 상태 -->
             , MDFCN_DT             =<include refid="utility.now" /> <!-- 수정 일시 -->
             , MDFR                 = #{modifiedBy}                <!-- 수정자 -->
         WHERE CON_KEY              = #{conKey}
           AND DEL_YN               = 'N'
    </update>

    <update id="deleteEpostRcptReg" parameterType="cokr.xit.fims.epst.EpostRcptReg">/* 전자우편 접수 등록 삭제(epostRcptRegMapper.deleteEpostRcptReg) */
        UPDATE TB_EPOST_RCPT_REG
           SET DEL_YN = 'Y'          <!-- 삭제 여부 -->
             , DEL_DT =<include refid="utility.now" />  <!-- 삭제 일시 -->
             , DLTR   = #{modifiedBy} <!-- 삭제자 -->
        <choose>
            <when test="conKeys != null">
         WHERE CON_KEY   IN (           <!-- 외부연계식별키s -->
                <foreach collection="conKeys" item="conKey" separator=","> #{conKey} </foreach>
               )
            </when>
            <otherwise>
         WHERE CON_KEY   = #{conKey}    <!-- 외부연계식별키 -->
            </otherwise>
        </choose>
           AND DEL_YN    = 'N'
    </update>

    <update id="updatePostPrcsSttsCd" parameterType="cokr.xit.fims.epst.EpostRcptReg">/* 전자우편 접수 등록 정보의 우편 처리 상태 코드를 수정(epostRcptRegMapper.updatePostPrcsSttsCd) */
        UPDATE TB_EPOST_RCPT_REG
           SET POST_PRCS_STTS_CD = #{postPrcsSttsCd} <!-- 우편 처리 상태 -->
             , MDFCN_DT          =<include refid="utility.now" />   <!-- 수정 일시 -->
             , MDFR              = #{modifiedBy}     <!-- 수정자 -->
         WHERE CON_KEY           = #{conKey}
           AND DEL_YN            = 'N'
    </update>

</mapper>
