계도장발송현황 화면 수정

main
mjkhan21 3 months ago
parent 1549b9cf6a
commit f8c25d86f7

@ -20,6 +20,8 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>17</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
</properties>
<repositories>
@ -169,12 +171,12 @@
<version>23.04.01-SNAPSHOT</version>
</dependency>
<!-- epost 연계 -->
<!-- epost 연계
<dependency>
<groupId>cokr.xit.interfaces</groupId>
<artifactId>xit-epost</artifactId>
<version>23.04.01-SNAPSHOT</version>
</dependency>
</dependency> -->
<!-- 포스트플러스 연계 -->
<dependency>

@ -226,7 +226,7 @@ public class Crdn extends AbstractEntity {
setVin(vehicle.getVin());
setVhclNm(vehicle.getCnm());
setVhclColr(vehicle.getColor_nm());
setVhclCpct(vehicle.getTkcar_pscap_co());
setVhclCpct(toInt(vehicle.getTkcar_pscap_co()));
setUseFuelCd(vehicle.getUse_fuel_code());
setFfnlgCarmdlCd(fineCarModel(vehicle.getVhcty_asort_code(), vehicle.getMxmm_ldg()));
setErsrRegYmd(vehicle.getErsr_regist_de());

@ -1,6 +1,5 @@
package cokr.xit.fims.sndb.web;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@ -11,7 +10,6 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.poi.ss.usermodel.CellStyle;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
@ -55,6 +53,9 @@ import cokr.xit.fims.sprt.dao.IntegrationSearchMapper;
import cokr.xit.fims.sprt.service.IntegrationSearchService;
import cokr.xit.fims.sprt.service.bean.MediaBean;
import cokr.xit.fims.task.Task;
import cokr.xit.fims.wpm.WoopyonMoaRequest;
import cokr.xit.fims.wpm.service.WoopyonMoaService;
import cokr.xit.foundation.Downloadable;
import cokr.xit.foundation.UserInfo;
import cokr.xit.foundation.data.DataObject;
@ -166,6 +167,8 @@ public class Sndb01Controller extends ApplicationController {
protected OutsourcingStngBean outsourcingStngBean;
@Resource(name="integrationSearchMapper")
private IntegrationSearchMapper integrationSearchMapper;
@Resource(name="woopyonMoaService")
private WoopyonMoaService woopyonMoaService;
/** (sndb/sndb01/010-main) .
* @return /sndb/sndb01/010-main
@ -481,31 +484,15 @@ public class Sndb01Controller extends ApplicationController {
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("계고장 발송상세" + "_목록_" + now() + ".xlsx"));
} else {
try (InputStream input = new ClassPathResource("template/" + template).getInputStream()) {
int rowIndex = 1;
XLSWriter xlsx = new XLSWriter().template(input).worksheet(0);
for (DataObject row: list) {
xlsx.cell(rowIndex, 0)
.rowValues(List.of("규격", 25, 1)) // 규격, 중량, 통수
.cell(rowIndex, 3)
.rowValues(List.of(
row.get("RCPN_NM"), // 수취인
row.get("RCPN_ZIP"), // 우편번호
row.get("RCPN_ADDR"), // 기본주소
row.get("RCPN_DTL_ADDR"), // 상세주소
blankIfEmpty(row.get("RTPYR_MBL_TELNO")), // 휴대폰
row.get("SNDNG_DTL_ID"), // 문서번호 <- 발송상세아이디
row.get("TTL_NM"), // 문서제목
blankIfEmpty(row.get("ETC_CN")) // 비고
));
++rowIndex;
}
return new ModelAndView("downloadView")
.addObject("download", xlsx.getDownloadable().setFilename("우편등록_" + now() + ".xls"));
} catch (Exception e) {
throw runtimeException(e);
}
WoopyonMoaRequest wreq = new WoopyonMoaRequest()
.setTemplate(template)
.setSndngDtlList(list)
.setStandardYN("규격")
.setWeight(25)
.setPieceCount(1);
Downloadable downloadable = woopyonMoaService.downloadRequest(wreq);
return new ModelAndView("downloadView")
.addObject("download", downloadable.setFilename("우편등록_" + now() + ".xls"));
}
}
}

@ -0,0 +1,116 @@
package cokr.xit.fims.wpm;
import java.util.List;
import java.util.function.BiConsumer;
import cokr.xit.foundation.AbstractEntity;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class WoopyonMoa extends AbstractEntity {
public static final List<BiConsumer<WoopyonMoa, String>> setters(List<String> headers) {
return headers.stream()
.map(header -> {
BiConsumer<WoopyonMoa, String> setter = switch (header) {
case "번호" -> (row, str) -> row.setNo(toInt(str));
case "접수우체국" -> (row, str) -> row.setRegistPostOffice(str);
case "발송상태" -> (row, str) -> row.setDeliveryStatus(str);
case "일반번호" -> (row, str) -> row.setGeneralNo(str);
case "등기번호", "창구접수등기번호" -> (row, str) -> row.setRegistrationNo(str);
case "환부여부" -> (row, str) -> row.setReturnYN(str);
case "규격", "규격여부" -> (row, str) -> row.setStandardYN(str);
case "중량" -> (row, str) -> row.setWeight(toInt(str));
case "통수" -> (row, str) -> row.setPieceCount(toInt(str));
case "요금" -> (row, str) -> row.setFee(toLong(str));
case "비고" -> (row, str) -> row.setRemark(str);
case "수취인" -> (row, str) -> row.setPayee(str);
case "우편번호" -> (row, str) -> row.setZipCode(str);
case "기본주소" -> (row, str) -> row.setAddress(str);
case "상세주소" -> (row, str) -> row.setDetailAddress(str);
case "문서번호" -> (row, str) -> row.setDocNo(str);
case "문서제목" -> (row, str) -> row.setDocTitle(str);
case "담당부서" -> (row, str) -> row.setDeptName(str);
case "담당자" -> (row, str) -> row.setManager(str);
case "배달우체국" -> (row, str) -> row.setDeliveryPostOffice(str);
case "배달결과" -> (row, str) -> row.setDeliveryResult(str);
case "반송사유" -> (row, str) -> row.setReturnReason(str);
case "배달일" -> (row, str) -> row.setDeliveryDate(str);
case "수령인" -> (row, str) -> row.setRecipient(str);
case "수령인과의 관계" -> (row, str) -> row.setRecipientRelation(str);
case "등록일" -> (row, str) -> row.setCreatedAt(str);
case "연락처" -> (row, str) -> row.setContact(str);
case "발송일" -> (row, str) -> row.setMailingDate(str);
case "수취인 전화번호" -> (row, str) -> row.setRecipientTelno(str);
case "휴대폰", "수취인 핸드폰번호" -> (row, str) -> row.setRecipientMobileNo(str);
default -> null;
};
return setter;
})
.filter(setter -> setter != null)
.toList();
}
/** 번호 */
private int no;
/** 접수우체국 */
private String registPostOffice;
/** 발송상태 */
private String deliveryStatus;
/** 일반번호 */
private String generalNo;
/** 창구접수등기번호 */
private String registrationNo;
/** 환부여부 */
private String returnYN;
/** 규격여부 */
private String standardYN;
/** 중량 */
private int weight;
/** 통수 */
private int pieceCount;
/** 요금 */
private long fee;
/** 비고 */
private String remark;
/** 수취인 */
private String payee;
/** 우편번호 */
private String zipCode;
/** 기본주소 */
private String address;
/** 상세주소 */
private String detailAddress;
/** 문서번호 */
private String docNo;
/** 문서제목 */
private String docTitle;
/** 담당부서 */
private String deptName;
/** 담당자 */
private String manager;
/** 배달우체국 */
private String deliveryPostOffice;
/** 배달결과 */
private String deliveryResult;
/** 반송사유 */
private String returnReason;
/** 배달일 */
private String deliveryDate;
/** 수령인 */
private String recipient;
/** 수령인과의 관계 */
private String recipientRelation;
/** 연락처 */
private String contact;
/** 발송일 */
private String mailingDate;
/** 수취인 전화번호 */
private String recipientTelno;
/** 수취인 핸드폰번호 */
private String recipientMobileNo;
/** 등록일 */
private String createdAt;
/** 사용여부 */
private String useYN;
}

@ -0,0 +1,27 @@
package cokr.xit.fims.wpm;
import java.util.List;
import cokr.xit.foundation.component.ServiceRequest;
import cokr.xit.foundation.data.DataObject;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
@Getter
@Setter
@Accessors(chain = true)
public class WoopyonMoaRequest extends ServiceRequest {
private static final long serialVersionUID = 1L;
/** 템플릿 */
private String template;
/** 규격여부 */
private String standardYN;
/** 중량 */
private int weight;
/** 통수 */
private int pieceCount;
private List<DataObject> sndngDtlList;
}

@ -0,0 +1,12 @@
package cokr.xit.fims.wpm.service;
import java.io.InputStream;
import cokr.xit.fims.wpm.WoopyonMoaRequest;
import cokr.xit.foundation.Downloadable;
public interface WoopyonMoaService {
Downloadable downloadRequest(WoopyonMoaRequest req);
int updateStatus(InputStream input);
}

@ -0,0 +1,70 @@
package cokr.xit.fims.wpm.service.bean;
import java.io.InputStream;
import java.util.List;
import java.util.function.BiConsumer;
import javax.annotation.Resource;
import org.springframework.core.io.ClassPathResource;
import org.springframework.stereotype.Component;
import cokr.xit.base.docs.xls.XLSReader;
import cokr.xit.base.docs.xls.XLSWriter;
import cokr.xit.fims.sndb.service.bean.SndngDtlBean;
import cokr.xit.fims.wpm.WoopyonMoa;
import cokr.xit.fims.wpm.WoopyonMoaRequest;
import cokr.xit.foundation.Downloadable;
import cokr.xit.foundation.component.AbstractBean;
import cokr.xit.foundation.data.DataObject;
@Component("woopyonMoaBean")
public class WoopyonMoaBean extends AbstractBean {
/** 발송 상세 정보 Bean */
@Resource(name = "sndngDtlBean")
private SndngDtlBean sndngDtlBean;
public Downloadable downloadRequest(WoopyonMoaRequest req) {
try (InputStream input = getTemplate(req.getTemplate())) {
int rowIndex = 1;
XLSWriter xlsx = new XLSWriter().template(input).worksheet(0);
for (DataObject row: req.getSndngDtlList()) {
xlsx.cell(rowIndex, 0)
.rowValues(List.of(req.getStandardYN(), req.getWeight(), req.getPieceCount())) // 규격, 중량, 통수
.cell(rowIndex, 3)
.rowValues(List.of(
row.get("RCPN_NM"), // 수취인
row.get("RCPN_ZIP"), // 우편번호
row.get("RCPN_ADDR"), // 기본주소
row.get("RCPN_DTL_ADDR"), // 상세주소
blankIfEmpty(row.get("RTPYR_MBL_TELNO")), // 휴대폰
row.get("SNDNG_DTL_ID"), // 문서번호 <- 발송상세아이디
row.get("TTL_NM"), // 문서제목
blankIfEmpty(row.get("ETC_CN")) // 비고
));
++rowIndex;
}
return xlsx.getDownloadable();
} catch (Exception e) {
throw runtimeException(e);
}
}
private InputStream getTemplate(String template) throws Exception {
return new ClassPathResource("template/" + template).getInputStream();
}
public void updateStatus(InputStream input) {
List<WoopyonMoa> read = parse(input);
}
static List<WoopyonMoa> parse(InputStream input) {
XLSReader xlsx = new XLSReader().open(input).worksheet(0);
List<BiConsumer<WoopyonMoa, String>> setters = WoopyonMoa.setters(xlsx.rowValues(1));
return xlsx.readValues(2, WoopyonMoa::new, (row, index, str) -> setters.get(index).accept(row, str), null)
.filter(row -> !isEmpty(row.getDocNo()))
.toList();
}
}

@ -0,0 +1,29 @@
package cokr.xit.fims.wpm.service.bean;
import java.io.InputStream;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.fims.wpm.WoopyonMoaRequest;
import cokr.xit.fims.wpm.service.WoopyonMoaService;
import cokr.xit.foundation.Downloadable;
import cokr.xit.foundation.component.AbstractServiceBean;
@Service("woopyonMoaService")
public class WoopyonMoaServiceBean extends AbstractServiceBean implements WoopyonMoaService {
@Resource(name = "woopyonMoaBean")
private WoopyonMoaBean woopyonMoaBean;
@Override
public Downloadable downloadRequest(WoopyonMoaRequest req) {
return woopyonMoaBean.downloadRequest(req);
}
@Override
public int updateStatus(InputStream input) {
WoopyonMoaBean.parse(input);
return 0;
}
}

@ -63,64 +63,64 @@
</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
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) */
@ -153,37 +153,22 @@
</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>
<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>
<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>
</otherwise>
<otherwise />
</choose>
<choose>
<when test="schRgtrOpt == 'rgtr'">
<if test="schRgtrCd != null">
AND ERR.RGTR = #{schRgtrCd} <!-- 등록자 코드 -->
</if>
<if test="schRgtrCd != null">AND ERR.RGTR = #{schRgtrCd} <!-- 등록자 코드 --></if>
</when>
<when test="schRgtrOpt == 'mdfr'">
<if test="schRgtrCd != null">
AND ERR.MDFR = #{schRgtrCd} <!-- 수정자 코드 -->
</if>
<when test="schRgtrOpt == 'mdfr'"><if test="schRgtrCd != null">AND ERR.MDFR = #{schRgtrCd} <!-- 수정자 코드 --></if>
</when>
<otherwise>
</otherwise>
<otherwise />
</choose>
<if test="@org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(by) and @org.egovframe.rte.fdl.string.EgovStringUtil@isNotEmpty(term)">
<choose>
@ -201,8 +186,7 @@
</choose>
<include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" />
</when>
<otherwise>
</otherwise>
<otherwise />
</choose>
</if>
<include refid="utility.orderBy" />
@ -212,47 +196,39 @@
<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>
<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 <!-- 수정자 명 -->
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 <!-- 수령인관계명 -->
, 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 <!-- 배달일시 -->
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)
@ -317,167 +293,167 @@
<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 <!-- 수정자 -->
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} <!-- 주소 -->
#{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} <!-- 수정자 -->
, #{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} <!-- 주소 -->
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} <!-- 수정자 -->
, 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} <!-- 삭제자 -->
SET DEL_YN = 'Y' <!-- 삭제 여부 -->
, DEL_DT =<include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{modifiedBy} <!-- 삭제자 -->
<choose>
<when test="conKeys != null">
WHERE CON_KEY IN ( <!-- 외부연계식별키s -->
@ -493,11 +469,11 @@
<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'
SET POST_PRCS_STTS_CD = #{postPrcsSttsCd} <!-- 우편 처리 상태 -->
, MDFCN_DT =<include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{modifiedBy} <!-- 수정자 -->
WHERE CON_KEY = #{conKey}
AND DEL_YN = 'N'
</update>
</mapper>

@ -1,834 +0,0 @@
<?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.interfaces.epost.dao.EmailRequestMapper">
<!-- 전자우편 신청 정보 매퍼
========== 변경 이력 ==========
2023-07-03 mjkhan 최초 작성
============================ -->
<select id="selectSendingRequestList" parameterType="map" resultType="dataobject">/* 전자우편 접수 전송 대상 조회(emailRequestMapper.selectSendingRequestList) */
SELECT CON_ORG <!-- 외부기관구분코드 -->
, RCEPT_ID <!-- 접수우체국국기호 -->
, 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 <!-- 동봉물 개수, 없다면 '0' -->
, SB_FG <!-- 반송불필요여부 -->
, APVL_NB <!-- 승인번호 -->
, SEND_DATE <!-- 신청일자 -->
, SEND_TIME <!-- 전송시간 -->
, A.CON_KEY <!-- 외부 연계 식별키 -->
, RELORSECT_CD <!-- 연계기관결제부서코드 -->
, RGST_NMBR CON_DATA <!-- 외부 연계 추가 데이터 -->
, RECEV_SENDER_NM SENDER_NM <!-- 발송인명 -->
, RECEV_SENDER_ZIPCODE SENDER_ZIPCODE <!-- 우편번호 -->
, RECEV_SENDER_ADDR SENDER_ADDR <!-- 주소(시, 구) -->
, RECEV_SENDER_DETAILADDR SENDER_DTAILADDR <!-- 상세주소 -->
, A.CON_KEY SENDER_DATA <!-- 발송인별 추가 데이터 -->
, @row_no := CASE WHEN @con_key = A.CON_KEY THEN @row_no + 1
ELSE 1
END SQL_CNT <!-- 수취인순번 -->
, @con_key := A.CON_KEY _PREV_CON
, RECEV_CAR_OWNER_NM RECEV_NM <!-- 수취인명 -->
, RECEV_CAR_OWNER_ZIPCODE RECEV_ZIPCODE <!-- 우편번호 -->
, RECEV_CAR_OWNER_ADDR RECEV_ADDR <!-- 주소(시, 구) -->
, RECEV_CAR_OWNER_DETAILADDR RECEV_DTAILADDR <!-- 상세주소 -->
, RGST_NMBR <!-- 등기번호 -->
, 'NULL' RECEV_DATA <!-- 수취인별 추가 데이터 -->
, 'NULL' TEL_NUMBER1 <!-- 수취인별 전화번호(앞) -->
, 'NULL' TEL_NUMBER2 <!-- 수취인별 전화번호(중간) -->
, 'NULL' TEL_NUMBER3 <!-- 수취인별 전화번호(끝) -->
, 'NULL' PHONE_NUMBER1 <!-- 수취인별핸드폰번호(앞) -->
, 'NULL' PHONE_NUMBER2 <!-- 수취인별핸드폰번호(중간) -->
, 'NULL' PHONE_NUMBER3 <!-- 수취인별핸드폰번호(끝) -->
, 'NULL' RETURN_NM <!-- 회송처 -->
, 'NULL' RETURN_ZIPCODE <!-- 회송처 우편번호 -->
, 'NULL' RETURN_ADDR <!-- 회송처 주소 -->
, 'NULL' RETURN_DTAILADDR <!-- 회송처 상세주소 -->
, NULL ATTACH_NM <!-- 첨부파일 -->
, 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_SEQ <!-- 일련번호 -->
, RECEV_CODE <!-- 발송코드 -->
, RECEV_BAR1D <!-- 바코드 -->
, RECEV_BAR2D <!-- 이차원바코드 -->
, RECEV_BILL_NUMBER <!-- 고지번호 -->
, RECEV_DOC_CD1 <!-- 문서종류1 -->
, RECEV_DOC_CD2 <!-- 문서종류2 -->
, RECEV_DOC_CD3 <!-- 문서종류3 -->
, RECEV_DOC_CD4 <!-- 문서종류4 -->
, RECEV_DOC_CD5 <!-- 문서종류5 -->
, RECEV_SUBJ1 <!-- 과목명1 -->
, RECEV_SUBJ2 <!-- 과목명2 -->
, RECEV_SUBJ3 <!-- 과목명3 -->
, RECEV_VIOLATE_DT <!-- 위반일시 -->
, RECEV_VIOLATE_DONG <!-- 위반동 -->
, RECEV_VIOLATE_PLACE <!-- 위반장소 -->
, RECEV_LAWS <!-- 법조항 -->
, RECEV_PAY_NUMBER1 <!-- 납부번호1 -->
, RECEV_PAY_NUMBER2 <!-- 납부번호2 -->
, RECEV_OCR0 <!-- OCR0 -->
, RECEV_OCR1 <!-- OCR1 -->
, RECEV_OCR2 <!-- OCR2 -->
, RECEV_ONLINE_PAY_NUMBER <!-- 전자납부번호 -->
, VRACTNO RECEV_VACCOUNT_NUMBER <!-- 가상계좌번호 -->
, RECEV_FINE_PRICE <!-- 과태료 -->
, RECEV_PAY_PRICE <!-- 납부금액 -->
, RECEV_PAY_DT <!-- 납부기한 -->
, RECEV_PAY_IN_DATE <!-- 납기내기한 -->
, RECEV_PAY_IN_PRICE <!-- 납기내금액 -->
, RECEV_PAY_IN_ADD_PRICE <!-- 납기내가산금 -->
, RECEV_PAY_IN_DEFAULT_PRICE <!-- 납기내합계금액 -->
, RECEV_PAY_OUT_DATE <!-- 납기후기한 -->
, RECEV_PAY_OUT_PRICE <!-- 납기후금액 -->
, RECEV_PAY_OUT_ADD_PRICE <!-- 납기후가산금 -->
, RECEV_PAY_OUT_DEFAULT_PRICE <!-- 납기후합계금액 -->
, RECEV_CAR_NUMBER <!-- 차량번호 -->
, RECEV_CAR_OWNER_ZIPCODE <!-- 우편번호 -->
, RECEV_CAR_OWNER_ADDR <!-- 주소(시, 구) -->
, RECEV_CAR_OWNER_DETAILADDR <!-- 상세주소 -->
, RECEV_CAR_OWNER_NM <!-- 소유자명 -->
, RECEV_CAR_OWNER_SSN <!-- 주민번호(생년월일) -->
, RECEV_PRINT_DT <!-- 출력일자 -->
, RECEV_PRINT_YEAR <!-- 출력년도 -->
, RECEV_PRINT_MONTH <!-- 출력월 -->
, RECEV_PRINT_DAY <!-- 출력일 -->
, RECEV_EVIDENCE_NUMBER <!-- 증거번호 -->
, RECEV_PHOTO_CNT <!-- 사진장수 -->
, RECEV_PHOTO_FILENAME1 <!-- 사진파일명1 -->
, RECEV_PHOTO_FILENAME2 <!-- 사진파일명2 -->
, RECEV_PHOTO_FILENAME3 <!-- 사진파일명3 -->
, RECEV_PHOTO_FILENAME4 <!-- 사진파일명4 -->
, REG_VAR_DATA1 RECV_NOTICE_CONTS <!-- 주.정차위반과태료납부 안내 -->
, 'NULL' RECEV_TEMP_DATA1 <!-- 추가데이터1 -->
, 'NULL' RECEV_TEMP_DATA2 <!-- 추가데이터2 -->
, 'NULL' RECEV_TEMP_DATA3 <!-- 추가데이터3 -->
, DTL_VAR_DATA1 RECEV_TEMP_DATA4 <!-- 추가데이터4 (계도 메일 제목) -->
, DTL_VAR_DATA2 RECEV_TEMP_DATA5 <!-- 추가데이터5 (계도 메일 내용) -->
, RECEV_SENDER_FAX <!-- 부과부서 팩스번호 -->
, RECEV_SERDER_STAFF <!-- 부과부서 담당자 -->
, RECEV_SENDER_EMAIL <!-- 부과부서 이메일 -->
, VRACTNO2 RECEV_TEMP_DATA6 <!-- 추가데이터6 -->
, VRACTNO3 RECEV_TEMP_DATA7 <!-- 추가데이터7 -->
, VRACTNO4 RECEV_TEMP_DATA8 <!-- 추가데이터8 -->
, VRACTNO5 RECEV_TEMP_DATA9 <!-- 추가데이터9 -->
, VRACTNO6 RECEV_TEMP_DATA10 <!-- 추가데이터10 -->
, VRACTNO7 RECEV_TEMP_DATA11 <!-- 추가데이터11 -->
, VRACTNO8 RECEV_TEMP_DATA12 <!-- 추가데이터12 -->
, VRACTNO9 RECEV_TEMP_DATA13 <!-- 추가데이터13 -->
, VRACTNO10 RECEV_TEMP_DATA14 <!-- 추가데이터14 -->
, VRACTNO11 RECEV_TEMP_DATA15 <!-- 추가데이터15 -->
FROM TB_EPOST_RCPT_REG A
, TB_EPOST_RCPT_DTL B
WHERE POST_PRCS_STTS_CD = '01'
AND A.CON_KEY = B.CON_KEY
ORDER BY A.CON_KEY, RGST_NMBR, RECEV_SEQ</select>
<resultMap id="emailRequestRow" type="cokr.xit.interfaces.epost.EmailRequest"> <!-- 전자우편 신청 -->
<result property="conKey" column="CON_KEY" /> <!-- 외부연계식별키 -->
<result property="rceptId" column="RCEPT_ID" /> <!-- 접수우체국국기호 -->
<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="sndngId" column="SNDNG_ID" /> <!-- 발송 ID -->
<result property="jobCd" column="JOB_CD" /> <!-- 작업 코드 -->
<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="postProcStt" column="POST_PRCS_STTS_CD" /> <!-- 우편 처리 상태 -->
<result property="rceptYmd" column="RCEPT_YMD" /> <!-- 접수 일자 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
</resultMap>
<sql id="select">SELECT CON_KEY <!-- 외부연계식별키 -->
, RCEPT_ID <!-- 접수우체국국기호 -->
, 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 <!-- 부과부서 이메일 -->
, SNDNG_ID <!-- 발송 ID -->
, JOB_CD <!-- 작업 코드 -->
, REG_VAR_DATA1 <!-- 추가 데이터1 (주.정차위반과태료납부 안내) -->
, REG_VAR_DATA2 <!-- 추가 데이터2 -->
, REG_VAR_DATA3 <!-- 추가 데이터3 -->
, REG_VAR_DATA4 <!-- 추가 데이터4 -->
, REG_VAR_DATA5 <!-- 추가 데이터5 -->
, POST_PRCS_STTS_CD <!-- 우편 처리 상태 -->
, RCEPT_YMD <!-- 접수 일자 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
FROM TB_EPOST_RCPT_REG</sql>
<select id="selectRequestList" parameterType="map" resultType="dataobject">/* 전자우편 신청 목록 조회(emailRequestMapper.selectRequestList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where>
<if test="conKeys != null">AND CON_KEY IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)</if>
<if test="conKeys == null">
AND RCEPT_YMD BETWEEN #{fromRegDate} AND #{toRegDate}
<if test="statusList != null">AND POST_PRCS_STTS_CD IN (<foreach collection="statusList" item="status" separator=",">#{status}</foreach>)</if>
AND DEL_YN = 'N'
</if>
</where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></select>
<select id="selectRequests" parameterType="map" resultMap="emailRequestRow">/* 전자우편 신청 객체 가져오기(emailRequestMapper.selectRequests) */
<include refid="select" />
<where>AND CON_KEY IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)</where>
<include refid="utility.orderBy" /></select>
<insert id="insertRequest" parameterType="map">/* 전자우편 신청 등록(emailRequestMapper.insertRequest) */
INSERT INTO TB_EPOST_RCPT_REG (
CON_KEY <!-- 외부연계식별키 -->
, RCEPT_ID <!-- 접수우체국국기호 -->
, 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 <!-- 부과부서 이메일 -->
, SNDNG_ID <!-- 발송 ID -->
, JOB_CD <!-- 작업 코드 -->
, REG_VAR_DATA1 <!-- 추가 데이터1 (주.정차위반과태료납부 안내) -->
, REG_VAR_DATA2 <!-- 추가 데이터2 -->
, REG_VAR_DATA3 <!-- 추가 데이터3 -->
, REG_VAR_DATA4 <!-- 추가 데이터4 -->
, REG_VAR_DATA5 <!-- 추가 데이터5 -->
, POST_PRCS_STTS_CD <!-- 우편 처리 상태 -->
, RCEPT_YMD <!-- 접수 일자 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, DEL_DT <!-- 삭제 일시 -->
, DLTR <!-- 삭제자 -->
) VALUES (
#{emailRequest.conKey} <!-- 외부연계식별키 -->
, #{emailRequest.rceptId} <!-- 접수우체국국기호 -->
, #{emailRequest.dataCd} <!-- 접수코드 -->
, #{emailRequest.divKb} <!-- 취급구분 -->
, #{emailRequest.dfpayyn} <!-- 결재방법 -->
, #{emailRequest.rcptKb} <!-- 내용문 유형 -->
, #{emailRequest.sealCd} <!-- 내용문 상세 종류 -->
, #{emailRequest.wordKb} <!-- 내용문 종류 -->
, #{emailRequest.mailCnt} <!-- 내용문 매수 -->
, #{emailRequest.recevCnt} <!-- 수취인 수 -->
, #{emailRequest.envCd} <!-- 봉투 종류 -->
, #{emailRequest.colorYn} <!-- 칼라우편물 -->
, #{emailRequest.mmYn} <!-- 메일머지 플래그 -->
, #{emailRequest.flexCd} <!-- 이면구분 -->
, #{emailRequest.dmCnt} <!-- 동봉물 개수 -->
, #{emailRequest.sbFg} <!-- 반송불필요 여부 -->
, #{emailRequest.apvlNb} <!-- 승인번호 -->
, #{emailRequest.sendDate} <!-- 신청 일자 -->
, #{emailRequest.sendTime} <!-- 전송 시간 -->
, #{emailRequest.relorsectCd} <!-- 연계기관결제부서코드 -->
, #{emailRequest.recevSenderOrgCode} <!-- 발송기관코드 -->
, #{emailRequest.recevSenderNm} <!-- 발송인명 -->
, #{emailRequest.recevSenderZipcode} <!-- 발송인 우편번호 -->
, #{emailRequest.recevSenderAddr} <!-- 주소 -->
, #{emailRequest.recevSenderDetailaddr} <!-- 상세주소 -->
, #{emailRequest.recevSenderDepartTel} <!-- 부과부서 전화번호 -->
, #{emailRequest.recevSenderDepartNm} <!-- 부과부서 -->
, #{emailRequest.recevDivCd} <!-- 등기구분 -->
, #{emailRequest.recevPrintDt} <!-- 출력일자 -->
, #{emailRequest.recevPrintYear} <!-- 출력연도 -->
, #{emailRequest.recevPrintMonth} <!-- 출력월 -->
, #{emailRequest.recevPrintDay} <!-- 출력일 -->
, #{emailRequest.recevSenderFax} <!-- 부과부서 팩스번호 -->
, #{emailRequest.recevSerderStaff} <!-- 부과부서 담당자 -->
, #{emailRequest.recevSenderEmail} <!-- 부과부서 이메일 -->
, #{emailRequest.sndngId} <!-- 발송 ID -->
, #{emailRequest.jobCd} <!-- 작업 코드 -->
, #{emailRequest.regVarData1} <!-- 추가 데이터1 (주.정차위반과태료납부 안내) -->
, #{emailRequest.regVarData2} <!-- 추가 데이터2 -->
, #{emailRequest.regVarData3} <!-- 추가 데이터3 -->
, #{emailRequest.regVarData4} <!-- 추가 데이터4 -->
, #{emailRequest.regVarData5} <!-- 추가 데이터5 -->
, #{emailRequest.postProcStt} <!-- 우편 처리 상태 -->
, #{emailRequest.rceptYmd} <!-- 접수 일자 -->
, #{emailRequest.delYn} <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{currentUser.id} <!-- 등록자 -->
, #{emailRequest.removedAt} <!-- 삭제 일시 -->
, #{emailRequest.removedBy} <!-- 삭제자 -->
)</insert>
<update id="updateRequest" parameterType="map">/* 전자우편 신청 수정(emailRequestMapper.updateRequest) */
UPDATE TB_EPOST_RCPT_REG SET
RCEPT_ID = #{emailRequest.rceptId} <!-- 접수우체국국기호 -->
, DATA_CD = #{emailRequest.dataCd} <!-- 접수코드 -->
, DIV_KB = #{emailRequest.divKb} <!-- 취급구분 -->
, DFPAYYN = #{emailRequest.dfpayyn} <!-- 결재방법 -->
, RCPT_KB = #{emailRequest.rcptKb} <!-- 내용문 유형 -->
, SEAL_CD = #{emailRequest.sealCd} <!-- 내용문 상세 종류 -->
, WORD_KB = #{emailRequest.wordKb} <!-- 내용문 종류 -->
, MAIL_CNT = #{emailRequest.mailCnt} <!-- 내용문 매수 -->
, RECEV_CNT = #{emailRequest.recevCnt} <!-- 수취인 수 -->
, ENV_CD = #{emailRequest.envCd} <!-- 봉투 종류 -->
, COLOR_YN = #{emailRequest.colorYn} <!-- 칼라우편물 -->
, MM_YN = #{emailRequest.mmYn} <!-- 메일머지 플래그 -->
, FLEX_CD = #{emailRequest.flexCd} <!-- 이면구분 -->
, DM_CNT = #{emailRequest.dmCnt} <!-- 동봉물 개수 -->
, SB_FG = #{emailRequest.sbFg} <!-- 반송불필요 여부 -->
, APVL_NB = #{emailRequest.apvlNb} <!-- 승인번호 -->
, SEND_DATE = #{emailRequest.sendDate} <!-- 신청 일자 -->
, SEND_TIME = #{emailRequest.sendTime} <!-- 전송 시간 -->
, RELORSECT_CD = #{emailRequest.relorsectCd} <!-- 연계기관결제부서코드 -->
, RECEV_SENDER_ORG_CODE = #{emailRequest.recevSenderOrgCode} <!-- 발송기관코드 -->
, RECEV_SENDER_NM = #{emailRequest.recevSenderNm} <!-- 발송인명 -->
, RECEV_SENDER_ZIPCODE = #{emailRequest.recevSenderZipcode} <!-- 발송인 우편번호 -->
, RECEV_SENDER_ADDR = #{emailRequest.recevSenderAddr} <!-- 주소 -->
, RECEV_SENDER_DETAILADDR = #{emailRequest.recevSenderDetailaddr} <!-- 상세주소 -->
, RECEV_SENDER_DEPART_TEL = #{emailRequest.recevSenderDepartTel} <!-- 부과부서 전화번호 -->
, RECEV_SENDER_DEPART_NM = #{emailRequest.recevSenderDepartNm} <!-- 부과부서 -->
, RECEV_DIV_CD = #{emailRequest.recevDivCd} <!-- 등기구분 -->
, RECEV_PRINT_DT = #{emailRequest.recevPrintDt} <!-- 출력일자 -->
, RECEV_PRINT_YEAR = #{emailRequest.recevPrintYear} <!-- 출력연도 -->
, RECEV_PRINT_MONTH = #{emailRequest.recevPrintMonth} <!-- 출력월 -->
, RECEV_PRINT_DAY = #{emailRequest.recevPrintDay} <!-- 출력일 -->
, RECEV_SENDER_FAX = #{emailRequest.recevSenderFax} <!-- 부과부서 팩스번호 -->
, RECEV_SERDER_STAFF = #{emailRequest.recevSerderStaff} <!-- 부과부서 담당자 -->
, RECEV_SENDER_EMAIL = #{emailRequest.recevSenderEmail} <!-- 부과부서 이메일 -->
, SNDNG_ID = #{emailRequest.sndngId} <!-- 발송 ID -->
, JOB_CD = #{emailRequest.jobCd} <!-- 작업 코드 -->
, REG_VAR_DATA1 = #{emailRequest.regVarData1} <!-- 추가 데이터1 (주.정차위반과태료납부 안내) -->
, REG_VAR_DATA2 = #{emailRequest.regVarData2} <!-- 추가 데이터2 -->
, REG_VAR_DATA3 = #{emailRequest.regVarData3} <!-- 추가 데이터3 -->
, REG_VAR_DATA4 = #{emailRequest.regVarData4} <!-- 추가 데이터4 -->
, REG_VAR_DATA5 = #{emailRequest.regVarData5} <!-- 추가 데이터5 -->
, POST_PRCS_STTS_CD = #{emailRequest.postProcStt} <!-- 우편 처리 상태 -->
, RCEPT_YMD = #{emailRequest.rceptYmd} <!-- 접수 일자 -->
, DEL_YN = #{emailRequest.delYn} <!-- 삭제 여부 -->
, DEL_DT = #{emailRequest.removedAt} <!-- 삭제 일시 -->
, DLTR = #{emailRequest.removedBy} <!-- 삭제자 -->
WHERE CON_KEY = #{emailRequest.conKey}</update>
<update id="updateRequestStatus" parameterType="map">/* 전자우편 신청 상태 변경(emailRequestMapper.updateRequestStatus) */
UPDATE TB_EPOST_RCPT_REG SET
POST_PRCS_STTS_CD = #{status}
<if test='resultType == "registration"'> , RCEPT_YMD = CASE CON_KEY<foreach collection="results" item="result">
WHEN #{result.reletcdata} THEN #{result.rceptYmd}</foreach>
ELSE RCEPT_YMD END</if>
WHERE CON_KEY IN (
<if test='conKeys != null'><foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach></if>
<if test='resultType == "reception"'><foreach collection="results" item="result" separator=",">#{result.reldivkey}</foreach></if>
<if test='resultType == "registration"'><foreach collection="results" item="result" separator=",">#{result.reletcdata}</foreach></if>
<if test='resultType == "production"'><foreach collection="results" item="result" separator=",">#{result.conKey}</foreach></if>
<if test='resultType == "delivery"'><foreach collection="results" item="result" separator=",">#{result.reletcdata}</foreach></if>
)
AND POST_PRCS_STTS_CD &lt; #{maxStatus}</update>
<update id="updateRequestAsDelivered" parameterType="map">/* 전자우편 배달 완료 처리(emailRequestMapper.updateRequestAsDelivered) */
UPDATE TB_EPOST_RCPT_REG SET
POST_PRCS_STTS_CD = #{status}
WHERE POST_PRCS_STTS_CD = '27' <!-- 배달중 -->
AND DEL_YN = 'N'
AND REG_DT &lt; CONCAT(DATE_FORMAT(DATE_SUB(CURRENT_DATE, INTERVAL #{expiryDays} DAY), '%Y%m%d'), '000000')</update>
<update id="deleteRequest" parameterType="map">/* 전자우편 신청 삭제(emailRequestMapper.deleteRequest) */
UPDATE TB_EPOST_RCPT_REG SET
DEL_YN = 'Y'
, DEL_DT =<include refid="utility.now" />
, DLTR = #{currentUser.id}
WHERE CON_KEY IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)</update>
<resultMap id="emailRequestDetailRow" type="cokr.xit.interfaces.epost.EmailRequestDetail"> <!-- 전자우편 신청 상세 -->
<result property="conKey" column="CON_KEY" /> <!-- 외부연계식별키 -->
<result property="rgstNmbr" column="RGST_NMBR" /> <!-- 등기번호 -->
<result property="recevSeq" column="RECEV_SEQ" /> <!-- 일련번호 -->
<result property="recevCode" column="RECEV_CODE" /> <!-- 발송코드 -->
<result property="recevBar1d" column="RECEV_BAR1D" /> <!-- 바코드 -->
<result property="recevBar2d" column="RECEV_BAR2D" /> <!-- 이차원바코드 -->
<result property="recevBillNunber" column="RECEV_BILL_NUMBER" /> <!-- 고지번호 -->
<result property="recevDocCd1" column="RECEV_DOC_CD1" /> <!-- 문서종류1 -->
<result property="recevDocCd2" column="RECEV_DOC_CD2" /> <!-- 문서종류2 -->
<result property="recevDocCd3" column="RECEV_DOC_CD3" /> <!-- 문서종류3 -->
<result property="recevDocCd4" column="RECEV_DOC_CD4" /> <!-- 문서종류4 -->
<result property="recevDocCd5" column="RECEV_DOC_CD5" /> <!-- 문서종류5 -->
<result property="recevSubj1" column="RECEV_SUBJ1" /> <!-- 과목명1 -->
<result property="recevSubj2" column="RECEV_SUBJ2" /> <!-- 과목명2 -->
<result property="recevSubj3" column="RECEV_SUBJ3" /> <!-- 과목명3 -->
<result property="recevViolateDt" column="RECEV_VIOLATE_DT" /> <!-- 위반일시 -->
<result property="recevViolateDong" column="RECEV_VIOLATE_DONG" /> <!-- 위반동 -->
<result property="recevViolatePlace" column="RECEV_VIOLATE_PLACE" /> <!-- 위반장소 -->
<result property="recevLaws" column="RECEV_LAWS" /> <!-- 법조항 -->
<result property="recevPayNumber1" column="RECEV_PAY_NUMBER1" /> <!-- 납부번호1 -->
<result property="recevPayNumber2" column="RECEV_PAY_NUMBER2" /> <!-- 납부번호2 -->
<result property="recevOcr0" column="RECEV_OCR0" /> <!-- OCR0 -->
<result property="recevOcr1" column="RECEV_OCR1" /> <!-- OCR1 -->
<result property="recevOcr2" column="RECEV_OCR2" /> <!-- OCR2 -->
<result property="recevOnlinePayNumber" column="RECEV_ONLINE_PAY_NUMBER" /> <!-- 전자납부번호 -->
<result property="recevFinePrice" column="RECEV_FINE_PRICE" /> <!-- 과태료 -->
<result property="recevPayPrice" column="RECEV_PAY_PRICE" /> <!-- 납부금액 -->
<result property="recevPayDt" column="RECEV_PAY_DT" /> <!-- 납부기한 -->
<result property="recevPayInDate" column="RECEV_PAY_IN_DATE" /> <!-- 납기내기한 -->
<result property="recevPayInPrice" column="RECEV_PAY_IN_PRICE" /> <!-- 납기내금액 -->
<result property="recevPayInAddPrice" column="RECEV_PAY_IN_ADD_PRICE" /> <!-- 납기내가산금 -->
<result property="recevPayInDefaultPrice" column="RECEV_PAY_IN_DEFAULT_PRICE" /> <!-- 납기내합계금액 -->
<result property="recevPayOutDate" column="RECEV_PAY_OUT_DATE" /> <!-- 납기후기한 -->
<result property="recevPayOutPrice" column="RECEV_PAY_OUT_PRICE" /> <!-- 납기후금액 -->
<result property="recevPayOutAddPrice" column="RECEV_PAY_OUT_ADD_PRICE" /> <!-- 납기후가산금 -->
<result property="recevPayOutDefaultPrice" column="RECEV_PAY_OUT_DEFAULT_PRICE" /> <!-- 납기후합계금액 -->
<result property="recevCarNumber" column="RECEV_CAR_NUMBER" /> <!-- 차량번호 -->
<result property="recevCarOwnerZipcode" column="RECEV_CAR_OWNER_ZIPCODE" /> <!-- 우편번호 -->
<result property="recevCarOwnerAddr" column="RECEV_CAR_OWNER_ADDR" /> <!-- 주소 -->
<result property="recevCarOwnerDetailaddr" column="RECEV_CAR_OWNER_DETAILADDR" /> <!-- 상세주소 -->
<result property="recevCarOwnerNm" column="RECEV_CAR_OWNER_NM" /> <!-- 소유자명 -->
<result property="recevCarOwnerSsn" column="RECEV_CAR_OWNER_SSN" /> <!-- 주민번호 -->
<result property="recevEvidenceNumber" column="RECEV_EVIDENCE_NUMBER" /> <!-- 증거번호 -->
<result property="recevPhotoCnt" column="RECEV_PHOTO_CNT" /> <!-- 사진장수 -->
<result property="recevPhotoFilename1" column="RECEV_PHOTO_FILENAME1" /> <!-- 사진파일명1 -->
<result property="recevPhotoFilename2" column="RECEV_PHOTO_FILENAME2" /> <!-- 사진파일명2 -->
<result property="recevPhotoFilename3" column="RECEV_PHOTO_FILENAME3" /> <!-- 사진파일명3 -->
<result property="recevPhotoFilename4" column="RECEV_PHOTO_FILENAME4" /> <!-- 사진파일명4 -->
<result property="vractno2" column="VRACTNO2" /> <!-- 가상계좌번호2 -->
<result property="vractno3" column="VRACTNO3" /> <!-- 가상계좌번호3 -->
<result property="vractno4" column="VRACTNO4" /> <!-- 가상계좌번호4 -->
<result property="vractno5" column="VRACTNO5" /> <!-- 가상계좌번호5 -->
<result property="vractno6" column="VRACTNO6" /> <!-- 가상계좌번호6 -->
<result property="vractno7" column="VRACTNO7" /> <!-- 가상계좌번호7 -->
<result property="vractno8" column="VRACTNO8" /> <!-- 가상계좌번호8 -->
<result property="vractno9" column="VRACTNO9" /> <!-- 가상계좌번호9 -->
<result property="vractno10" column="VRACTNO10" /> <!-- 가상계좌번호10 -->
<result property="vractno11" column="VRACTNO11" /> <!-- 가상계좌번호11 -->
<result property="dtlVarData1" column="DTL_VAR_DATA1" /> <!-- 추가 데이터1 (계도 메일 제목) -->
<result property="dtlVarData2" column="DTL_VAR_DATA2" /> <!-- 추가 데이터2 (계도 메일 내용) -->
<result property="dtlVarData3" column="DTL_VAR_DATA3" /> <!-- 추가 데이터3 -->
<result property="dtlVarData4" column="DTL_VAR_DATA4" /> <!-- 추가 데이터4 -->
<result property="dtlVarData5" column="DTL_VAR_DATA5" /> <!-- 추가 데이터5 -->
<result property="dlvrRsltId" column="DLVR_RSLT_ID" /> <!-- 배달 결과 ID -->
<result property="makeRsltCd" column="MAKE_RSLT_CD" /> <!-- 제작 결과 코드 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="vractno" column="VRACTNO" /> <!-- 가상계좌번호 -->
</resultMap>
<sql id="selectDetail">SELECT CON_KEY <!-- 외부연계식별키 -->
, RGST_NMBR <!-- 등기번호 -->
, RECEV_SEQ <!-- 일련번호 -->
, RECEV_CODE <!-- 발송코드 -->
, RECEV_BAR1D <!-- 바코드 -->
, RECEV_BAR2D <!-- 이차원바코드 -->
, RECEV_BILL_NUMBER <!-- 고지번호 -->
, RECEV_DOC_CD1 <!-- 문서종류1 -->
, RECEV_DOC_CD2 <!-- 문서종류2 -->
, RECEV_DOC_CD3 <!-- 문서종류3 -->
, RECEV_DOC_CD4 <!-- 문서종류4 -->
, RECEV_DOC_CD5 <!-- 문서종류5 -->
, RECEV_SUBJ1 <!-- 과목명1 -->
, RECEV_SUBJ2 <!-- 과목명2 -->
, RECEV_SUBJ3 <!-- 과목명3 -->
, RECEV_VIOLATE_DT <!-- 위반일시 -->
, RECEV_VIOLATE_DONG <!-- 위반동 -->
, RECEV_VIOLATE_PLACE <!-- 위반장소 -->
, RECEV_LAWS <!-- 법조항 -->
, RECEV_PAY_NUMBER1 <!-- 납부번호1 -->
, RECEV_PAY_NUMBER2 <!-- 납부번호2 -->
, RECEV_OCR0 <!-- OCR0 -->
, RECEV_OCR1 <!-- OCR1 -->
, RECEV_OCR2 <!-- OCR2 -->
, RECEV_ONLINE_PAY_NUMBER <!-- 전자납부번호 -->
, RECEV_FINE_PRICE <!-- 과태료 -->
, RECEV_PAY_PRICE <!-- 납부금액 -->
, RECEV_PAY_DT <!-- 납부기한 -->
, RECEV_PAY_IN_DATE <!-- 납기내기한 -->
, RECEV_PAY_IN_PRICE <!-- 납기내금액 -->
, RECEV_PAY_IN_ADD_PRICE <!-- 납기내가산금 -->
, RECEV_PAY_IN_DEFAULT_PRICE <!-- 납기내합계금액 -->
, RECEV_PAY_OUT_DATE <!-- 납기후기한 -->
, RECEV_PAY_OUT_PRICE <!-- 납기후금액 -->
, RECEV_PAY_OUT_ADD_PRICE <!-- 납기후가산금 -->
, RECEV_PAY_OUT_DEFAULT_PRICE <!-- 납기후합계금액 -->
, RECEV_CAR_NUMBER <!-- 차량번호 -->
, RECEV_CAR_OWNER_ZIPCODE <!-- 우편번호 -->
, RECEV_CAR_OWNER_ADDR <!-- 주소 -->
, RECEV_CAR_OWNER_DETAILADDR <!-- 상세주소 -->
, RECEV_CAR_OWNER_NM <!-- 소유자명 -->
, RECEV_CAR_OWNER_SSN <!-- 주민번호 -->
, RECEV_EVIDENCE_NUMBER <!-- 증거번호 -->
, RECEV_PHOTO_CNT <!-- 사진장수 -->
, RECEV_PHOTO_FILENAME1 <!-- 사진파일명1 -->
, RECEV_PHOTO_FILENAME2 <!-- 사진파일명2 -->
, RECEV_PHOTO_FILENAME3 <!-- 사진파일명3 -->
, RECEV_PHOTO_FILENAME4 <!-- 사진파일명4 -->
, VRACTNO2 <!-- 가상계좌번호2 -->
, VRACTNO3 <!-- 가상계좌번호3 -->
, VRACTNO4 <!-- 가상계좌번호4 -->
, VRACTNO5 <!-- 가상계좌번호5 -->
, VRACTNO6 <!-- 가상계좌번호6 -->
, VRACTNO7 <!-- 가상계좌번호7 -->
, VRACTNO8 <!-- 가상계좌번호8 -->
, VRACTNO9 <!-- 가상계좌번호9 -->
, VRACTNO10 <!-- 가상계좌번호10 -->
, VRACTNO11 <!-- 가상계좌번호11 -->
, DTL_VAR_DATA1 <!-- 추가 데이터1 (계도 메일 제목) -->
, DTL_VAR_DATA2 <!-- 추가 데이터2 (계도 메일 내용) -->
, DTL_VAR_DATA3 <!-- 추가 데이터3 -->
, DTL_VAR_DATA4 <!-- 추가 데이터4 -->
, DTL_VAR_DATA5 <!-- 추가 데이터5 -->
, DLVR_RSLT_ID <!-- 배달 결과 ID -->
, MAKE_RSLT_CD <!-- 제작 결과 코드 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, VRACTNO <!-- 가상계좌번호 -->
FROM TB_EPOST_RCPT_DTL</sql>
<select id="selectRequestDetailList" parameterType="map" resultType="dataobject">/* 전자우편 신청 상세 목록 조회(emailRequestMapper.selectRequestDetailList) */
<include refid="utility.paging-prefix" />
<include refid="selectDetail" />
<where>
AND CON_KEY IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)
<if test="rgstNmbrs != null">AND RGST_NMBR IN (<foreach collection="rgstNmbrs" item="rgstNmbr" separator=",">#{rgstNmbr}</foreach>)</if>
</where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></select>
<select id="selectRequestDetails" parameterType="map" resultMap="emailRequestDetailRow">/* 전자우편 신청 상세 객체 가져오기(emailRequestMapper.selectRequestDetails) */
<include refid="selectDetail" />
<where>
AND CON_KEY IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)
<if test="rgstNmbrs != null">AND RGST_NMBR IN (<foreach collection="rgstNmbrs" item="rgstNmbr" separator=",">#{rgstNmbr}</foreach>)</if>
</where>
<include refid="utility.orderBy" /></select>
<insert id="insertRequestDetail" parameterType="map">/* 전자우편 신청 상세 등록(emailRequestMapper.insertRequestDetail) */
INSERT INTO TB_EPOST_RCPT_DTL (
CON_KEY <!-- 외부연계식별키 -->
, RGST_NMBR <!-- 등기번호 -->
, RECEV_SEQ <!-- 일련번호 -->
, RECEV_CODE <!-- 발송코드 -->
, RECEV_BAR1D <!-- 바코드 -->
, RECEV_BAR2D <!-- 이차원바코드 -->
, RECEV_BILL_NUMBER <!-- 고지번호 -->
, RECEV_DOC_CD1 <!-- 문서종류1 -->
, RECEV_DOC_CD2 <!-- 문서종류2 -->
, RECEV_DOC_CD3 <!-- 문서종류3 -->
, RECEV_DOC_CD4 <!-- 문서종류4 -->
, RECEV_DOC_CD5 <!-- 문서종류5 -->
, RECEV_SUBJ1 <!-- 과목명1 -->
, RECEV_SUBJ2 <!-- 과목명2 -->
, RECEV_SUBJ3 <!-- 과목명3 -->
, RECEV_VIOLATE_DT <!-- 위반일시 -->
, RECEV_VIOLATE_DONG <!-- 위반동 -->
, RECEV_VIOLATE_PLACE <!-- 위반장소 -->
, RECEV_LAWS <!-- 법조항 -->
, RECEV_PAY_NUMBER1 <!-- 납부번호1 -->
, RECEV_PAY_NUMBER2 <!-- 납부번호2 -->
, RECEV_OCR0 <!-- OCR0 -->
, RECEV_OCR1 <!-- OCR1 -->
, RECEV_OCR2 <!-- OCR2 -->
, RECEV_ONLINE_PAY_NUMBER <!-- 전자납부번호 -->
, RECEV_FINE_PRICE <!-- 과태료 -->
, RECEV_PAY_PRICE <!-- 납부금액 -->
, RECEV_PAY_DT <!-- 납부기한 -->
, RECEV_PAY_IN_DATE <!-- 납기내기한 -->
, RECEV_PAY_IN_PRICE <!-- 납기내금액 -->
, RECEV_PAY_IN_ADD_PRICE <!-- 납기내가산금 -->
, RECEV_PAY_IN_DEFAULT_PRICE <!-- 납기내합계금액 -->
, RECEV_PAY_OUT_DATE <!-- 납기후기한 -->
, RECEV_PAY_OUT_PRICE <!-- 납기후금액 -->
, RECEV_PAY_OUT_ADD_PRICE <!-- 납기후가산금 -->
, RECEV_PAY_OUT_DEFAULT_PRICE <!-- 납기후합계금액 -->
, RECEV_CAR_NUMBER <!-- 차량번호 -->
, RECEV_CAR_OWNER_ZIPCODE <!-- 우편번호 -->
, RECEV_CAR_OWNER_ADDR <!-- 주소 -->
, RECEV_CAR_OWNER_DETAILADDR <!-- 상세주소 -->
, RECEV_CAR_OWNER_NM <!-- 소유자명 -->
, RECEV_CAR_OWNER_SSN <!-- 주민번호 -->
, RECEV_EVIDENCE_NUMBER <!-- 증거번호 -->
, RECEV_PHOTO_CNT <!-- 사진장수 -->
, RECEV_PHOTO_FILENAME1 <!-- 사진파일명1 -->
, RECEV_PHOTO_FILENAME2 <!-- 사진파일명2 -->
, RECEV_PHOTO_FILENAME3 <!-- 사진파일명3 -->
, RECEV_PHOTO_FILENAME4 <!-- 사진파일명4 -->
, VRACTNO2 <!-- 가상계좌번호2 -->
, VRACTNO3 <!-- 가상계좌번호3 -->
, VRACTNO4 <!-- 가상계좌번호4 -->
, VRACTNO5 <!-- 가상계좌번호5 -->
, VRACTNO6 <!-- 가상계좌번호6 -->
, VRACTNO7 <!-- 가상계좌번호7 -->
, VRACTNO8 <!-- 가상계좌번호8 -->
, VRACTNO9 <!-- 가상계좌번호9 -->
, VRACTNO10 <!-- 가상계좌번호10 -->
, VRACTNO11 <!-- 가상계좌번호11 -->
, DTL_VAR_DATA1 <!-- 추가 데이터1 (계도 메일 제목) -->
, DTL_VAR_DATA2 <!-- 추가 데이터2 (계도 메일 내용) -->
, DTL_VAR_DATA3 <!-- 추가 데이터3 -->
, DTL_VAR_DATA4 <!-- 추가 데이터4 -->
, DTL_VAR_DATA5 <!-- 추가 데이터5 -->
, DLVR_RSLT_ID <!-- 배달 결과 ID -->
, MAKE_RSLT_CD <!-- 제작 결과 코드 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, VRACTNO <!-- 가상계좌번호 -->
) VALUES (
#{emailRequestDetail.conKey} <!-- 외부연계식별키 -->
, #{emailRequestDetail.rgstNmbr} <!-- 등기번호 -->
, #{emailRequestDetail.recevSeq} <!-- 일련번호 -->
, #{emailRequestDetail.recevCode} <!-- 발송코드 -->
, #{emailRequestDetail.recevBar1d} <!-- 바코드 -->
, #{emailRequestDetail.recevBar2d} <!-- 이차원바코드 -->
, #{emailRequestDetail.recevBillNunber} <!-- 고지번호 -->
, #{emailRequestDetail.recevDocCd1} <!-- 문서종류1 -->
, #{emailRequestDetail.recevDocCd2} <!-- 문서종류2 -->
, #{emailRequestDetail.recevDocCd3} <!-- 문서종류3 -->
, #{emailRequestDetail.recevDocCd4} <!-- 문서종류4 -->
, #{emailRequestDetail.recevDocCd5} <!-- 문서종류5 -->
, #{emailRequestDetail.recevSubj1} <!-- 과목명1 -->
, #{emailRequestDetail.recevSubj2} <!-- 과목명2 -->
, #{emailRequestDetail.recevSubj3} <!-- 과목명3 -->
, #{emailRequestDetail.recevViolateDt} <!-- 위반일시 -->
, #{emailRequestDetail.recevViolateDong} <!-- 위반동 -->
, #{emailRequestDetail.recevViolatePlace} <!-- 위반장소 -->
, #{emailRequestDetail.recevLaws} <!-- 법조항 -->
, #{emailRequestDetail.recevPayNumber1} <!-- 납부번호1 -->
, #{emailRequestDetail.recevPayNumber2} <!-- 납부번호2 -->
, #{emailRequestDetail.recevOcr0} <!-- OCR0 -->
, #{emailRequestDetail.recevOcr1} <!-- OCR1 -->
, #{emailRequestDetail.recevOcr2} <!-- OCR2 -->
, #{emailRequestDetail.recevOnlinePayNumber} <!-- 전자납부번호 -->
, #{emailRequestDetail.recevFinePrice} <!-- 과태료 -->
, #{emailRequestDetail.recevPayPrice} <!-- 납부금액 -->
, #{emailRequestDetail.recevPayDt} <!-- 납부기한 -->
, #{emailRequestDetail.recevPayInDate} <!-- 납기내기한 -->
, #{emailRequestDetail.recevPayInPrice} <!-- 납기내금액 -->
, #{emailRequestDetail.recevPayInAddPrice} <!-- 납기내가산금 -->
, #{emailRequestDetail.recevPayInDefaultPrice} <!-- 납기내합계금액 -->
, #{emailRequestDetail.recevPayOutDate} <!-- 납기후기한 -->
, #{emailRequestDetail.recevPayOutPrice} <!-- 납기후금액 -->
, #{emailRequestDetail.recevPayOutAddPrice} <!-- 납기후가산금 -->
, #{emailRequestDetail.recevPayOutDefaultPrice} <!-- 납기후합계금액 -->
, #{emailRequestDetail.recevCarNumber} <!-- 차량번호 -->
, #{emailRequestDetail.recevCarOwnerZipcode} <!-- 우편번호 -->
, #{emailRequestDetail.recevCarOwnerAddr} <!-- 주소 -->
, #{emailRequestDetail.recevCarOwnerDetailaddr} <!-- 상세주소 -->
, #{emailRequestDetail.recevCarOwnerNm} <!-- 소유자명 -->
, #{emailRequestDetail.recevCarOwnerSsn} <!-- 주민번호 -->
, #{emailRequestDetail.recevEvidenceNumber} <!-- 증거번호 -->
, #{emailRequestDetail.recevPhotoCnt} <!-- 사진장수 -->
, #{emailRequestDetail.recevPhotoFilename1} <!-- 사진파일명1 -->
, #{emailRequestDetail.recevPhotoFilename2} <!-- 사진파일명2 -->
, #{emailRequestDetail.recevPhotoFilename3} <!-- 사진파일명3 -->
, #{emailRequestDetail.recevPhotoFilename4} <!-- 사진파일명4 -->
, #{emailRequestDetail.vractno2} <!-- 가상계좌번호2 -->
, #{emailRequestDetail.vractno3} <!-- 가상계좌번호3 -->
, #{emailRequestDetail.vractno4} <!-- 가상계좌번호4 -->
, #{emailRequestDetail.vractno5} <!-- 가상계좌번호5 -->
, #{emailRequestDetail.vractno6} <!-- 가상계좌번호6 -->
, #{emailRequestDetail.vractno7} <!-- 가상계좌번호7 -->
, #{emailRequestDetail.vractno8} <!-- 가상계좌번호8 -->
, #{emailRequestDetail.vractno9} <!-- 가상계좌번호9 -->
, #{emailRequestDetail.vractno10} <!-- 가상계좌번호10 -->
, #{emailRequestDetail.vractno11} <!-- 가상계좌번호11 -->
, #{emailRequestDetail.dtlVarData1} <!-- 추가 데이터1 (계도 메일 제목) -->
, #{emailRequestDetail.dtlVarData2} <!-- 추가 데이터2 (계도 메일 내용) -->
, #{emailRequestDetail.dtlVarData3} <!-- 추가 데이터3 -->
, #{emailRequestDetail.dtlVarData4} <!-- 추가 데이터4 -->
, #{emailRequestDetail.dtlVarData5} <!-- 추가 데이터5 -->
, #{emailRequestDetail.dlvrRsltId} <!-- 배달 결과 ID -->
, #{emailRequestDetail.makeRsltCd} <!-- 제작 결과 코드 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{currentUser.id} <!-- 등록자 -->
, #{emailRequestDetail.vractno} <!-- 가상계좌번호 -->
)</insert>
<update id="updateRequestDetail" parameterType="map">/* 전자우편 신청 상세 수정(emailRequestMapper.updateRequestDetail) */
UPDATE TB_EPOST_RCPT_DTL SET
RECEV_SEQ = #{emailRequestDetail.recevSeq} <!-- 일련번호 -->
, RECEV_CODE = #{emailRequestDetail.recevCode} <!-- 발송코드 -->
, RECEV_BAR1D = #{emailRequestDetail.recevBar1d} <!-- 바코드 -->
, RECEV_BAR2D = #{emailRequestDetail.recevBar2d} <!-- 이차원바코드 -->
, RECEV_BILL_NUMBER = #{emailRequestDetail.recevBillNunber} <!-- 고지번호 -->
, RECEV_DOC_CD1 = #{emailRequestDetail.recevDocCd1} <!-- 문서종류1 -->
, RECEV_DOC_CD2 = #{emailRequestDetail.recevDocCd2} <!-- 문서종류2 -->
, RECEV_DOC_CD3 = #{emailRequestDetail.recevDocCd3} <!-- 문서종류3 -->
, RECEV_DOC_CD4 = #{emailRequestDetail.recevDocCd4} <!-- 문서종류4 -->
, RECEV_DOC_CD5 = #{emailRequestDetail.recevDocCd5} <!-- 문서종류5 -->
, RECEV_SUBJ1 = #{emailRequestDetail.recevSubj1} <!-- 과목명1 -->
, RECEV_SUBJ2 = #{emailRequestDetail.recevSubj2} <!-- 과목명2 -->
, RECEV_SUBJ3 = #{emailRequestDetail.recevSubj3} <!-- 과목명3 -->
, RECEV_VIOLATE_DT = #{emailRequestDetail.recevViolateDt} <!-- 위반일시 -->
, RECEV_VIOLATE_DONG = #{emailRequestDetail.recevViolateDong} <!-- 위반동 -->
, RECEV_VIOLATE_PLACE = #{emailRequestDetail.recevViolatePlace} <!-- 위반장소 -->
, RECEV_LAWS = #{emailRequestDetail.recevLaws} <!-- 법조항 -->
, RECEV_PAY_NUMBER1 = #{emailRequestDetail.recevPayNumber1} <!-- 납부번호1 -->
, RECEV_PAY_NUMBER2 = #{emailRequestDetail.recevPayNumber2} <!-- 납부번호2 -->
, RECEV_OCR0 = #{emailRequestDetail.recevOcr0} <!-- OCR0 -->
, RECEV_OCR1 = #{emailRequestDetail.recevOcr1} <!-- OCR1 -->
, RECEV_OCR2 = #{emailRequestDetail.recevOcr2} <!-- OCR2 -->
, RECEV_ONLINE_PAY_NUMBER = #{emailRequestDetail.recevOnlinePayNumber} <!-- 전자납부번호 -->
, RECEV_FINE_PRICE = #{emailRequestDetail.recevFinePrice} <!-- 과태료 -->
, RECEV_PAY_PRICE = #{emailRequestDetail.recevPayPrice} <!-- 납부금액 -->
, RECEV_PAY_DT = #{emailRequestDetail.recevPayDt} <!-- 납부기한 -->
, RECEV_PAY_IN_DATE = #{emailRequestDetail.recevPayInDate} <!-- 납기내기한 -->
, RECEV_PAY_IN_PRICE = #{emailRequestDetail.recevPayInPrice} <!-- 납기내금액 -->
, RECEV_PAY_IN_ADD_PRICE = #{emailRequestDetail.recevPayInAddPrice} <!-- 납기내가산금 -->
, RECEV_PAY_IN_DEFAULT_PRICE = #{emailRequestDetail.recevPayInDefaultPrice} <!-- 납기내합계금액 -->
, RECEV_PAY_OUT_DATE = #{emailRequestDetail.recevPayOutDate} <!-- 납기후기한 -->
, RECEV_PAY_OUT_PRICE = #{emailRequestDetail.recevPayOutPrice} <!-- 납기후금액 -->
, RECEV_PAY_OUT_ADD_PRICE = #{emailRequestDetail.recevPayOutAddPrice} <!-- 납기후가산금 -->
, RECEV_PAY_OUT_DEFAULT_PRICE = #{emailRequestDetail.recevPayOutDefaultPrice} <!-- 납기후합계금액 -->
, RECEV_CAR_NUMBER = #{emailRequestDetail.recevCarNumber} <!-- 차량번호 -->
, RECEV_CAR_OWNER_ZIPCODE = #{emailRequestDetail.recevCarOwnerZipcode} <!-- 우편번호 -->
, RECEV_CAR_OWNER_ADDR = #{emailRequestDetail.recevCarOwnerAddr} <!-- 주소 -->
, RECEV_CAR_OWNER_DETAILADDR = #{emailRequestDetail.recevCarOwnerDetailaddr} <!-- 상세주소 -->
, RECEV_CAR_OWNER_NM = #{emailRequestDetail.recevCarOwnerNm} <!-- 소유자명 -->
, RECEV_CAR_OWNER_SSN = #{emailRequestDetail.recevCarOwnerSsn} <!-- 주민번호 -->
, RECEV_EVIDENCE_NUMBER = #{emailRequestDetail.recevEvidenceNumber} <!-- 증거번호 -->
, RECEV_PHOTO_CNT = #{emailRequestDetail.recevPhotoCnt} <!-- 사진장수 -->
, RECEV_PHOTO_FILENAME1 = #{emailRequestDetail.recevPhotoFilename1} <!-- 사진파일명1 -->
, RECEV_PHOTO_FILENAME2 = #{emailRequestDetail.recevPhotoFilename2} <!-- 사진파일명2 -->
, RECEV_PHOTO_FILENAME3 = #{emailRequestDetail.recevPhotoFilename3} <!-- 사진파일명3 -->
, RECEV_PHOTO_FILENAME4 = #{emailRequestDetail.recevPhotoFilename4} <!-- 사진파일명4 -->
, VRACTNO2 = #{emailRequestDetail.vractno2} <!-- 가상계좌번호2 -->
, VRACTNO3 = #{emailRequestDetail.vractno3} <!-- 가상계좌번호3 -->
, VRACTNO4 = #{emailRequestDetail.vractno4} <!-- 가상계좌번호4 -->
, VRACTNO5 = #{emailRequestDetail.vractno5} <!-- 가상계좌번호5 -->
, VRACTNO6 = #{emailRequestDetail.vractno6} <!-- 가상계좌번호6 -->
, VRACTNO7 = #{emailRequestDetail.vractno7} <!-- 가상계좌번호7 -->
, VRACTNO8 = #{emailRequestDetail.vractno8} <!-- 가상계좌번호8 -->
, VRACTNO9 = #{emailRequestDetail.vractno9} <!-- 가상계좌번호9 -->
, VRACTNO10 = #{emailRequestDetail.vractno10} <!-- 가상계좌번호10 -->
, VRACTNO11 = #{emailRequestDetail.vractno11} <!-- 가상계좌번호11 -->
, DTL_VAR_DATA1 = #{emailRequestDetail.dtlVarData1} <!-- 추가 데이터1 -->
, DTL_VAR_DATA2 = #{emailRequestDetail.dtlVarData2} <!-- 추가 데이터2 -->
, DTL_VAR_DATA3 = #{emailRequestDetail.dtlVarData3} <!-- 추가 데이터3 -->
, DTL_VAR_DATA4 = #{emailRequestDetail.dtlVarData4} <!-- 추가 데이터4 -->
, DTL_VAR_DATA5 = #{emailRequestDetail.dtlVarData5} <!-- 추가 데이터5 -->
, DLVR_RSLT_ID = #{emailRequestDetail.dlvrRsltId} <!-- 배달 결과 ID -->
, MAKE_RSLT_CD = #{emailRequestDetail.makeRsltCd} <!-- 제작 결과 코드 -->
, VRACTNO = #{emailRequestDetail.vractno} <!-- 가상계좌번호 -->
WHERE CON_KEY = #{emailRequestDetail.conKey}
AND RGST_NMBR = #{emailRequestDetail.rgstNmbr}</update>
<update id="updateRequestDetailStatus" parameterType="map">/* 전자우편 신청 상세 상태 변경(emailRequestMapper.updateRequestDetailStatus) */
UPDATE TB_EPOST_RCPT_DTL A
<if test='resultType == "production"'>
, (<foreach collection="results" item="result" separator=" UNION">
SELECT #{result.conKey} CON_KEY, #{result.rgstNmbr} RGST_NMBR, #{result.dataCd} MAKE_RSLT_CD</foreach>
) B
SET A.MAKE_RSLT_CD = B.MAKE_RSLT_CD
</if>
<if test='resultType == "delivery"'>
, (<foreach collection="results" item="result" separator=" UNION">
SELECT #{result.reletcdata} CON_KEY, #{result.regino} RGST_NMBR, #{result.dlvrRsltId} DLVR_RSLT_ID</foreach>
) B
SET A.DLVR_RSLT_ID = B.DLVR_RSLT_ID
</if>
WHERE A.CON_KEY = B.CON_KEY
AND B.RGST_NMBR = B.RGST_NMBR
</update>
</mapper>

@ -1,216 +0,0 @@
<?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.interfaces.epost.dao.EmailResultMapper">
<!-- 전자우편 신청 정보 매퍼
========== 변경 이력 ==========
2023-07-03 mjkhan 최초 작성
============================ -->
<insert id="insertReceptionResult" parameterType="cokr.xit.interfaces.epost.ReceptionResult">/* 전자우편 신청 수신 결과 등록(emailResultMapper.insertReceptionResult) */
<selectKey resultType="string" keyProperty="rcptnRsltId" order="BEFORE">
SELECT IFNULL(MAX(RCPTN_RSLT_ID) + 1, CONCAT(TODAY, '0000001')) NEW_ID
FROM TB_EPOST_RCPTN_RSLT A, (<include refid="utility.selectToday" />) B
WHERE RCPTN_RSLT_ID LIKE CONCAT(TODAY, '%')</selectKey>
INSERT INTO TB_EPOST_RCPTN_RSLT (
RCPTN_RSLT_ID <!-- 수신 결과 ID -->
, OUTSIDUSERID <!-- 연계기관코드 -->
, INIT_TIME <!-- 수신일시 -->
, RECV_FILENAME <!-- 수신파일명 -->
, RELDIVKEY <!-- 연계키 -->
, RECPRSNSEQ <!-- 수취인순번 -->
, REGINO <!-- 등기번호 -->
, ATTACHFILENM <!-- 첨부파일명 -->
, JUNGHAP1 <!-- 1차검증 -->
, JUNGHAP2 <!-- 2차검증 -->
, JUNGHAP3 <!-- 3차검증 -->
, CODE <!-- 상태코드 -->
, MSG <!-- 메시지 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
)
SELECT #{rcptnRsltId} <!-- 수신 결과 ID -->
, #{outsiduserid} <!-- 연계기관코드 -->
, #{initTime} <!-- 수신일시 -->
, #{recvFilename} <!-- 수신파일명 -->
, #{reldivkey} <!-- 연계키 -->
, #{recprsnseq} <!-- 수취인순번 -->
, #{regino} <!-- 등기번호 -->
, #{attachfilenm} <!-- 첨부파일명 -->
, #{junghap1} <!-- 1차검증 -->
, #{junghap2} <!-- 2차검증 -->
, #{junghap3} <!-- 3차검증 -->
, #{code} <!-- 상태코드 -->
, #{msg} <!-- 메시지 -->
, #{createdAt} <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
WHERE NOT EXISTS (
SELECT 1
FROM TB_EPOST_RCPTN_RSLT
WHERE RELDIVKEY = #{reldivkey}
AND REGINO = #{regino}
)</insert>
<insert id="insertRegistrationResult" parameterType="cokr.xit.interfaces.epost.RegistrationResult">/* 전자우편 신청 접수 결과 등록(emailResultMapper.insertRegistrationResult) */
<selectKey resultType="string" keyProperty="rcptRsltId" order="BEFORE">
SELECT IFNULL(MAX(RCPT_RSLT_ID) + 1, CONCAT(TODAY, '0000001')) NEW_ID
FROM TB_EPOST_RCPT_RSLT A, (<include refid="utility.selectToday" />) B
WHERE RCPT_RSLT_ID LIKE CONCAT(TODAY, '%')</selectKey>
INSERT INTO TB_EPOST_RCPT_RSLT (
RCPT_RSLT_ID <!-- 접수 결과 ID -->
, CON_ORG <!-- 외부기관구분코드 -->
, RELORSECT_CD <!-- 결제부서코드 -->
, RELETCDATA <!-- 발송인별추가데이터 -->
, EXTRI_REGYMD <!-- 기관발송일자 -->
, RCEPT_YMD <!-- 접수일자 -->
, RCEPT_ID <!-- 접수우체국국기호 -->
, DIV_KB <!-- 취급구분 -->
, RCEPT_CNT <!-- 발송수량 -->
, RCEPT_AMT <!-- 결제금액 -->
, USEFEE_AMT <!-- 제작수수료 -->
, TOTPOST_PRC <!-- 우편요금 -->
, JOB_CD <!-- 작업 코드 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
)
SELECT #{rcptRsltId} <!-- 접수 결과 ID -->
, #{conOrg} <!-- 외부기관구분코드 -->
, #{relorsectCd} <!-- 결제부서코드 -->
, #{reletcdata} <!-- 발송인별추가데이터 -->
, #{extriRegymd} <!-- 기관발송일자 -->
, #{rceptYmd} <!-- 접수일자 -->
, #{rceptId} <!-- 접수우체국국기호 -->
, #{divKb} <!-- 취급구분 -->
, #{rceptCnt} <!-- 발송수량 -->
, #{rceptAmt} <!-- 결제금액 -->
, #{usefeeAmt} <!-- 제작수수료 -->
, #{totpostPrc} <!-- 우편요금 -->
, #{jobCd} <!-- 작업 코드 -->
, #{createdAt} <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
FROM DUAL
WHERE NOT EXISTS ( <!-- RELETCDATA가 등록되어 있는 것은 제외 -->
SELECT 1
FROM TB_EPOST_RCPT_RSLT
WHERE RELETCDATA = #{reletcdata}
)</insert>
<update id="updateRegistrationResult" parameterType="map">/* 전자우편 신청 접수 결과(jobCd) 업데이트(emailResultMapper.updateRegistrationResult) */
UPDATE TB_EPOST_RCPT_RSLT A
, TB_EPOST_RCPT_REG B
SET A.JOB_CD = SUBSTR(B.JOB_CD, 2)
WHERE A.RELETCDATA IN (<foreach collection="conKeys" item="conKey" separator=",">#{conKey}</foreach>)
AND A.RELETCDATA = B.CON_KEY</update>
<insert id="insertProductionResult" parameterType="cokr.xit.interfaces.epost.ProductionResult">/* 전자우편 제작 결과 등록(emailResultMapper.insertProductionResult) */
INSERT INTO TB_EPOST_MAKE_RSLT (
CON_KEY <!-- 외부연계식별키 -->
, RGST_NMBR <!-- 등기 번호 -->
, RELETCDATA <!-- 발송인별추가데이터 -->
, DATA_CD <!-- 제작결과 -->
, MAIL_CNT <!-- 내용문매수 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
)
SELECT #{conKey} <!-- 외부연계식별키 -->
, #{rgstNmbr} <!-- 등기 번호 -->
, #{reletcdata} <!-- 발송인별추가데이터 -->
, #{dataCd} <!-- 제작결과 -->
, #{mailCnt} <!-- 내용문매수 -->
, #{createdAt} <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
FROM DUAL
WHERE NOT EXISTS ( <!-- CON_KEY, RGST_NMBR가 등록되어 있는 것은 제외 -->
SELECT 1
FROM TB_EPOST_MAKE_RSLT
WHERE CON_KEY = #{conKey}
AND RGST_NMBR = #{rgstNmbr}
)</insert>
<insert id="insertDeliveryResult" parameterType="cokr.xit.interfaces.epost.DeliveryResult">/* 전자우편 배달 결과 등록(emailResultMapper.insertDeliveryResult) */
<selectKey resultType="string" keyProperty="dlvrRsltId" order="BEFORE">
SELECT IFNULL(MAX(DLVR_RSLT_ID) + 1, CONCAT(TODAY, '0000001')) NEW_ID
FROM TB_EPOST_DLVR_RSLT A, (<include refid="utility.selectToday" />) B
WHERE DLVR_RSLT_ID LIKE CONCAT(TODAY, '%')</selectKey>
INSERT INTO TB_EPOST_DLVR_RSLT (
DLVR_RSLT_ID <!-- 배달 결과 ID -->
, CON_KEY <!-- 외부연계식별키 -->
, OUTSIDUSERID <!-- 외부기관구분코드 -->
, RELETCDATA <!-- 발송인별추가데이터 -->
, REGINO <!-- 등기번호 -->
, DELIVYMD <!-- 배달일자 -->
, DELIVHHMI <!-- 배달시분 -->
, DELIVRSLTCD <!-- 배달결과코드 -->
, NONDELIVREASNCD <!-- 미배달사유코드 -->
, NONDELIVREASNCDNM <!-- 미배달사유명 -->
, SUBRECPRSNNM <!-- 수령인명 -->
, RELRECPRSNCD <!-- 수령인관계코드 -->
, RELRECPRSNCDNM <!-- 수령인관계명 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
) VALUES (
#{dlvrRsltId} <!-- 배달 결과 ID -->
, #{reletcdata} <!-- 외부연계식별키, 발송인별추가데이터 -->
, #{outsiduserid} <!-- 외부기관구분코드 -->
, #{reletcdata} <!-- 발송인별추가데이터 -->
, #{regino} <!-- 등기번호 -->
, #{delivymd} <!-- 배달일자 -->
, #{delivhhmi} <!-- 배달시분 -->
, #{delivrsltcd} <!-- 배달결과코드 -->
, #{nondelivreasncd} <!-- 미배달사유코드 -->
, #{nondelivreasncdnm} <!-- 미배달사유명 -->
, #{subrecprsnnm} <!-- 수령인명 -->
, #{relrecprsncd} <!-- 수령인관계코드 -->
, #{relrecprsncdnm} <!-- 수령인관계명 -->
, #{createdAt} <!-- 등록 일시 -->
, #{createdBy} <!-- 등록자 -->
)</insert>
<select id="selectResultLogs" parameterType="map" resultType="dataobject">/* 전자우편 신청결과 로그 조회(emailResultMapper.selectResultLogs) */
<include refid="utility.paging-prefix" />
SELECT PROC_ID <!-- 처리 ID -->
, PROC_SEQ <!-- 순번 -->
, PROC_TYPE <!-- 처리 유형 -->
, RESULT_ID <!-- 처리결과 ID -->
, CON_KEY <!-- 외부연계 식별자 -->
, RGST_NMBR <!-- 등기번호 -->
, PROC_STT <!-- 처리상태 -->
FROM TB_EPOST_PROC_LOG
WHERE PROC_ID = #{procID}
AND PROC_STT = 'N'
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" /></select>
<insert id="insertResultLogs" parameterType="map">/* 전자우편 신청결과 로그 등록(emailResultMapper.insertResultLogs) */
INSERT INTO TB_EPOST_PROC_LOG (
PROC_ID <!-- 처리 ID -->
, PROC_SEQ <!-- 처리 순번 -->
, PROC_TYPE <!-- 처리 유형 -->
, RESULT_ID <!-- 결과 ID -->
, CON_KEY <!-- 외부연계 식별키 -->
, RGST_NMBR <!-- 등기번호 -->
, PROC_STT <!-- 업무 연계 상태 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
)<foreach collection="logs" item="log" separator=" UNION">
SELECT #{log.procId} <!-- 처리 ID -->
, #{log.procSeq} <!-- 처리 순번 -->
, #{log.procType} <!-- 처리 유형 -->
, #{log.resultId} <!-- 결과 ID -->
, #{log.conKey} <!-- 외부연계 식별키 -->
, #{log.rgstNmbr} <!-- 등기번호 -->
, 'N' <!-- 업무 연계 상태 -->
, #{log.createdAt} <!-- 등록 일시 -->
, #{log.createdBy} <!-- 등록자 --></foreach>
</insert>
<update id="updateResultLogStatus" parameterType="map">/* 전자우편 신청결과 로그 상태 업데이트(emailResultMapper.updateResultLogStatus) */
UPDATE TB_EPOST_PROC_LOG A
, (<foreach collection="logs" item="log" separator=" UNION">
SELECT #{log.PROC_ID} PROC_ID, #{log.PROC_SEQ} PROC_SEQ, #{log.PROC_STT} PROC_STT</foreach>
) B
SET A.PROC_STT = B.PROC_STT
WHERE A.PROC_ID = B.PROC_ID
AND A.PROC_SEQ = B.PROC_SEQ</update>
</mapper>

@ -0,0 +1,21 @@
package cokr.xit.fims.wpm.service.bean;
import java.io.InputStream;
import java.util.List;
import org.junit.jupiter.api.Test;
import org.springframework.core.io.ClassPathResource;
import cokr.xit.fims.wpm.WoopyonMoa;
public class WoopyonMoaBeanTest {
@Test
void parse() {
try (InputStream input = new ClassPathResource("files/일반우편_발송완료.xls").getInputStream()) {
List<WoopyonMoa> rows = WoopyonMoaBean.parse(input);
rows.forEach(System.out::println);
} catch (Exception e) {
e.printStackTrace();
}
}
}
Loading…
Cancel
Save