우편통합 발송 수정.

main
jjh 1 year ago
parent 019e6a72ad
commit cbd8a4a9ce

@ -96,4 +96,22 @@ public interface EpostRcptRegMapper extends AbstractMapper {
return epostRcptReg != null && deleteEpostRcptReg(params().set("epostRcptReg", epostRcptReg)) == 1; return epostRcptReg != null && deleteEpostRcptReg(params().set("epostRcptReg", epostRcptReg)) == 1;
} }
/** .<br />
* @param req
* @return
*/
String selectEpostSenderRegSeq(String conKey);
/** <br />
* @param req
* @return
*/
String getEpostSenderDetailSeq(String sndngYmd);
/**<br />
* @param req
* @return
*/
DataObject getEpostPostInfo(String deptCd);
} }

@ -134,4 +134,32 @@ public class EpostRcptRegBean extends AbstractComponent {
return epostRcptDtlMapper.delete(epostRcptDtl); return epostRcptDtlMapper.delete(epostRcptDtl);
} }
/** CON_KEY .
* @param req
* @return
*/
public String getEpostSenderRegSeq(String sndngYmd, String deptCd) {
String conKey = sndngYmd + "-" + deptCd + "0000";
return epostRcptRegMapper.selectEpostSenderRegSeq(conKey);
}
/**
* @param req
* @return
*/
public String getEpostSenderDetailSeq(String sndngYmd) {
return epostRcptRegMapper.getEpostSenderDetailSeq(sndngYmd);
}
/**
* @param req
* @return
*/
public DataObject getEpostPostInfo(String deptCd) {
return epostRcptRegMapper.getEpostPostInfo(deptCd);
}
} }

@ -22,6 +22,11 @@ public class Sndng extends AbstractEntity {
*/ */
private String sggCd; private String sggCd;
/**
*
*/
private String deptCd;
/** /**
* *
*/ */
@ -137,4 +142,9 @@ public class Sndng extends AbstractEntity {
*/ */
private String[] sndngDtlIDs; private String[] sndngDtlIDs;
/**
* - 0: 1:
*/
private String postSndngSeCd;
} }

