1. 개별총정보 - 발송반송 정보 수정.

2. 반송 등록 추가.
main
jjh 1 year ago
parent 0b774d635b
commit c67a86c2a5

@ -125,6 +125,26 @@ public interface SndngMapper extends AbstractMapper {
return !InfoCrdnPayerTrgt.isEmpty() ? InfoCrdnPayerTrgt.get(0) : null;
}
/** 1 .
* @param req
* @return
*/
default DataObject selectSndbkInfo(SndbQuery req) {
// 기본 정렬
if (req.getOrderBy() == null) {
req.setOrderBy("SD.SNDNG_DTL_ID DESC");
}
List<DataObject> sndbkInfo = selectSndngDtls(req);
return !sndbkInfo.isEmpty() ? sndbkInfo.get(0) : null;
}
/** .
* @param params

@ -100,12 +100,11 @@ public interface SndngService {
*/
String createSndngLink(Sndng sndng);
/** ID .<br />
* @param sndngDtlId ID
* @return
*/
DataObject getSndbkInfo(SndbQuery req);

@ -24,6 +24,7 @@ import cokr.xit.fims.enis.service.bean.EnisMtchgBean;
import cokr.xit.fims.epst.EpostRcptDtl;
import cokr.xit.fims.epst.EpostRcptReg;
import cokr.xit.fims.epst.service.bean.EpostRcptRegBean;
import cokr.xit.fims.excl.LevyExclQuery;
import cokr.xit.fims.levy.Levy;
import cokr.xit.fims.levy.service.bean.LevyBean;
import cokr.xit.fims.sndb.SndbQuery;
@ -942,6 +943,51 @@ public class SndngBean extends AbstractComponent {
return retMessage;
}
/**OCR .
* @param vrfcCode
* ocrData OCR
* bgngPstn
* totalLength OCR
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public String getOcrVrfcCode(String vrfcCode, String strData, int totalLength) {
int temp = 0;
int cdTemp = 0;
String retCode = "";
for (int iLoop = 0; iLoop < totalLength; iLoop++) {
temp = (iLoop + vrfcCode.length()) % vrfcCode.length();
cdTemp = cdTemp + (Integer.valueOf(strData.substring(iLoop, iLoop + 1)) * Integer.valueOf(vrfcCode.substring(temp, temp + 1)));
}
retCode = String.valueOf(cdTemp % 10);
return retCode;
}
/** ID .<br />
* @param sndngDtlId ID
* @return
*/
public DataObject getSndbkInfo(SndbQuery req) {
return sndngMapper.selectSndbkInfo(req);
}
/** .
* @param req
* @return
@ -1040,29 +1086,4 @@ public class SndngBean extends AbstractComponent {
return svbtcMapper.delete(svbtc);
}
/**OCR .
* @param vrfcCode
* ocrData OCR
* bgngPstn
* totalLength OCR
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public String getOcrVrfcCode(String vrfcCode, String strData, int totalLength) {
int temp = 0;
int cdTemp = 0;
String retCode = "";
for (int iLoop = 0; iLoop < totalLength; iLoop++) {
temp = (iLoop + vrfcCode.length()) % vrfcCode.length();
cdTemp = cdTemp + (Integer.valueOf(strData.substring(iLoop, iLoop + 1)) * Integer.valueOf(vrfcCode.substring(temp, temp + 1)));
}
retCode = String.valueOf(cdTemp % 10);
return retCode;
}
}

@ -86,6 +86,14 @@ public class SndngServiceBean extends AbstractServiceBean implements SndngServic
return sndngBean.createEPost(sndng);
}
@Override
public DataObject getSndbkInfo(SndbQuery req) {
if (req.getCallPurpose() == null) {
req.setCallPurpose("view");
}
return sndngBean.getSndbkInfo(req);
}

@ -8,8 +8,8 @@ import javax.annotation.Resource;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.code.CommonCode;
import cokr.xit.base.user.ManagedUser;
import cokr.xit.base.user.service.UserService;
import cokr.xit.base.user.service.bean.UserBean;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.sndb.SndbQuery;
import cokr.xit.fims.sndb.Sndng;
@ -44,6 +44,7 @@ public class Sndb01Controller extends ApplicationController {
, advanceNoticeSendingMain = "/070/main.do" // 사전통지 발송 현황 메인 화면
, getAdvntceSndngList = "/070/list.do" // 사전통지 발송 대상 목록 조회
, getAdvntceSndngDltInfo = "/080/info.do" // 사전통지 발송 상세 대장 조회
, getSndbkInfo = "/220/info.do" //
, createSndng = "/020/createSndng.do" // 발송 대상 등록
, createSndngLink = "/080/createSndngLink.do" // 우편 통합 발송 연계 등록
;
@ -64,6 +65,9 @@ public class Sndb01Controller extends ApplicationController {
public ModelAndView warningSendingTargetMain() {
ModelAndView mav = new ModelAndView("fims/sndb/sndb01010-main");
// 사용자 정보
ManagedUser managedUser = (ManagedUser)currentUser().getUser();
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM004", "FIM005", "FIM006", "FIM054", "FIM061", "FIM064");
@ -71,6 +75,7 @@ public class Sndb01Controller extends ApplicationController {
return mav.addObject("pageName", "sndb01010") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "wrngSndngTrgt") // prefix
.addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD)
.addObject("FIM004List", commonCodes.get("FIM004")) // 주정차위반 내역 코드(VLTN_ID)
.addObject("FIM005List", commonCodes.get("FIM005")) // 전용차로위반 내역 코드(VLTN_ID)
@ -124,11 +129,15 @@ public class Sndb01Controller extends ApplicationController {
public ModelAndView warningSendingMain() {
ModelAndView mav = new ModelAndView("fims/sndb/sndb01030-main");
// 사용자 정보
ManagedUser managedUser = (ManagedUser)currentUser().getUser();
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM054");
return mav.addObject("pageName", "sndb01030") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "sndng") // prefix
.addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD)
;
}
@ -177,6 +186,9 @@ public class Sndb01Controller extends ApplicationController {
public ModelAndView advanceNoticeSendingTargetMain() {
ModelAndView mav = new ModelAndView("fims/sndb/sndb01050-main");
// 사용자 정보
ManagedUser managedUser = (ManagedUser)currentUser().getUser();
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM004", "FIM005", "FIM006", "FIM054", "FIM061", "FIM064");
@ -184,6 +196,7 @@ public class Sndb01Controller extends ApplicationController {
return mav.addObject("pageName", "sndb01050") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "advntceSndngTrgt") // prefix
.addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD)
.addObject("FIM004List", commonCodes.get("FIM004")) // 주정차위반 내역 코드(VLTN_CD)
.addObject("FIM005List", commonCodes.get("FIM005")) // 전용차로위반 내역 코드(VLTN_CD)
@ -238,11 +251,15 @@ public class Sndb01Controller extends ApplicationController {
public ModelAndView advanceNoticeSendingMain() {
ModelAndView mav = new ModelAndView("fims/sndb/sndb01070-main");
// 사용자 정보
ManagedUser managedUser = (ManagedUser)currentUser().getUser();
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("FIM054");
return mav.addObject("pageName", "sndb01070") // View(jsp)에서 사용할 id 뒤에 붙일 suffix
.addObject("infoPrefix", "sndng") // prefix
.addObject("sggCd", managedUser.getOrgID()) // 시군구 코드(SGG_CD)
.addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD)
;
}
@ -330,4 +347,38 @@ public class Sndb01Controller extends ApplicationController {
/** (sndb/sndb01/220-info) .
* @param sndngId ID
* @return fims/sndb/sndb01220-info jsonView
* <pre>{
* "sndngDtls":
* }</pre>
*/
public ModelAndView getSndbkInfo(SndbQuery req) {
DataObject sndbkInfo = sndngService.getSndbkInfo(req);
// 등록을 호출하였지만 등록된 미배달 사유가 있는지 확인.
if (req.getCallPurpose().equals("create") && !sndbkInfo.string("UNDLVR_RSN_NM").equals("")) {
ModelAndView mav = new ModelAndView("jsonView");
return mav.addObject("pageName", "sndb01220")
.addObject("retMessage", "이미 등록된 미배달 사유가 있습니다.")
;
} else {
boolean json = jsonResponse();
ModelAndView mav = new ModelAndView(json ? "jsonView" : "fims/sndb/sndb01220-info");
// View(jsp)에서 사용할 공통코드를 조회
Map<String, List<CommonCode>> commonCodes = getCodesOf("EGP010", "FIM054");
return mav.addObject("pageName", "sndb01220")
.addObject("EGP010List", commonCodes.get("EGP010")) // 미배달 사유 코드(NONDELIVREASNCD)
.addObject("FIM054List", commonCodes.get("FIM054")) // 업무 구분 코드(TASK_SE_CD)
.addObject("callPurpose", req.getCallPurpose()) // 호출 용도
.addObject("sndbkInfo", json ? sndbkInfo : toJson(sndbkInfo)) // 반송 정보
;
}
}
}