@ -1,23 +1,28 @@
package cokr.xit.fims.sndb.service.bean; package cokr.xit.fims.sndb.service.bean;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import cokr.xit.foundation.AbstractComponent; import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.UserInfo;
import cokr.xit.foundation.data.DataObject; import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.sndb.Sndng; import cokr.xit.fims.sndb.Sndng;
import cokr.xit.fims.sndb.SndngDtl; import cokr.xit.fims.sndb.SndngDtl;
import cokr.xit.fims.sndb.Svbtc; import cokr.xit.fims.sndb.Svbtc;
import cokr.xit.base.user.service.bean.UserBean;
import cokr.xit.fims.cmmn.CrdnSttsHstry; import cokr.xit.fims.cmmn.CrdnSttsHstry;
import cokr.xit.fims.cmmn.service.bean.CrdnSttsHstryBean; import cokr.xit.fims.cmmn.service.bean.CrdnSttsHstryBean;
import cokr.xit.fims.enis.EnisMtchg; import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.service.bean.EnisMtchgBean; import cokr.xit.fims.enis.service.bean.EnisMtchgBean;
import cokr.xit.fims.epst.EpostRcptDtl; import cokr.xit.fims.epst.EpostRcptDtl;
import cokr.xit.fims.epst.EpostRcptReg; import cokr.xit.fims.epst.EpostRcptReg;
import cokr.xit.fims.epst.dao.EpostRcptRegMapper;
import cokr.xit.fims.epst.service.bean.EpostRcptRegBean;
import cokr.xit.fims.levy.Levy; import cokr.xit.fims.levy.Levy;
import cokr.xit.fims.levy.service.bean.LevyBean; import cokr.xit.fims.levy.service.bean.LevyBean;
import cokr.xit.fims.sndb.SndbQuery; import cokr.xit.fims.sndb.SndbQuery;
@ -49,6 +54,10 @@ public class SndngBean extends AbstractComponent {
@Resource(name = "crdnSttsHstryBean") @Resource(name = "crdnSttsHstryBean")
private CrdnSttsHstryBean crdnSttsHstryBean; private CrdnSttsHstryBean crdnSttsHstryBean;
/** 사용자 정보 DAO */
@Resource(name="userBean")
protected UserBean userBean;
/** 부과 대장 정보 Bean */ /** 부과 대장 정보 Bean */
@Resource(name = "levyBean") @Resource(name = "levyBean")
private LevyBean levyBean; private LevyBean levyBean;
@ -57,6 +66,10 @@ public class SndngBean extends AbstractComponent {
@Resource(name = "enisMtchgBean") @Resource(name = "enisMtchgBean")
private EnisMtchgBean enisMtchgBean; private EnisMtchgBean enisMtchgBean;
/** 전자우편 접수 등록 정보 Bean */
@Resource(name = "epostRcptRegBean")
private EpostRcptRegBean epostRcptRegBean;
/** . /** .
* @param req * @param req
* @return * @return
@ -150,6 +163,11 @@ public class SndngBean extends AbstractComponent {
int levyAdamt = 0; // 부과 가산금 int levyAdamt = 0; // 부과 가산금
int levySumAmt = 0; // 부과 합계 금액 int levySumAmt = 0; // 부과 합계 금액
// 사용자 정보
DataObject userInfo = userBean.getUserInfo(currentUser().getId());
// 부서 코드
sndng.setDeptCd(userInfo.string("DEPT_CD"));
// 위반 ID // 위반 ID
sndng.setVltnId(sndng.getVltnId()); sndng.setVltnId(sndng.getVltnId());
// 계고장 // 계고장
@ -225,6 +243,8 @@ public class SndngBean extends AbstractComponent {
levy.setSggCd(infoCrdnPayer.string("SGG_CD")); // 시군구 코드 levy.setSggCd(infoCrdnPayer.string("SGG_CD")); // 시군구 코드
levy.setCrdnId(infoCrdnPayer.string("CRDN_ID")); // 단속 ID levy.setCrdnId(infoCrdnPayer.string("CRDN_ID")); // 단속 ID
levy.setRtpyrId(infoCrdnPayer.string("RTPYR_ID")); // 납부자 ID levy.setRtpyrId(infoCrdnPayer.string("RTPYR_ID")); // 납부자 ID
levy.setInstCd(userInfo.string("NSTT_CD")); // 자치단체 코드
levy.setDeptCd(userInfo.string("DEPT_CD")); // 부서 코드
levy.setFfnlgAmt(ffnlgAmt); // 과태료 금액 levy.setFfnlgAmt(ffnlgAmt); // 과태료 금액
levy.setLevyPcptax(levyPcptax); // 부과 금액 levy.setLevyPcptax(levyPcptax); // 부과 금액
levy.setLevyAdamt(levyAdamt); // 가산 금액 levy.setLevyAdamt(levyAdamt); // 가산 금액
@ -364,50 +384,51 @@ public class SndngBean extends AbstractComponent {
boolean retSuccess = false; // DB 처리 결과 boolean retSuccess = false; // DB 처리 결과
String retMessage = "[F] "; // 처리 결과 메시지 String retMessage = "[F] "; // 처리 결과 메시지
// 전자우편 접수 등록
EpostRcptReg epostRcptReg = new EpostRcptReg();
String workId = ""; String workId = "";
String jobCd = ""; String jobCd = "";
// 발송 정보 조회 if (sndng.getSndngSeCd().equals("01")) { // 계고장
DataObject infoSndng = sndngMapper.selectSndngInfo(sndng.getSndngId());
if (infoSndng.string("SNDNG_SE_CD").equals("01")) { // 계고장
workId = "E"; workId = "E";
} else if (infoSndng.string("TASK_SE_CD").equals("DPV")) { // 장애인전용 } else if (sndng.getTaskSeCd().equals("DPV")) { // 장애인전용
if (infoSndng.string("SNDNG_SE_CD").equals("02")) { // 사전통지 if (sndng.getSndngSeCd().equals("02")) { // 사전통지
workId = "2"; workId = "2";
} else { } else {
workId = "7"; workId = "7";
} }
} else if (infoSndng.string("TASK_SE_CD").equals("ECA")) { // 전기차주차 } else if (sndng.getTaskSeCd().equals("ECA")) { // 전기차주차
if (infoSndng.string("SNDNG_SE_CD").equals("02")) { // 사전통지 if (sndng.getSndngSeCd().equals("02")) { // 사전통지
workId = "L"; workId = "L";
} else { } else {
workId = "M"; workId = "M";
} }
} else {
retMessage = "[E] 작업중 지정되지 않았습니다.";
return retMessage;
} }
if (infoSndng.string("VLTN_CD").equals("")) { // 발송 정보 조회
DataObject sndngInfo = sndngMapper.selectSndngInfo(sndng.getSndngId());
if (sndngInfo.string("VLTN_CD").equals("")) {
jobCd = "01"; jobCd = "01";
} else { } else {
jobCd = infoSndng.string("VLTN_CD"); jobCd = sndngInfo.string("VLTN_CD");
} }
if (infoSndng.string("SNDNG_SE_CD").equals("01")) { // 계고장 if (sndng.getSndngSeCd().equals("01")) { // 계고장
jobCd = jobCd + "01"; jobCd = jobCd + "01";
} else if (infoSndng.string("SNDNG_SE_CD").equals("02")) { // 사전통지 } else if (sndng.getSndngSeCd().equals("02")) { // 사전통지
jobCd = jobCd + "02"; jobCd = jobCd + "02";
} else if (infoSndng.string("SNDNG_SE_CD").equals("03")) { // 부과 } else if (sndng.getSndngSeCd().equals("03")) { // 부과
jobCd = jobCd + "03"; jobCd = jobCd + "03";
} else if (infoSndng.string("SNDNG_SE_CD").equals("04")) { // 독촉 } else if (sndng.getSndngSeCd().equals("04")) { // 독촉
jobCd = jobCd + "04"; jobCd = jobCd + "04";
} else if (infoSndng.string("SNDNG_SE_CD").equals("05")) { // 압류예고 } else if (sndng.getSndngSeCd().equals("05")) { // 압류예고
jobCd = jobCd + "05"; jobCd = jobCd + "05";
} else if (infoSndng.string("SNDNG_SE_CD").equals("06")) { // 압류통지 } else if (sndng.getSndngSeCd().equals("06")) { // 압류통지
jobCd = jobCd + "06"; jobCd = jobCd + "06";
} else if (infoSndng.string("SNDNG_SE_CD").equals("09")) { // 체납분 } else if (sndng.getSndngSeCd().equals("09")) { // 체납분
jobCd = jobCd + "09"; jobCd = jobCd + "09";
} else { } else {
retMessage = "[E] 작업중 발송구분이 지정되지 않았습니다."; retMessage = "[E] 작업중 발송구분이 지정되지 않았습니다.";
@ -415,40 +436,123 @@ public class SndngBean extends AbstractComponent {
return retMessage; return retMessage;
} }
// String today = infoSndng.string("TODAY"); String seq = epostRcptRegBean.getEpostSenderRegSeq(sndngInfo.string("TODAY"), sndngInfo.string("DEPT_CD"));
// String seq = sndngMapper.getEpostSenderRegSeq(today, ); String conKey = sndngInfo.string("TODAY") + "-" + sndngInfo.string("DEPT_CD") + "0000" + "-" + seq;
// String conKey = "";
// sToday := Today; if (sndng.getPostSndngSeCd().equals("0")) {
// im_seq := Get_EPOST_SENDER_REG_Seq(sToday, CPSystem_Info.TAXELSE_DEP_CODE + '0000'); String seqNo = epostRcptRegBean.getEpostSenderDetailSeq(sndngInfo.string("TODAY"));
// im_con_key := sToday + '-' + CPSystem_Info.TAXELSE_DEP_CODE + '0000' + '-' + im_seq; }
// // 포맷: 등록일(REG_YMD)-발송기관코드(RECEV_SENDER_ORG_CODE)-업무코드(WORK_ID)-우편물구분(POST_SE)일련번호(RECEV_SEQ_NO)
// // 예시: 20170719-40504370000-003-1001
// if regist_gubun = '0' then
// begin // 사용자 정보
// nSeqNo := Get_EPOST_SENDER_DETAIL_Seq(sToday); DataObject userInfo = userBean.getUserInfo(currentUser().getId());
// end;
// 등기우편 관련 자치단체 및 부서 정보
DataObject epostInfo = epostRcptRegBean.getEpostPostInfo(sndngInfo.string("DEPT_CD"));
// 전자우편 접수 등록
EpostRcptReg epostRcptReg = new EpostRcptReg();
epostRcptReg.setConKey(conKey); //
epostRcptReg.setRceptId(epostInfo.string("RCEPT_ID")); //
epostRcptReg.setDataCd("00"); //
for (int iLoop = 0; iLoop < sndng.getSndngDtlIDs().length; iLoop++) { // 000=일반 001=등기 201=선택등기
// 전자우편 접수 상세 if (sndng.getPostSndngSeCd().equals("1")) {
EpostRcptDtl epostRcptDtl = new EpostRcptDtl(); if (sndng.getSggCd().equals("11500")) {
epostRcptReg.setDivKb("00" + sndng.getPostSndngSeCd());
epostRcptReg.setSealCd("1" + "2" + workId);
} else {
epostRcptReg.setDivKb("20" + sndng.getPostSndngSeCd());
epostRcptReg.setSealCd("E" + "2" + workId);
}
} else {
epostRcptReg.setDivKb("00" + sndng.getPostSndngSeCd());
epostRcptReg.setSealCd(sndng.getPostSndngSeCd() + "2" + workId);
}
// 발송 상세 정보 조회 epostRcptReg.setDfpayyn("001");
DataObject infoSndngDtl = sndngMapper.selectSndngDtlInfo(sndng.getSndngDtlIDs()[iLoop]); epostRcptReg.setRcptKb("020");
epostRcptReg.setWordKb("001");
epostRcptReg.setRecevCnt(sndngInfo.number("TNOCS").intValue()); // 건수 확인 필요하다.
epostRcptReg.setEnvCd("003"); // 접착식
// 서울
if ("11".equals(sndng.getSggCd().substring(0, 2))) {
epostRcptReg.setColorYn("Y");
epostRcptReg.setMailCnt(2);
if (workId.equals("E")) {
epostRcptReg.setFlexCd("N");
} else {
epostRcptReg.setFlexCd("Y");
}
} else {
if (sndng.getSggCd().equals("44200")) { // 아산시청
if (sndng.getSndngSeCd().equals("02")) { // 사전통지는 컬러로..
epostRcptReg.setColorYn("Y");
} else {
epostRcptReg.setColorYn("N");
}
} else if (sndng.getSggCd().equals("50110")) { // 제주시청
if (sndng.getSndngSeCd().equals("02") || sndng.getSndngSeCd().equals("01") || sndng.getSndngSeCd().equals("10")) { // 사전통지, 계도 컬러로
epostRcptReg.setColorYn("Y");
} else {
epostRcptReg.setColorYn("N");
}
}
epostRcptReg.setFlexCd("N");
epostRcptReg.setMailCnt(1);
} }
retMessage = "[S] 작업이 정상 처리 되었습니다."; epostRcptReg.setMmYn("Y");
epostRcptReg.setDmCnt(0);
epostRcptReg.setSbFg("Y");
epostRcptReg.setApvlNb(epostInfo.string("APVL_NB")); // 후납계약 승인번호
epostRcptReg.setSendDate(sndngInfo.string("NOW").substring(0, 8));
epostRcptReg.setSendTime(sndngInfo.string("NOW").substring(8));
return retMessage; if ("420".equals(epostInfo.string("DEPT_CD").substring(0,3)) && (sndngInfo.string("TASK_SE_CD").equals("ECA"))) {
epostRcptReg.setRelorsectCd(epostInfo.string("4200999"));
} else {
epostRcptReg.setRelorsectCd(epostInfo.string("DEPT_CD"));
} }
epostRcptReg.setRecevSenderOrgCode(epostInfo.string("DEPT_CD") + "0000");
epostRcptReg.setRecevSenderNm(epostInfo.string("INST_NM") + " " + epostInfo.string("DEPT_NM"));
epostRcptReg.setRecevSenderZipcode(epostInfo.string("INST_ZIP"));
epostRcptReg.setRecevSenderAddr(epostInfo.string("INST_ADDR"));
epostRcptReg.setRecevSenderDetailaddr(epostInfo.string("INST_DADDR"));
epostRcptReg.setRecevSenderDepartTel(epostInfo.string("DEPT_TELNO"));
epostRcptReg.setRecevSenderDepartNm(epostInfo.string("DEPT_NM"));
epostRcptReg.setRecevDivCd(sndng.getPostSndngSeCd());
epostRcptReg.setRecevPrintDt(sndngInfo.string("TODAY_MASK"));
epostRcptReg.setRecevPrintYear(sndngInfo.string("TODAY").substring(0, 4));
epostRcptReg.setRecevPrintMonth(sndngInfo.string("TODAY").substring(4, 6));
epostRcptReg.setRecevPrintDay(sndngInfo.string("TODAY").substring(6, 8));
epostRcptReg.setRecevSenderFax(epostInfo.string("DEPT_FXNO"));
epostRcptReg.setRecevSerderStaff(userInfo.string("USER_NM"));
epostRcptReg.setRecevSenderEmail(userInfo.string("EML_ADRS"));
// epostRcptReg.set_
// for (int iLoop = 0; iLoop < sndng.getSndngDtlIDs().length; iLoop++) {
// // 전자우편 접수 상세
// EpostRcptDtl epostRcptDtl = new EpostRcptDtl();
//
// // 발송 상세 정보 조회
// DataObject sndngDtlInfo = sndngMapper.selectSndngDtlInfo(sndng.getSndngDtlIDs()[iLoop]);
//
//
// }
retMessage = "[S] 작업이 정상 처리 되었습니다.";
return retMessage;
}

@ -652,6 +652,41 @@ UPDATE TB_EPOST_RCPT_DTL SET
, MDFCN_DT =<include refid="utility.now" /> , MDFCN_DT =<include refid="utility.now" />
, MDFR = #{currentUser.id} , MDFR = #{currentUser.id}
WHERE CON_KEY = #{epostRcptDtl.conKey} WHERE CON_KEY = #{epostRcptDtl.conKey}
AND RGST_NMBR = #{epostRcptDtl.rgstNmbr}</update> AND RGST_NMBR = #{epostRcptDtl.rgstNmbr}
</update>
<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="getEpostSenderDetailSeq" parameterType="String" resultType="String">/* 전자우편 접수 상세 등기번호 조회(epostRcptRegMapper.getEpostSenderDetailSeq) */
SELECT LPAD(IFNULL(RIGHT(MAX(RGST_NMBR), 5), '00000') + 1, 5, '0') AS RGST_NMBR <!-- 등기 번호 -->
FROM TB_EPOST_RCPT_DTL
WHERE RGST_NMBR LIKE CONCAT(#{sndngYmd}, '%')
</select>
<select id="getEpostPostInfo" parameterType="String" resultType="dataobject">/* 전자우편 접수 상세 등기번호 조회(epostRcptRegMapper.getEpostPostInfo) */
SELECT DI.DEPT_CD <!-- 부서 코드 -->
, DI.DEPT_NM <!-- 부서 명 -->
, DI.DEPT_TELNO <!-- 부서 전화번호 -->
, DI.DEPT_FXNO <!-- 부서 팩스번호 -->
, DI.SNDNG_LINK_SE_CD <!-- 발송 연계 구분 코드 -->
, DI.PSTOFC_NM <!-- 우체국 명 -->
, DI.RCEPT_ID <!-- 접수 우체국 국기호 -->
, DI.APVL_NB <!-- 후납계약 승인번호 -->
, DI.RG_NO_HEADER <!-- 등기 번호 헤더 -->
, DI.VRBACNT_LINK_SE_CD <!-- 가상계좌 연계 구분 코드 -->
, SI.SGG_CD <!-- 시군구 코드 -->
, SI.INST_CD <!-- 기관 코드 -->
, SI.INST_NM <!-- 기관 명 -->
, SI.INST_ADDR <!-- 기관 주소 -->
, SI.INST_DADDR <!-- 기관 상세주소 -->
, INST_ZIP <!-- 기관 우편번호 -->
FROM TB_DEPT_INFO DI
INNER JOIN TB_SGG_INFO SI ON (DI.SGG_CD = SI.SGG_CD AND DI.INST_CD = SI.INST_CD)
WHERE DEPT_CD = #{deptCd}
</select>
</mapper> </mapper>

@ -11,6 +11,7 @@
<!-- TB_SNDNG 발송 대장 --> <!-- TB_SNDNG 발송 대장 -->
<result property="sndngId" column="SNDNG_ID" /> <!-- 발송 ID --> <result property="sndngId" column="SNDNG_ID" /> <!-- 발송 ID -->
<result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드 --> <result property="sggCd" column="SGG_CD" /> <!-- 시군구 코드 -->
<result property="deptCd" column="DEPT_CD" /> <!-- 부서 코드 -->
<result property="taskSeCd" column="TASK_SE_CD" /> <!-- 업무 구분 코드 --> <result property="taskSeCd" column="TASK_SE_CD" /> <!-- 업무 구분 코드 -->
<result property="sndngRegSeCd" column="SNDNG_REG_SE_CD" /> <!-- 발송 등록 구분 코드 --> <result property="sndngRegSeCd" column="SNDNG_REG_SE_CD" /> <!-- 발송 등록 구분 코드 -->
<result property="sndngSeCd" column="SNDNG_SE_CD" /> <!-- 발송 구분 코드 --> <result property="sndngSeCd" column="SNDNG_SE_CD" /> <!-- 발송 구분 코드 -->
@ -538,7 +539,7 @@
<select id="selectAdvntceSndngTrgts" parameterType="map" resultType="dataobject">/* 계고장 발송 대상 객체 가져오기(sndngMapper.selectWrngSndngTrgts) */ <select id="selectAdvntceSndngTrgts" parameterType="map" resultType="dataobject">/* 계고장 발송 대상 객체 가져오기(sndngMapper.selectWrngSndngTrgts) */
SELECT COUNT(*) OVER() AS TNOCS <!-- 총건수 --> SELECT COUNT(*) OVER() AS TNOCS <!-- 총건수 -->
, SUM(C.ADVNTCE_AMT) OVER() AS GRAMT <!-- 총금액 --> , SUM(C.FFNLG_AMT) OVER() AS GRAMT <!-- 총금액 -->
, C.CRDN_ID <!-- 단속 ID --> , C.CRDN_ID <!-- 단속 ID -->
<include refid="selectAdvntceSndngTrgt" /> <include refid="selectAdvntceSndngTrgt" />
<where> <where>
@ -565,6 +566,7 @@
<sql id="selectSndng"> <sql id="selectSndng">
SELECT S.SNDNG_ID <!-- 발송 ID --> SELECT S.SNDNG_ID <!-- 발송 ID -->
, S.SGG_CD <!-- 시군구 코드 --> , S.SGG_CD <!-- 시군구 코드 -->
, S.DEPT_CD <!-- 부서 코드 -->
, S.TASK_SE_CD <!-- 업무 구분 코드 --> , S.TASK_SE_CD <!-- 업무 구분 코드 -->
, (SELECT FN_GET_CODE_NM('FIM054', S.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM <!-- 업무 구분 명 --> , (SELECT FN_GET_CODE_NM('FIM054', S.TASK_SE_CD) FROM DUAL) AS TASK_SE_NM <!-- 업무 구분 명 -->
, S.SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 --> , S.SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 -->
@ -596,6 +598,8 @@
, S.MDFR <!-- 수정자 --> , S.MDFR <!-- 수정자 -->
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = S.MDFR) AS MDFR_NM <!-- 수정자 명 --> , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = S.MDFR) AS MDFR_NM <!-- 수정자 명 -->
, <include refid="utility.today" /> AS TODAY <!-- 오늘 일자 --> , <include refid="utility.today" /> AS TODAY <!-- 오늘 일자 -->
, FN_GET_MASK_DATE(<include refid="utility.today" />, 'K') AS TODAY_MASK <!-- 오늘 일자 한글 마스크 -->
, <include refid="utility.now" /> AS NOW <!-- 현재 일시 -->
FROM TB_SNDNG S FROM TB_SNDNG S
LEFT OUTER JOIN TB_VLTN_INFO VI ON (S.VLTN_ID = VI.VLTN_ID AND S.SGG_CD = VI.SGG_CD AND S.TASK_SE_CD = VI.TASK_SE_CD) LEFT OUTER JOIN TB_VLTN_INFO VI ON (S.VLTN_ID = VI.VLTN_ID AND S.SGG_CD = VI.SGG_CD AND S.TASK_SE_CD = VI.TASK_SE_CD)
</sql> </sql>
@ -718,6 +722,7 @@
INTO TB_SNDNG ( INTO TB_SNDNG (
SNDNG_ID <!-- 발송 ID --> SNDNG_ID <!-- 발송 ID -->
, SGG_CD <!-- 시군구 코드 --> , SGG_CD <!-- 시군구 코드 -->
, DEPT_CD <!-- 부서 코드 -->
, TASK_SE_CD <!-- 업무 구분 코드 --> , TASK_SE_CD <!-- 업무 구분 코드 -->
, SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 --> , SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 -->
, SNDNG_SE_CD <!-- 발송 구분 코드 --> , SNDNG_SE_CD <!-- 발송 구분 코드 -->
@ -745,6 +750,7 @@
VALUES ( VALUES (
#{sndng.sndngId} <!-- 발송 ID --> #{sndng.sndngId} <!-- 발송 ID -->
, #{sndng.sggCd} <!-- 시군구 코드 --> , #{sndng.sggCd} <!-- 시군구 코드 -->
, #{sndng.deptCd} <!-- 부서 코드 -->
, #{sndng.taskSeCd} <!-- 업무 구분 코드 --> , #{sndng.taskSeCd} <!-- 업무 구분 코드 -->
, #{sndng.sndngRegSeCd} <!-- 발송 등록 구분 코드 --> , #{sndng.sndngRegSeCd} <!-- 발송 등록 구분 코드 -->
, #{sndng.sndngSeCd} <!-- 발송 구분 코드 --> , #{sndng.sndngSeCd} <!-- 발송 구분 코드 -->
@ -881,6 +887,7 @@
, (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SD.DLTR) AS DLTR_NM <!-- 삭제자 명 --> , (SELECT USER_NM FROM TB_USER X WHERE X.USER_ID = SD.DLTR) AS DLTR_NM <!-- 삭제자 명 -->
, SD.DEL_RSN <!-- 삭제 사유 --> , SD.DEL_RSN <!-- 삭제 사유 -->
, S.SGG_CD <!-- 시군구 코드 --> , S.SGG_CD <!-- 시군구 코드 -->
, S.DEPT_CD <!-- 부서 코드 -->
, S.TASK_SE_CD <!-- 업무 구분 코드 --> , S.TASK_SE_CD <!-- 업무 구분 코드 -->
, S.SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 --> , S.SNDNG_REG_SE_CD <!-- 발송 등록 구분 코드 -->
, S.SNDNG_SE_CD <!-- 발송 구분 코드 --> , S.SNDNG_SE_CD <!-- 발송 구분 코드 -->
@ -940,7 +947,7 @@
, C.CRDN_YMD <!-- 단속 일자 --> , C.CRDN_YMD <!-- 단속 일자 -->
, C.CRDN_TM <!-- 단속 시각 --> , C.CRDN_TM <!-- 단속 시각 -->
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM <!-- 단속 일시 --> , (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM <!-- 단속 일시 -->
, FN_GET_MASK_DATETIME(C.CRDN_YMD, C.CRDN_TM, '-', ':') AS CRDN_YMD_TM_MASK <!-- 단속 일시 마스크 --> , FN_GET_MASK_DATETIME(C.CRDN_YMD, '-', C.CRDN_TM, ':') AS CRDN_YMD_TM_MASK <!-- 단속 일시 마스크 -->
, C.VHRNO <!-- 차량번호 --> , C.VHRNO <!-- 차량번호 -->
, C.CRDN_STDG_NM <!-- 단속 법정동 명 --> , C.CRDN_STDG_NM <!-- 단속 법정동 명 -->
, C.CRDN_ROAD_NM <!-- 단속 도로 명 --> , C.CRDN_ROAD_NM <!-- 단속 도로 명 -->

@ -245,7 +245,7 @@
if (selected.length < 1) return; if (selected.length < 1) return;
info.crdnIDs = selected.join(","); // 단속 IDs info.crdnIDs = selected.join(","); // 단속 IDs
info.sndngSeCd = "01" // 계고장 info.sndngSeCd = "01" // 발송 구분 코드 - 01 계고장
info.resndYn = "N"; // 재발송 여부 info.resndYn = "N"; // 재발송 여부
info.delYn = "N"; // 삭제 여부 info.delYn = "N"; // 삭제 여부

@ -241,6 +241,7 @@
if (selected.length < 1) return; if (selected.length < 1) return;
info.crdnIDs = selected.join(","); // 단속 IDs info.crdnIDs = selected.join(","); // 단속 IDs
info.sndngSeCd = "02"; // 발송 구분 코드 - 02 사전통지
info.resndYn = "N"; // 재발송 여부 info.resndYn = "N"; // 재발송 여부
info.delYn = "N"; // 삭제 여부 info.delYn = "N"; // 삭제 여부

@ -405,7 +405,7 @@
fnSearchList${pageName} = () => { fnSearchList${pageName} = () => {
// 검색조건 // 검색조건
${pageName}Control.query = getParams${pageName}(); ${pageName}Control.query = getParams${pageName}();
${pageName}Control.query.sndngSeCd = "01"; // 발송 구분 코드 - 01 사전통지 ${pageName}Control.query.sndngSeCd = "02"; // 발송 구분 코드 - 02 사전통지
${pageName}Control.query.delYn = "N"; // 삭제 여부 ${pageName}Control.query.delYn = "N"; // 삭제 여부
${pageName}Control.load(); ${pageName}Control.load();

@ -253,7 +253,6 @@
// 우편통합 발송 // 우편통합 발송
createSndngLink${pageName} = (obj) => { createSndngLink${pageName} = (obj) => {
let info = {}; let info = {};
let taskSeCd = $("#taskSeCd--${pageName}").val()
// 선택된 자료의 발송 상세 ID 추가 // 선택된 자료의 발송 상세 ID 추가
let selected = ${pageName}Control.dataset.getKeys("selected"); let selected = ${pageName}Control.dataset.getKeys("selected");
@ -261,13 +260,16 @@
if (selected.length < 1) return; if (selected.length < 1) return;
info.sndngDtlIDs = selected.join(","); // 발송 상세 IDs info.sndngDtlIDs = selected.join(","); // 발송 상세 IDs
info.sndngId = ${pageName}Control.dataset.getValue("SNDNG_ID"); info.sndngId = ${pageName}Control.dataset.getValue("SNDNG_ID"); // 발송 ID
info.sndngYmd = obj.sndngYmd; info.sggCd = $("#sggCd--${pageName}").val(); // 시군구 코드
info.dudtYmd = obj.dudtYmd; info.taskSeCd = $("#taskSeCd--${pageName}").val(); // 업무 구분 코드
info.divKb = obj.divKb; info.sndngSeCd = "02"; // 발송 구분 코드
info.sndngYmd = obj.sndngYmd; // 발송 일자
info.dudtYmd = obj.dudtYmd; // 납기 일자
info.postSndngSeCd = obj.postSndngSeCd; // 우편 발송 구분 코드 0 일반, 1 등기
ajax.post({ ajax.post({
url : wctx.url("/" + taskSeCd + ${pageName}PrefixUrl + "/080/createSndngLink.do") url : wctx.url("/" + info.taskSeCd + ${pageName}PrefixUrl + "/080/createSndngLink.do")
, data : info || {} , data : info || {}
, success : resp => { } , success : resp => { }
}); });

@ -50,8 +50,8 @@
<div class="col-md-12"> <div class="col-md-12">
<label for="dudtYmd" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end required">우편발송구분</label> <label for="dudtYmd" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end required">우편발송구분</label>
<span class="form-search-linebox"> <span class="form-search-linebox">
<input type="radio" id="rdRegular" class="form-check-input" name="divKb" alt="일반" value="000"><label for="rdRegular">일반</label> <input type="radio" id="rdRegular" class="form-check-input" name="postSndngSeCd" alt="일반" value="0"><label for="rdRegular">일반</label>
<input type="radio" id="rdRegistered" class="form-check-input" name="divKb" alt="등기" value="001" checked="checked"><label for="rdRegistered">등기</label> <input type="radio" id="rdRegistered" class="form-check-input" name="postSndngSeCd" alt="등기" value="1" checked="checked"><label for="rdRegistered">등기</label>
</span> </span>
</div> </div>
</div> </div>
@ -126,6 +126,8 @@
return false; return false;
} }
return true;
} }
// 날짜형식에 "-"이 사용된 경우에 한하여 날짜값에서 "-" 기호를 제거한다. // 날짜형식에 "-"이 사용된 경우에 한하여 날짜값에서 "-" 기호를 제거한다.
@ -146,7 +148,7 @@
if (inputDateComparison($("#sndngYmd").val(), $("#dudtYmd").val())) { if (inputDateComparison($("#sndngYmd").val(), $("#dudtYmd").val())) {
inputDate.sndngYmd = $("#sndngYmd").val(); inputDate.sndngYmd = $("#sndngYmd").val();
inputDate.dudtYmd = $("#dudtYmd").val(); inputDate.dudtYmd = $("#dudtYmd").val();
inputDate.divKb = $("input[name='divKb']:checked").val(); inputDate.postSndngSeCd = $("input[name='postSndngSeCd']:checked").val();
window.opener[callbackFuncName](inputDate); window.opener[callbackFuncName](inputDate);
window.close(); window.close();

Loading…
Cancel
Save