@ -566,6 +566,14 @@ public class DpvController {
return super.createSndngLink(sndng);
}
@Override
@RequestMapping(name="장애인과태료업무 우편통합 발송 연계 등록", value=METHOD_URL.getSndbkInfo)
public ModelAndView getSndbkInfo(SndbQuery req) {
return super.getSndbkInfo(req);
}
}

@ -911,7 +911,7 @@
, S.SNDNG_STTS_CD <!-- 발송 상태 코드 -->
, S.RESND_YN <!-- 재발송 여부 -->
FROM TB_SNDNG_DTL SD
INNER JOIN TB_SNDNG S ON (SD.SNDNG_ID = S.SNDNG_ID)
LEFT OUTER JOIN TB_SNDNG S ON (SD.SNDNG_ID = S.SNDNG_ID)
</sql>
<select id="selectSndngDtlList" parameterType="map" resultType="dataobject">/* 발송 상세 목록 조회(sndngMapper.selectSndngDtlList) */
@ -1383,7 +1383,6 @@
AND DEL_YN = 'N'
</update>
<update id="updateSndngDtlSttsCd" parameterType="map">/* 발송 상세 상태 코드 수정(sndngMapper.updateSndngDtlSttsCd) */
UPDATE TB_SNDNG_DTL
SET CON_KEY = #{sndngDtl.conKey} <!-- 외부연계식별키 -->
@ -1395,4 +1394,5 @@
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId} <!-- 발송 상세 ID -->
AND DEL_YN = 'N'
</update>
</mapper>

@ -139,7 +139,7 @@
**************************************************************************/
var ${pageName}Control = new DatasetControl({
prefix : "sndngDtlInfo"
, prefixName : "발송 상"
, prefixName : "발송 상"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.sndngDtlInfoList
, appendData : true

@ -0,0 +1,199 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false" session="false"%>
<%@ include file="/WEB-INF/jsp/include/taglib.jsp"%>
<!-- inner page html -->
<div class="content-wrapper">
<!-- Content -->
<div class="container flex-grow-1 px-0">
<c:set var="prefixName" scope="request">부과제외 정보</c:set>
<!-- Page Body -->
<div class="card">
<!-- 입력 영역 -->
<form id="frmEdit--${pageName}" name="frmEdit">
<!-- hidden -->
<input type="hidden" id="crdnId--${pageName}" name="crdnId" data-map="CRDN_ID" />
<input type="hidden" id="sggCd--${pageName}" name="sggCd" data-map="SGG_CD" />
<input type="hidden" id="taskSeCd--${pageName}" name="taskSeCd" data-map="TASK_SE_CD" />
<input type="hidden" id="levyExclId--${pageName}" name="levyExclId" data-map="LEVY_EXCL_ID" />
<div class="row g-1">
<!-- 배달 일자 -->
<div class="col-md-12">
<label for="dlvrYmd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end required">배달일자</label>
<input type="text" class="form-control form-date" id="dlvrYmd--${pageName}" name="dlvrYmd" data-map="DLVR_YMD"
data-fmt-type="day" title="날짜 선택" maxlength="10" required />
<button type="button" class="bx bx-sm bx-calendar bg-white"></button>
</div>
<!-- 미배달 사유 -->
<div class="col-md-12">
<label for="undlvrRsnCd--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end required">미배달사유</label>
<select class="form-select" id="undlvrRsnCd--${pageName}" name="undlvrRsnCd" data-map="UNDLVR_RSN_CD" required>
<option value="">선택하세요</option>
<c:forEach items="${EGP010List}" var="item">
<option value="${item.code}">${item.value}</option>
</c:forEach>
</select>
</div>
</div>
</form> <!-- /입력 영역 -->
</div> <!-- <div class="card"> -->
<!-- 업무 버튼 표시 -->
<div>
<span class="container-page-btn">
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button type="button" class="btn btn-primary w-px-80" id="btnSave--${pageName}" title="저장" onclick="fnSave${pageName}()">저장</button>
</span>
</span>
</div>
<!-- / 업무 버튼 표시 -->
</div> <!-- / Content <div class="container flex-grow-1 px-0"> -->
</div> <!-- / inner page html <div class="content-wrapper"> -->
<script>
/**************************************************************************
* Global Variable
**************************************************************************/
// URL
var ${pageName}PrefixUrl = "/sndb/sndb01";
// FormFields
var ${pageName}Fields = new FormFields("#frmEdit--${pageName}");
// 호출용도
var ${pageName}CallPurpose = "${callPurpose}"
/**************************************************************************
* DatasetControl
**************************************************************************/
var ${pageName}Control = new DatasetControl({
prefix : "sndbkInfo"
, prefixName : "발송상세"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.sndngDtlId
, formats : {
DLVR_YMD : dateFormat
}
});
${pageName}Control.onCurrentChange = item => {
// Dataset 셋팅
${pageName}Fields.set(item);
// 업무구분에 따른 url 변경
${pageName}Control.urls.create = wctx.url(item.data.TASK_SE_CD + ${pageName}PrefixUrl + "/220/create.do");
${pageName}Control.urls.update = wctx.url(item.data.TASK_SE_CD + ${pageName}PrefixUrl + "/220/update.do");
// 배달일자
if (item.data.DLVR_YMD == "") {
$("#dlvrYmd--${pageName}").datepicker("setDate", new Date());
}
}
/**************************************************************************
* DatasetControl 이벤트
**************************************************************************/
// 저장 callback
${pageName}Control.onSave = (resp) => {
let dialogTitle = $("#" + ${pageName}Control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.retMessage.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
if (resp.saved) {
dialog.close(${pageName}Control.prefix + "Dialog");
if ("${savedCallbackFuncName}" != "") {
${savedCallbackFuncName}(resp.saved);
}
}
}
// 저장
${pageName}Control.save = (info) => {
if (!info) return;
let create = isEmpty(info.levyExclId);
// 민원 접수 관리에서 호출했다면..
if (create && "${saveCallbackFuncName}" != "") {
${saveCallbackFuncName}(info);
} else {
ajax.post({
url : !create ? ${pageName}Control.urls.update : ${pageName}Control.urls.create
, data : info
, success : resp => ${pageName}Control.onSave(resp)
});
}
}
/**************************************************************************
*
**************************************************************************/
/**************************************************************************
* 초기 셋팅
**************************************************************************/
// 화면 초기화
initForm${pageName} = () => {
}
// 이벤트 설정
setEvent${pageName} = () => {
// form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용
$("#frmEdit--${pageName}").find(".form-date").each(function() {
$(this).on("input",function() {
let value = this.value.replaceAll("-", "");
if (value.length > 7) {
this.value = value.substring(0, 4) + "-" + value.substring(4, 6) + "-" + value.substring(6);
} else if(value.length > 5) {
this.value = value.substring(0, 4) + "-" + value.substring(4);
}
});
});
}
// 화면 초기값 셋팅
setForm${pageName} = () => {
// 달력 초기화
initDatepicker("frmEdit--${pageName}");
$("#dlvrYmd--${pageName}").datepicker("setDate", new Date());
}
/**************************************************************************
* function
**************************************************************************/
// 저장
fnSave${pageName} = () => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
dialog.alert({
content : "현재 " + ${pageName}Control.prefixName + " 정보를 저장하시겠습니까?"
, onOK : () => {
${pageName}Control.save(${pageName}Fields.get());
}
});
}
/**************************************************************************
* script 진입
**************************************************************************/
$(document).ready(function() {
// 화면 초기화
initForm${pageName}();
// 이벤트 설정
setEvent${pageName}();
// 화면 초기값 설정
setForm${pageName}();
// Dataset 셋팅 - 단건일 경우 setData
${pageName}Control.setData([${sndbkInfo}]);
});
</script>

@ -1072,5 +1072,4 @@
fnImageDisplay${pageName}(true);
});
// #sourceURL=sprt02020-info.jsp
</script>

@ -514,5 +514,4 @@
}
});
// #sourceURL=sprt02030-info.jsp
</script>

@ -9,25 +9,19 @@
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">발송 정보</label>
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">발송 이력</label>
<!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnSndngCreate--${pageName}" title="개별 발송 등록" onclick="fnBtnSndngCreate${pageName}();">
개별 발송 등록
</button>
<button type="button" class="btn btn-primary" id="btnSndngRemove--${pageName}" title="개별 발송 삭제" onclick="fnBtnSndngRemove${pageName}();">
개별 발송 삭제
</button>
<button type="button" class="btn btn-primary" id="btnSndbkCreate--${pageName}" title="개별 반송 등록" onclick="fnBtnSndbkCreate${pageName}();">
<button type="button" class="btn btn-primary" id="btnCreateSndbk--${pageName}" title="개별 반송 등록" onclick="fnCreateSndbk${pageName}();">
개별 반송 등록
</button>
<button type="button" class="btn btn-primary" id="btnSndbkUpdate--${pageName}" title="개별 반송 수정" onclick="fnBtnSndbkUpdate${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdateSndbk--${pageName}" title="개별 반송 수정" onclick="fnUpdateSndbk${pageName}();">
개별 반송 수정
</button>
<button type="button" class="btn btn-primary" id="btnSndbkRemove--${pageName}" title="개별 반송 삭제" onclick="fnBtnSndbkRemove${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemoveSndbk--${pageName}" title="개별 반송 삭제" onclick="fnRemoveSndbk${pageName}();">
개별 반송 삭제
</button>
<button type="button" class="btn btn-primary" id="btnPostTraceView--${pageName}" title="우편 종적 보기" onclick="fnBtnPostTraceView${pageName}();">
<button type="button" class="btn btn-primary" id="btnViewPostTrace--${pageName}" title="우편 종적 보기" onclick="fnViewPostTrace${pageName}();">
우편 종적 보기
</button>
</span>
@ -42,28 +36,27 @@
id="DataTables_Table_0--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead">
<tr id="theadTr--${pageName}">
<th class="cmn" style="width: 140px">수납</th>
<th class="cmn" style="width: 100px">수납</th>
<th class="cmn" style="width: 140px">발송구분</th>
<th class="cmn" style="width: 140px">발송일자</th>
<th class="cmn" style="width: 140px">납기일자</th>
<th class="cmn" style="width: 140px">등기번호</th>
<th class="cmn" style="width: 120px">발송일자</th>
<th class="cmn" style="width: 120px">납기일자</th>
<th class="cmn" style="width: 160px">등기번호</th>
<th class="cmn" style="width: 140px">성명</th>
<th class="cmn" style="width: 140px">주소</th>
<th class="cmn" style="width: 140px">상세주소</th>
<th class="cmn" style="width: 140px">우편번호</th>
<th class="cmn" style="width: 140px">회계연도</th>
<th class="cmn" style="width: 140px">부과번호</th>
<th class="cmn" style="width: 140px">금액</th>
<th class="cmn" style="width: 140px">배달일자</th>
<th class="cmn" style="width: 140px">배달시각</th>
<th class="cmn" style="width: 140px">미배달사유</th>
<th class="cmn" style="width: 140px">수령인</th>
<th class="cmn" style="width: 140px">수령인관계</th>
<th class="cmn" style="width: 140px">공시송달일자</th>
<th class="cmn" style="width: 140px">처리상태</th>
<th class="cmn" style="width: 140px">등록일시</th>
<th class="cmn" style="width: 240px">주소</th>
<th class="cmn" style="width: 280px">상세주소</th>
<th class="cmn" style="width: 100px">우편번호</th>
<th class="cmn" style="width: 100px">회계연도</th>
<th class="cmn" style="width: 120px">부과번호</th>
<th class="cmn" style="width: 120px">금액</th>
<th class="cmn" style="width: 120px">배달일자</th>
<th class="cmn" style="width: 100px">배달시각</th>
<th class="cmn" style="width: 160px">미배달사유</th>
<th class="cmn" style="width: 120px">수령인</th>
<th class="cmn" style="width: 160px">수령인관계</th>
<th class="cmn" style="width: 120px">처리상태</th>
<th class="cmn" style="width: 180px">등록일시</th>
<th class="cmn" style="width: 140px">등록사용자</th>
<th class="cmn" style="width: 140px">수정일시</th>
<th class="cmn" style="width: 180px">수정일시</th>
<th class="cmn" style="width: 140px">수정사용자</th>
<th class="cmn dummy-th"></th>
</tr>
@ -89,8 +82,7 @@
<td class="text-start" onclick="{onclick}">{UNDLVR_RSN_NM}</td>
<td class="text-start" onclick="{onclick}">{RCPN_NM}</td>
<td class="text-center" onclick="{onclick}">{RCPN_REL_NM}</td>
<td class="text-center" onclick="{onclick}">{SVBTC_YMD}</td>
<td class="text-start" onclick="{onclick}">{SNDNG_DTL_STTS_NM}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_DTL_STTS_NM}</td>
<td class="text-center" onclick="{onclick}">{REG_DT}</td>
<td class="text-center" onclick="{onclick}">{RGTR_NM}</td>
<td class="text-center" onclick="{onclick}">{MDFCN_DT}</td>
@ -100,7 +92,7 @@
</template>
<template id="${infoPrefix}NotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="24" class="dataTables_empty text-center">발송 정보를 찾지 못했습니다.</td>
<td valign="top" colspan="23" class="dataTables_empty text-center">발송 정보를 찾지 못했습니다.</td>
</tr>
</template>
</table>
@ -159,11 +151,11 @@
id="DataTables_Table_0--${pageName}${pageDataName2}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead">
<tr id="theadTr--${pageName}${pageDataName2}">
<th class="cmn" style="width: 140px">공시송달일자</th>
<th class="cmn" style="width: 140px">제목</th>
<th class="cmn" style="width: 140px">문서번호</th>
<th class="cmn" style="width: 140px">기타내용</th>
<th class="cmn" style="width: 140px">등록일시</th>
<th class="cmn" style="width: 120px">공시송달일자</th>
<th class="cmn" style="width: 280px">제목</th>
<th class="cmn" style="width: 180px">문서번호</th>
<th class="cmn" style="width: 280px">기타내용</th>
<th class="cmn" style="width: 180px">등록일시</th>
<th class="cmn" style="width: 140px">등록사용자</th>
<th class="cmn dummy-th"></th>
</tr>
@ -217,7 +209,7 @@
, formats : {
SNDNG_YMD : dateFormat
, DUDT_YMD : dateFormat
, LEVY_SUM_AMT : numberFormat
, SUM_AMT : numberFormat
, DLVR_YMD : dateFormat
, DLVR_TM : timeFormat
, REG_DT : datetimeFormat
@ -311,6 +303,84 @@
$("#tbody--${pageName}${pageDataName2}").html(trs.join());
}
// 개별 반송 등록
${pageName}CreateSndbk = (params) => {
if (!params) return;
ajax.get({
url : wctx.url(params.taskSeCd + "/sndb/sndb01/220/info.do")
, data : params || {}
, success : resp => {
dialog.open({
id : "sndbkInfoDialog"
, title : "개별반송 등록"
, content : resp
, size : "md"
, onClose : () => { refreshDataInfo${pageName}(); } // callback 자료 조회
});
}
});
}
// 개별 반송 수정
${pageName}UpdateSndbk = (params) => {
if (!params) return;
ajax.get({
url : wctx.url(params.taskSeCd + "/sndb/sndb01/220/info.do")
, data : params || {}
, success : resp => {
dialog.open({
id : "payerDialog"
, title : "개별반송 수정"
, content : resp
, size : "md"
, onClose : () => { refreshDataInfo${pageName}(); } // callback 자료 조회
});
}
});
}
// 개별 반송 삭제
${pageName}RemoveSndbk = (params) => {
}
// 자료 재조회
refreshDataInfo${pageName} = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
let sggCd = $("#sggCd--${pageNameMain}").val();
let taskSeCd = $("#taskSeCd--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
if (crdnId == null || crdnId == "") {
return;
}
let params = {
callPurpose : "refresh"
, crdnId : crdnId
, sggCd : sggCd
, taskSeCd : taskSeCd
, delYn : "N"
};
ajax.get({
url : wctx.url(taskSeCd + "/sprt/sprt02/040/info.do")
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, success : resp => {
${pageName}Dataset.setData(resp.sndngDtlList); // 발송 이력
${pageName}${pageDataName2}Dataset.setData(resp.svbtcList); // 공시송달 이력
// 최상단 단속 Data 셋팅
if (resp.totalInfo) {
${pageNameMain}Control.setData([resp.totalInfo]);
}
}
});
}
/**************************************************************************
* 초기 셋팅
**************************************************************************/
@ -334,33 +404,63 @@
/**************************************************************************
* function
**************************************************************************/
// 개별 송 등록
fnBtnSndngCreate${pageName} = () => {
alert("개별 발송 등록");
}
// 개별 송 등록
fnCreateSndbk${pageName} = () => {
let sndngDtlId = ${pageName}Dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let sndngDtlSttsCd = ${pageName}Dataset.getValue("SNDNG_DTL_STTS_CD"); // 발송 상세 상태 코드
// 개별 발송 삭제
fnBtnSndngRemove${pageName} = () => {
alert("개별 발송 삭제");
}
// 발송상세ID 가 없다면.. return
if (sndngDtlId == null || sndngDtlId == "") {
return;
}
// 발송상세 상태코드 확인
if (sndngDtlSttsCd == "05" || sndngDtlSttsCd == "06" || sndngDtlSttsCd == "07" ) {
dialog.alert({
content : "발송상세 상태가 " + ${pageName}Dataset.getValue("SNDNG_DTL_STTS_NM") + " 입니다."
, onOK : () => {}
});
return;
}
// 개별 반송 등록
fnBtnSndbkCreate${pageName} = () => {
alert("개별 반송 등록");
let params = {
callPurpose : "create"
, sggCd : ${pageName}Dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : sndngDtlSttsCd // 발송 상세 상태 코드
};
${pageName}CreateSndbk(params);
}
// 개별 반송 수정
fnBtnSndbkUpdate${pageName} = () => {
alert("개별 반송 수정");
fnUpdateSndbk${pageName} = () => {
let sndngDtlId = ${pageName}Dataset.getValue("SNDNG_DTL_ID");
// 발송상세ID 가 없다면.. return
if (sndngDtlId == null || sndngDtlId == "") {
return;
}
let params = {
callPurpose : "update"
, sggCd : ${pageName}Dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : ${pageName}Dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
};
${pageName}UpdateSndbk(params);
}
// 개별 반송 삭제
fnBtnSndbkRemove${pageName} = () => {
fnRemoveSndbk${pageName} = () => {
alert("개별 반송 삭제");
}
// 우편 종적 보기 참고 https://www.data.go.kr/dataset/15000390/openapi.do
fnBtnPostTraceView${pageName} = () => {
fnViewPostTrace${pageName} = () => {
let rgNo = ${pageName}Dataset.getValue("RG_NO");
alert("우편 종적 보기");
@ -384,5 +484,4 @@
${pageName}${pageDataName2}Dataset.setData(${svbtcList});
});
// #sourceURL=sprt02040-info.jsp
</script>

@ -720,5 +720,4 @@
${pageName}${pageDataName4}Dataset.setData(${payerHstryList});
});
// #sourceURL=sprt02050-info.jsp
</script>

@ -9,7 +9,7 @@
<div class="card">
<!-- 업무 버튼 -->
<div class="container-page-btn">
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">민원상담 정보</label>
<label class="w-px-120 bg-label-danger pe-2 col-form-label text-sm-center">민원상담 이력</label>
<!-- 버튼 우측 정렬 -->
<span class="container-window-btn-right">
<button type="button" class="btn btn-primary" id="btnCreate--${pageName}" title="민원상담 등록" onclick="fnCreate${pageName}();">

Loading…
Cancel
Save