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

2. 반송등록 다이얼로그 수정.
main
jjh 10 months ago
parent be4843320e
commit 20b9571926

@ -87,7 +87,7 @@ public interface SndngDtlService {
* <li> false</li>
* </ul>
*/
String createSndbk(String... sndngDtlIDs);
String createSndbk(SndngDtl sndngDtl);
/** .
* @param sndngDtl

@ -145,6 +145,7 @@ public class SndngDtlBean extends AbstractComponent {
*/
public String createSndbkList(SndbQuery req) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
List<DataObject> sndngDtlList = sndngDtlMapper.selectSndngTrgtDtlIDs(req.getSndngId());
@ -157,34 +158,8 @@ public class SndngDtlBean extends AbstractComponent {
// 발송상세(TB_SNDNG_DTL)에 반송 정보를 등록한다.
for (int iLoop = 0; iLoop < sndngDtlList.size(); iLoop++) {
//
rtnMsg = createSndbk(sndngDtlList.get(iLoop).string("SNDNG_DTL_ID"));
// 메시지 확인
if (rtnMsg.contains("[F]")) {
throw new RuntimeException("반송 확인 작업중 반송 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
rtnMsg = "[S] 작업이 정상 처리 되었습니다.";
return rtnMsg;
}
/** .
* @param sndngDtl
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public String createSndbk(String... sndngDtlIDs) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
for (int iLoop = 0; iLoop < sndngDtlIDs.length; iLoop++) {
// 반송 내역 조회
DataObject sndbkInfo = sndngDtlMapper.selectSndbkInfo(new SndbQuery().setSndngDtlId(sndngDtlIDs[iLoop]));
DataObject sndbkInfo = sndngDtlMapper.selectSndbkInfo(new SndbQuery().setSndngDtlId(sndngDtlList.get(iLoop).string("SNDNG_DTL_ID")));
// 반송 등록이 가능한지 확인.
if (!("03,05".contains(sndbkInfo.string("SNDNG_DTL_STTS_CD")))) {
@ -203,9 +178,11 @@ public class SndngDtlBean extends AbstractComponent {
}
// 전자우편 배달 결과 조회
DataObject epostDlvrRsltInfo = epostDlvrRsltMapper.selectEpostDlvrRsltInfo(new EpostQuery().setConKey(sndbkInfo.string("CON_KEY"))
.setRegino(sndbkInfo.string("RG_NO")));
EpostQuery epostQuery = new EpostQuery();
epostQuery.setConKey(sndbkInfo.string("CON_KEY"));
epostQuery.setRegino(sndbkInfo.string("RG_NO"));
DataObject epostDlvrRsltInfo = epostDlvrRsltMapper.selectEpostDlvrRsltInfo(epostQuery);
// 조회 건수 확인
if (epostDlvrRsltInfo == null) {
rtnMsg = "[N] 반송 자료가 존재하지 않습니다.";
@ -219,8 +196,6 @@ public class SndngDtlBean extends AbstractComponent {
sndngDtl.setSndngDtlId(sndbkInfo.string("SNDNG_DTL_ID"));
sndngDtl.setDlvrYmd(epostDlvrRsltInfo.string("DELIVYMD")); // 배달일자
sndngDtl.setDlvrTm(epostDlvrRsltInfo.string("DELIVHHMI")); // 배달시간
// sndngDtl.setUndlvrRsnCd(epostDlvrRsltInfo.string("NONDELIVREASNCD")); // 미배달 사유 코드
// sndngDtl.setUndlvrRsnNm(epostDlvrRsltInfo.string("NONDELIVREASNCDNM")); // 미배달 사유 명
sndngDtl.setRcpnNm(epostDlvrRsltInfo.string("SUBRECPRSNNM")); // 수령인 명
sndngDtl.setRcpnRelNm(epostDlvrRsltInfo.string("RELRECPRSNCDNM")); // 수령인 관계 명
sndngDtl.setSndngDtlSttsCd("04"); // 발송 상세 상태 코드 FIM050 - 04:발송확인
@ -231,8 +206,6 @@ public class SndngDtlBean extends AbstractComponent {
sndngDtl.setDlvrTm(epostDlvrRsltInfo.string("DELIVHHMI")); // 배달시간
sndngDtl.setUndlvrRsnCd(epostDlvrRsltInfo.string("NONDELIVREASNCD")); // 미배달 사유 코드
sndngDtl.setUndlvrRsnNm(epostDlvrRsltInfo.string("NONDELIVREASNCDNM")); // 미배달 사유 명
// sndngDtl.setRcpnNm(epostDlvrRsltInfo.string("SUBRECPRSNNM")); // 수령인 명
// sndngDtl.setRcpnRelNm(epostDlvrRsltInfo.string("RELRECPRSNCDNM")); // 수령인 관계 명
sndngDtl.setSndngDtlSttsCd("05"); // 발송 상세 상태 코드 FIM050 - 05:반송
sndngDtl.setBfrSndngDtlSttsCd(sndbkInfo.string("SNDNG_DTL_STTS_CD")); // 전 발송 상세 상태 코드
}
@ -249,6 +222,29 @@ public class SndngDtlBean extends AbstractComponent {
return rtnMsg;
}
/** .
* @param sndngDtl
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public String createSndbk(SndngDtl sndngDtl) {
// 변수 선언
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
rtnScs = sndngDtlMapper.createSndbk(sndngDtl);
if (!rtnScs) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("발송상세의 반송 정보 등록에 실패하였습니다.");
}
rtnMsg = "[S] 작업이 정상 처리 되었습니다.";
return rtnMsg;
}
/** .
* @param sndngDtl
* @return
@ -286,14 +282,31 @@ public class SndngDtlBean extends AbstractComponent {
String rtnMsg = "[F] "; // 처리 결과 메시지
// 반송 내역 조회
DataObject sndbkInfo = sndngDtlMapper.selectSndbkInfo(new SndbQuery().setSndngDtlId(sndngDtl.getSndngDtlId())
.setDelYN("N"));
SndbQuery req = new SndbQuery();
req.setSndngDtlId(sndngDtl.getSndngDtlId());
req.setDelYN("N");
DataObject sndbkInfo = sndngDtlMapper.selectSndbkInfo(req);
// 반송 삭제가 가능한지 확인.
// 반송 삭제가 가능한지 확인
if (sndbkInfo == null) {
rtnMsg = "[F] 작업 중 대상 자료가 존재하지 않습니다.";
return rtnMsg;
}
if (sndbkInfo.size() == 1) {
rtnMsg = "[F] 작업 중 대상 자료가 1건이 아닙니다.";
return rtnMsg;
}
//
sndngDtl.setBfrSndngDtlSttsCd(sndbkInfo.string("SNDNG_DTL_STTS_CD")); // 전 발송 상세 상태 코드 <- 발송 상세 상태 코드
sndngDtl.setSndngDtlSttsCd(sndbkInfo.string("BFR_SNDNG_DTL_STTS_CD")); // 발송 상세 상태 코드 <- 전 발송 상세 상태 코드
// 이전 발송상세 상태 코드가 발송확인(04) 이라면..
if (sndbkInfo.string("BFR_SNDNG_DTL_STTS_CD").equals("04")) {
sndngDtl.setDlvrYmd(sndbkInfo.string("BFR_DLVR_YMD"));
sndngDtl.setDlvrTm(sndbkInfo.string("BFR_DLVR_HR"));
sndngDtl.setSndngDtlSttsCd(sndbkInfo.string("BFR_SNDNG_DTL_STTS_CD"));
} else {
sndngDtl.setDlvrYmd("");
sndngDtl.setDlvrTm("");
}
// 발송 상세(TB_SNDNG_DTL) 대장에 반송 정보를 등록 한다.
rtnScs = sndngDtlMapper.deleteSndbk(sndngDtl);

@ -85,8 +85,8 @@ public class SndngDtlServiceBean extends AbstractServiceBean implements SndngDtl
}
@Override
public String createSndbk(String... sndngDtlIDs) {
return sndngDtlBean.createSndbk(sndngDtlIDs);
public String createSndbk(SndngDtl sndngDtl) {
return sndngDtlBean.createSndbk(sndngDtl);
}
@Override

@ -1088,9 +1088,9 @@ public class Sndb01Controller extends ApplicationController {
* "saved": true, false
* }</code></pre>
*/
public ModelAndView createSendBack(String... sndngDtlIDs) {
public ModelAndView createSendBack(SndngDtl sndngDtl) {
boolean saved = false;
String rtnMsg = sndngDtlService.createSndbk(sndngDtlIDs);
String rtnMsg = sndngDtlService.createSndbk(sndngDtl);
if (rtnMsg.contains("[S]")) {
saved = true;

@ -670,8 +670,8 @@ public class DpvController {
@Override
@RequestMapping(name="발송상세의 반송 정보 등록", value=METHOD_URL.createSendBack)
public ModelAndView createSendBack(String... sndngDtlIDs) {
return super.createSendBack(sndngDtlIDs);
public ModelAndView createSendBack(SndngDtl sndngDtl) {
return super.createSendBack(sndngDtl);
}
@Override

@ -1020,17 +1020,19 @@
<include refid="utility.orderBy" />
</select>
<update id="createSndbk" parameterType="map">/* 발송상세의 반송 정보 수정(sndngDtlMapper.createSndbk) */
<update id="createSndbk" parameterType="map">/* 발송상세의 반송 정보 등록(sndngDtlMapper.createSndbk) */
UPDATE TB_SNDNG_DTL
SET DLVR_YMD = #{sndngDtl.dlvrYmd} <!-- 배달 일자 -->
SET BFR_SNDNG_DTL_STTS_CD= SNDNG_DTL_STTS_CD <!-- 전 발송 상세 상태 코드 -->
, BFR_DLVR_YMD = DLVR_YMD <!-- 전 배달 일자 -->
, BFR_DLVR_HR = DLVR_TM <!-- 전 배달 시간 -->
, DLVR_YMD = #{sndngDtl.dlvrYmd} <!-- 배달 일자 -->
, DLVR_TM = #{sndngDtl.dlvrTm} <!-- 배달 시각 -->
, UNDLVR_RSN_CD = #{sndngDtl.undlvrRsnCd} <!-- 미배달 사유 코드 -->
, UNDLVR_RSN_NM = #{sndngDtl.undlvrRsnNm} <!-- 미배달 사유 명 -->
, SNDNG_DTL_STTS_CD = #{sndngDtl.sndngDtlSttsCd} <!-- 발송 상세 상태 코드 -->
, BFR_SNDNG_DTL_STTS_CD= #{sndngDtl.bfrSndngDtlSttsCd} <!-- 전 발송 상세 상태 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{sndngDtl.modifiedBy} <!-- 수정자 -->
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId}
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId} <!-- 발송 상세 ID -->
AND DEL_YN = 'N'
</update>
@ -1048,10 +1050,14 @@
<update id="deleteSndbk" parameterType="map">/* 발송상세의 반송 정보 삭제(sndngDtlMapper.deleteSndbk) */
UPDATE TB_SNDNG_DTL
SET UNDLVR_RSN_CD = NULL <!-- 미배달 사유 코드 -->
SET BFR_SNDNG_DTL_STTS_CD= NULL <!-- 전 발송 상세 상태 코드 -->
, BFR_DLVR_YMD = NULL <!-- 전 배달 일자 -->
, BFR_DLVR_HR = NULL <!-- 전 배달 시간 -->
, DLVR_YMD = #{sndngDtl.dlvrYmd} <!-- 배달 일자 -->
, DLVR_TM = #{sndngDtl.dlvrTm} <!-- 배달 시각 -->
, UNDLVR_RSN_CD = NULL <!-- 미배달 사유 코드 -->
, UNDLVR_RSN_NM = NULL <!-- 미배달 사유 명 -->
, SNDNG_DTL_STTS_CD = #{sndngDtl.sndngDtlSttsCd} <!-- 발송 상세 상태 코드 -->
, BFR_SNDNG_DTL_STTS_CD= #{sndngDtl.bfrSndngDtlSttsCd} <!-- 전 발송 상세 상태 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{sndngDtl.modifiedBy} <!-- 수정자 -->
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId} <!-- 발송 상세 ID -->
@ -1072,7 +1078,7 @@
, SNDNG_DTL_STTS_CD = #{sndngDtl.sndngDtlSttsCd} <!-- 발송 상세 상태 코드 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{sndngDtl.modifiedBy} <!-- 수정자 -->
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId}
WHERE SNDNG_DTL_ID = #{sndngDtl.sndngDtlId} <!-- 발송 상세 ID -->
AND DEL_YN = 'N'
</update>

@ -409,7 +409,11 @@
let btnTitle = $("#btnRemove--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage); // 메시지 출력
// 메시지 출력
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
$P.refreshList(); // 자료 재조회

@ -141,7 +141,11 @@
let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
// 메시지 출력
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
dialog.close($P.control.prefix + "Dialog");

@ -454,7 +454,11 @@
let btnTitle = $("#btnRemove--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage); // 메시지 출력
// 메시지 출력
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
$P.refreshList(); // 자료 재조회

@ -233,7 +233,11 @@
let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
// 메시지 출력
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
// 폼을 리셋해서 uploadFiles에 출력된 선택 파일을 초기화시킨다.

@ -179,7 +179,11 @@
let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
// 메시지 출력
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
dialog.close($P.control.prefix + "Dialog");

@ -49,7 +49,7 @@
<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>
<button type="button" class="btn btn-primary w-px-80" id="btnSave--${pageName}" title="저장">저장</button>
</span>
</span>
</div>
@ -62,63 +62,82 @@
/**************************************************************************
* Global Variable
**************************************************************************/
// URL
var ${pageName}PrefixUrl = "/sndb/sndb01";
pageObject["${pageName}"] = {};
// infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정)
var ${pageName}CallPurpose = "${callPurpose}";
/**************************************************************************
* script 진입
**************************************************************************/
$(document).ready(function() {
// pageObject
var $P = pageObject["${pageName}"];
// URL
$P.PrefixUrl = "/sndb/sndb01";
// FormFields
var ${pageName}Fields = new FimsFormFields("#frmEdit--${pageName}");
$P.formFields = new FimsFormFields("#frmEdit--${pageName}");
/**************************************************************************
* DatasetControl
**************************************************************************/
var ${pageName}Control = new DatasetControl({
prefix : "sndbkInfo"
$P.control = new DatasetControl({
prefix : "sndbk"
, prefixName : "반송"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.sndbkInfo
});
${pageName}Control.onCurrentChange = item => {
/**************************************************************************
* DatasetControl 이벤트
**************************************************************************/
$P.control.onCurrentChange = item => {
if (!item) return;
// Dataset 셋팅
${pageName}Fields.set(item);
$P.formFields.set(item);
// 업무구분에 따른 url 변경
setURL${pageName}(item.data.TASK_SE_CD);
// 업무구분에 따른 URL 변경
$P.setURL(item.data.TASK_SE_CD);
// 배달일자
if ($("#dlvrYmd--${pageName}").val() == "") {
$("#dlvrYmd--${pageName}").datepicker("setDate", new Date());
// 호출용도가 등록 이라면..
if (${pageName}CallPurpose == "create") {
$("#dlvrYmd--${pageName}").datepicker("setDate", new Date()); // 배달일자
}
}
/**************************************************************************
* DatasetControl 이벤트
**************************************************************************/
// 저장 callback
${pageName}Control.onSave = (resp) => {
let dialogTitle = $("#" + ${pageName}Control.prefix + "Dialog").find("h5.modal-title").html();
$P.control.onSave = (resp) => {
let dialogTitle = $("#" + $P.control.prefix + "Dialog").find("h5.modal-title").html();
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, dialogTitle);
dialog.alert(showMessage);
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
dialog.close(${pageName}Control.prefix + "Dialog");
dialog.close($P.control.prefix + "Dialog");
}
}
// 저장
${pageName}Control.save = (info) => {
$P.control.save = (info) => {
if (!info) return;
let create = (${pageName}CallPurpose == "create");
let create = false;
if (${pageName}CallPurpose == "create") {
create = true;
info.sndngDtlSttsCd = "05"; // FIM050 - 05 반송
} else {
create = false;
}
ajax.post({
url : !create ? ${pageName}Control.urls.update : ${pageName}Control.urls.create
url : !create ? $P.control.urls.update : $P.control.urls.create
, data : info
, success : resp => ${pageName}Control.onSave(resp)
, success : resp => $P.control.onSave(resp)
});
}
@ -126,14 +145,14 @@
* 버튼 clickEvent
**************************************************************************/
// 저장 버튼 클릭 이벤트
fnSave${pageName} = () => {
$P.fnSave = () => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
dialog.alert({
content : "현재 " + ${pageName}Control.prefixName + " 정보를 저장하시겠습니까?"
content : "현재 " + $P.control.prefixName + " 정보를 저장하시겠습니까?"
, onOK : () => {
${pageName}Control.save(${pageName}Fields.get());
$P.control.save($P.formFields.get());
}
});
}
@ -142,7 +161,7 @@
* 초기 셋팅
**************************************************************************/
// 이벤트 설정
setEvent${pageName} = () => {
$P.setEvent = () => {
// form-date 항목에서 키보드로 입력시 날짜 포맷팅 적용
$("#frmEdit--${pageName}").find(".form-date").each(function() {
$(this).on("input",function() {
@ -156,66 +175,59 @@
});
});
// 업무 버튼 이벤트
$("#btnSave--${pageName}").on("click", () => $P.fnSave()); // 저장
// 미배달 사유 변경 이벤트
$("#undlvrRsnCd--${pageName}").change(function() {
if ($("#undlvrRsnCd--${pageName}").val() == "00") {
$("#undlvrRsnNm--${pageName}").prop("readonly", false);
$("#undlvrRsnNm--${pageName}").val("");
} else {
$("#undlvrRsnNm--${pageName}").prop("readonly", true);
$("#undlvrRsnNm--${pageName}").val($("#undlvrRsnCd--${pageName} option:selected").text());
}
});
}
// 초기 기본 설정
initForm${pageName} = () => {
// 화면 초기화
$("#frmEdit--${pageName}")[0].reset();
// 초기 화면 설정
$P.initForm = () => {
// 달력 초기화
initDatepicker("frmEdit--${pageName}");
$("#dlvrYmd--${pageName}").datepicker("setDate", new Date());
}
// 기본 데이터 설정
setFormData${pageName} = () => {
// 미배달 사유 변경 이벤트
$("#undlvrRsnCd--${pageName}").trigger("change");
if (${pageName}CallPurpose == "view") {
// input 요소들을 disabled
$("#frmEdit--${pageName}").find("input,textarea,select").prop("disabled", true);
// button 요소들을 disabled
$("#btnSave--${pageName}").prop("disabled", true); // 저장 버튼
} else if (${pageName}CallPurpose == "create") {
//
} else if (${pageName}CallPurpose == "update") {
//
}
}
// 업무구분에 따른 url 변경
setURL${pageName} = (taskSeCd) => {
${pageName}Control.urls.create = wctx.url("/" + taskSeCd + ${pageName}PrefixUrl + "/220/create.do");
${pageName}Control.urls.update = wctx.url("/" + taskSeCd + ${pageName}PrefixUrl + "/220/update.do");
// 기본 데이터 설정
$P.initData = () => {
// 미배달 사유 변경 이벤트 실행
$("#undlvrRsnCd--${pageName}").trigger("change");
}
// 업무구분에 따른 URL 설정
$P.setURL = (taskSeCd) => {
$P.control.urls.create = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/220/create.do");
$P.control.urls.update = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/220/update.do");
}
/**************************************************************************
* script 진입
* 최초 실행 함수
**************************************************************************/
$(document).ready(function() {
// 이벤트 설정
setEvent${pageName}();
// 1. 이벤트 설정
$P.setEvent();
// 초기 기본 설정
initForm${pageName}();
// 2. 초기 화면 설정
$P.initForm();
// Dataset 설정
${pageName}Control.setData([${sndbkInfo}]);
// 3. 기본 데이터 설정
$P.initData();
// 기본 데이터 설정
setFormData${pageName}();
// 4. Dataset 설정
$P.control.setData([${sndbkInfo}]);
});
</script>

@ -32,7 +32,7 @@
<button type="button" class="btn btn-primary" id="btnCreateCrdnReReg--${pageName}" title="단속 재등록">
단속 재등록
</button>
<button type="button" class="btn btn-primary" id="btnPrintNotice--${pageName}" title="고지서 출력">
<button type="button" class="btn btn-primary" id="btnPrintNht--${pageName}" title="고지서 출력">
고지서 출력
</button>
<button type="button" class="btn btn-primary" id="btnUpdateCrdnSttsCd--${pageName}" title="단속상태 변경">
@ -382,7 +382,10 @@
let btnTitle = $("#btnRemoveCrdn--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage);
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
fnClose${pageNameMain}(true);
@ -520,7 +523,10 @@
let btnTitle = $("#btnDeleteCrdnPayer--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage);
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
$P.refreshDataInfo();
@ -559,7 +565,7 @@
/**************************************************************************
* 버튼 clickEvent
**************************************************************************/
// 민원원본보기 버튼 이벤트
// 민원원본보기
$P.fnViewCvlcptOrgnl = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID"); // 단속 ID
let cvlcptLinkId = $P.control.dataset.getValue("CVLCPT_LINK_ID"); // 민원 연계 ID
@ -583,7 +589,7 @@
$P.viewCvlcptOrgnl(params);
}
// 민원답변보기 버튼 이벤트
// 민원답변보기
$P.fnViewAnswerPreview = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID"); // 단속 ID
let cvlcptLinkId = $P.control.dataset.getValue("CVLCPT_LINK_ID"); // 민원 연계 ID
@ -607,7 +613,7 @@
$P.viewAnswerPreview(params);
}
// 단속정보수정 버튼 이벤트
// 단속정보수정
$P.fnUpdateCrdn = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID");
@ -624,7 +630,7 @@
$P.control.getInfo(params);
}
// 단속정보삭제 버튼 이벤트
// 단속정보삭제
$P.fnRemoveCrdn${pageName} = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID");
@ -646,7 +652,7 @@
});
}
// 단속재등록 버튼 이벤트
// 단속재등록
$P.fnCreateCrdnReReg = () => {
let bfrCrdnId = $P.control.dataset.getValue("CRDN_ID");
@ -668,12 +674,56 @@
});
}
// 고지서출력 버튼 이벤트
$P.fnPrintNotice = () => {
console.log("고지서 출력");
// 고지서출력
$P.fnPrintNht = () => {
var upDataset = $P.control;
if(upDataset.length <= 0){
dialog.alert("출력할 자료가 없습니다.");
return;
}
var crdnId = $P.control.dataset.getValue("CRDN_ID");
var url = wctx.url("/sprt/sprt01/150/info.do");
var dialogId = "printNhtDialog";
ajax.get({
url : url
, data : { crdnIds : crdnId }
, success : resp => {
dialog.open({
id : dialogId
, title : "종합조회-고지서"
, size : "xl"
, content : resp
, init : () => {
$("#"+dialogId).find("input[name='dialogId']").val(dialogId);
var found = $("#"+dialogId).find("template")[0].innerHTML;
var trs = upDataset.inStrings(found, null);
$("#"+dialogId).find("tbody").html(trs.join());
var parentRes = new Object();
var childReq = pageObject.childReq.pop();
for(var reqKey in childReq) {
if(integrationSearch.provide[reqKey]){
parentRes[reqKey] = integrationSearch.provide[reqKey];
} else {
parentRes[reqKey] = function(){};
}
}
pageObject.parentRes.push(parentRes);
}
, onClose : () => { }
});
}
});
}
// 단속상태변경 버튼 이벤트
// 단속상태변경
$P.fnUpdateCrdnSttsCd = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID");
@ -724,7 +774,7 @@
});
}
// 납부자수정 버튼 이벤트
// 납부자 수정
$P.fnUpdatePayer = () => {
let crdnId = $P.control.dataset.getValue("CRDN_ID");
@ -762,7 +812,7 @@
$("#btnUpdateCrdn--${pageName}").on("click", () => $P.fnUpdateCrdn()); // 단속 정보 수정
$("#btnRemoveCrdn--${pageName}").on("click", () => $P.fnRemoveCrdn()); // 단속 정보 삭제
$("#btnCreateCrdnReReg--${pageName}").on("click", () => $P.fnCreateCrdnReReg()); // 단속 재등록
$("#btnPrintNotice--${pageName}").on("click", () => $P.fnPrintNotice()); // 고지서 출력
$("#btnPrintNht--${pageName}").on("click", () => $P.fnPrintNht()); // 고지서 출력
$("#btnUpdateCrdnSttsCd--${pageName}").on("click", () => $P.fnUpdateCrdnSttsCd()); // 단속 상태 변경
$("#btnDeleteCrdnPayer--${pageName}").on("click", () => $P.fnDeleteCrdnPayer()); // 납부자 초기화
$("#btnUpdatePayer--${pageName}").on("click", () => $P.fnUpdatePayer()); // 납부자 수정

@ -231,9 +231,9 @@
let dialogTitle = "";
if (params.callPurpose == "create") {
dialogTitle = "의견제출 등록";
dialogTitle = $("#btnCreateOpnnSbmsn--${pageName}").attr("title");
} else if (params.callPurpose == "update") {
dialogTitle = "의견제출 수정";
dialogTitle = $("#btnUpdateOpnnSbmsn--${pageName}").attr("title");
} else {
return;
}
@ -249,7 +249,7 @@
return;
} else {
dialog.open({
id : "opnnDialog"
id : $P.control.prefixed("Dialog")
, title : dialogTitle
, content : resp
, size : "lg"
@ -265,7 +265,10 @@
let btnTitle = $("#btnRemoveOpnnSbmsn--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage);
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
$P.refreshDataInfo();

@ -12,16 +12,16 @@
<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="btnCreateSndbk--${pageName}" title="개별 반송 등록" onclick="fnCreateSndbk${pageName}();">
<button type="button" class="btn btn-primary" id="btnCreateSndbk--${pageName}" title="개별 반송 등록">
개별 반송 등록
</button>
<button type="button" class="btn btn-primary" id="btnUpdateSndbk--${pageName}" title="개별 반송 수정" onclick="fnUpdateSndbk${pageName}();">
<button type="button" class="btn btn-primary" id="btnUpdateSndbk--${pageName}" title="개별 반송 수정">
개별 반송 수정
</button>
<button type="button" class="btn btn-primary" id="btnRemoveSndbk--${pageName}" title="개별 반송 삭제" onclick="fnRemoveSndbk${pageName}();">
<button type="button" class="btn btn-primary" id="btnRemoveSndbk--${pageName}" title="개별 반송 삭제">
개별 반송 삭제
</button>
<button type="button" class="btn btn-primary" id="btnViewPostTrace--${pageName}" title="우편 종적 보기" onclick="fnViewPostTrace${pageName}();">
<button type="button" class="btn btn-primary" id="btnViewPostTrace--${pageName}" title="우편 종적 보기">
우편 종적 보기
</button>
</span>
@ -31,11 +31,12 @@
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div class="dataTables_wrapper dt-bootstrap5 no-footer" id="DataTables_Table_0_wrapper--${pageName}">
<div class="table-responsive" id="table-responsive--${pageName}" style="overflow-x:scroll; height:320px; overflow-y:scroll;" >
<div class="table-responsive" id="table-responsive-sndng--${pageName}" style="overflow-x:scroll; height:320px; overflow-y:scroll;" >
<table class="table-layout-fixed dataTable datatables-ajax table table-bordered no-footer"
id="DataTables_Table_0--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead">
<tr id="theadTr--${pageName}">
<tr id="theadTrSndng--${pageName}">
<th class="cmn" style="width: 120px">발송상태</th>
<th class="cmn" style="width: 100px">수납</th>
<th class="cmn" style="width: 140px">발송구분</th>
<th class="cmn" style="width: 120px">발송일자</th>
@ -53,7 +54,6 @@
<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: 180px">수정일시</th>
@ -61,10 +61,11 @@
<th class="cmn dummy-th"></th>
</tr>
</thead>
<tbody id="tbody--${pageName}">
<tbody id="tbodySndng--${pageName}">
</tbody>
<template id="${infoPrefix}Row--${pageName}">
<template id="sndngRow--${pageName}">
<tr data-key="{SNDNG_DTL_ID}">
<td class="text-center" onclick="{onclick}">{SNDNG_DTL_STTS_NM}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_RCVMT_NM}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_SE_NM}</td>
<td class="text-center" onclick="{onclick}">{SNDNG_YMD}</td>
@ -82,7 +83,6 @@
<td class="text-start" onclick="{onclick}">{UNDLVR_RSN_NM}</td>
<td class="text-start" onclick="{onclick}">{ACTL_RCPN_NM}</td>
<td class="text-center" onclick="{onclick}">{RCPN_REL_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>
@ -90,7 +90,7 @@
<td class="cmn dummy-td"></td>
</tr>
</template>
<template id="${infoPrefix}NotFound--${pageName}">
<template id="sndngNotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="23" class="dataTables_empty text-center">발송 정보를 찾지 못했습니다.</td>
</tr>
@ -145,12 +145,12 @@
<div class="row g-1">
<!-- DataTables(그리드) -->
<div class="card-datatable text-nowrap">
<div class="dataTables_wrapper dt-bootstrap5 no-footer" id="DataTables_Table_0_wrapper--${pageName}${pageDataName2}">
<div class="table-responsive" id="table-responsive--${pageName}${pageDataName2}" style="overflow-x:scroll; height:200px; overflow-y:scroll;" >
<div class="dataTables_wrapper dt-bootstrap5 no-footer" id="DataTables_Table_1_wrapper--${pageName}">
<div class="table-responsive" id="table-responsive-svbtc--${pageName}" style="overflow-x:scroll; height:200px; overflow-y:scroll;" >
<table class="table-layout-fixed dataTable datatables-ajax table table-bordered no-footer"
id="DataTables_Table_0--${pageName}${pageDataName2}" aria-describedby="DataTables_Table_0_info">
id="DataTables_Table_1--${pageName}" aria-describedby="DataTables_Table_0_info">
<thead class="sticky-thead">
<tr id="theadTr--${pageName}${pageDataName2}">
<tr id="theadTrSvbtc--${pageName}">
<th class="cmn" style="width: 120px">공시송달일자</th>
<th class="cmn" style="width: 180px">문서번호</th>
<th class="cmn" style="width: 280px">제목</th>
@ -160,9 +160,9 @@
<th class="cmn dummy-th"></th>
</tr>
</thead>
<tbody id="tbody--${pageName}${pageDataName2}">
<tbody id="tbodySvbtc--${pageName}">
</tbody>
<template id="${infoPrefix}Row--${pageName}${pageDataName2}">
<template id="svbtcRow--${pageName}">
<tr data-key="{SVBTC_ID}">
<td class="text-center" onclick="{onclick}">{SVBTC_YMD}</td>
<td class="text-start" onclick="{onclick}">{DOC_NO}</td>
@ -173,7 +173,7 @@
<td class="cmn dummy-td"></td>
</tr>
</template>
<template id="${infoPrefix}NotFound--${pageName}${pageDataName2}">
<template id="svbtcNotFound--${pageName}">
<tr class="odd">
<td valign="top" colspan="7" class="dataTables_empty text-center">공시송달 정보를 찾지 못했습니다.</td>
</tr>
@ -192,15 +192,22 @@
/**************************************************************************
* Global Variable
**************************************************************************/
// URL
var ${pageName}PrefixUrl = "/sprt/sprt02";
pageObject["${pageName}"] = {};
/**************************************************************************
* script 진입
**************************************************************************/
$(document).ready(function() {
// pageObject
var $P = pageObject["${pageName}"];
// FormFields
var ${pageName}Fields = new FimsFormFields("#frmEdit--${pageName}");
$P.formFields = new FimsFormFields("#frmEdit--${pageName}");
/**************************************************************************
* DatasetControl
**************************************************************************/
var ${pageName}Control = new DatasetControl({
$P.sndngControl = new DatasetControl({
prefix : "sndng"
, prefixName : "발송 정보"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
@ -218,7 +225,7 @@
});
// 공시송달 정보 Dataset
var ${pageName}${pageDataName2}Dataset = new Dataset({
$P.svbtcControl = new DatasetControl({
prefix : "svbtc"
, prefixName : "공시송달 정보"
, keymapper : info => info ? info.SVBTC_ID : ""
@ -228,33 +235,27 @@
SVBTC_YMD : dateFormat
, REG_DT : datetimeFormat
}
, onDatasetChange : obj => {
renderList${pageName}${pageDataName2}();
}
, onCurrentChange : item => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbody--${pageName}${pageDataName2}").setCurrentRow(key);
}
});
/**************************************************************************
* DatasetControl 이벤트
**************************************************************************/
// Dataset 변경
${pageName}Control.onDatasetChange = obj => {
renderList${pageName}();
$P.sndngControl.onDatasetChange = obj => {
$P.renderSndngList();
};
$P.svbtcControl.onDatasetChange = obj => {
$P.renderSvbtcList();
}
// 현재 선택 자료 변경 이벤트
${pageName}Control.onCurrentChange = item => {
$P.sndngControl.onCurrentChange = item => {
if (!item) return;
let key = item.data.SNDNG_DTL_ID;
$("#tbody--${pageName}").setCurrentRow(key);
$("#tbodySndng--${pageName}").setCurrentRow(key);
// 가상계좌번호
let vrActno = "";
@ -284,8 +285,16 @@
$("#epayno--${pageName}").val(item.data.EPAYNO_MASK); // 전자납부번호
}
$P.svbtcControl.onCurrentChange = item => {
if (!item) return;
let key = item.data.SVBTC_ID;
$("#tbodySvbtc--${pageName}").setCurrentRow(key);
}
// 개별 반송 Info
${pageName}Control.getInfo = (params) => {
$P.sndngControl.getInfo = (params) => {
if (!params) return;
let dialogTitle = "";
@ -295,7 +304,7 @@
} else if (params.callPurpose == "update") {
dialogTitle = $("#btnUpdateSndbk--${pageName}").attr("title");
} else {
dialogTitle = ${pageName}Control.prefixName + " 정보";
return;
}
ajax.get({
@ -303,38 +312,39 @@
, data : params || {}
, success : resp => {
dialog.open({
id : "sndbkInfoDialog"
id : "sndbkDialog"
, title : dialogTitle
, content : resp
, size : "md"
, onClose : () => { refreshDataInfo${pageName}(); } // callback 자료 조회
, onClose : () => { $P.refreshSndngDataInfo(); }
});
}
});
}
// 개별 반송 삭제 callback
${pageName}Control.onRemove = (resp) => {
$P.sndngControl.onRemove = (resp) => {
let btnTitle = $("#btnRemoveSndbk--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
dialog.alert(showMessage);
dialog.alert({
content : showMessage
, onOK : () => { }
});
if (resp.saved) {
refreshDataInfo${pageName}();
$P.refreshSndngDataInfo();
}
}
// 개별 반송 삭제
${pageName}Control.remove = (params) => {
$P.sndngControl.remove = (params) => {
if (!params) return;
params.sndngDtlSttsCd = "03"; // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) FIM050 - 03 발송
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/sndb/sndb01/210/delete.do")
, data : params
, success : resp => ${pageName}Control.onRemove(resp)
, success : resp => $P.sndngControl.onRemove(resp)
});
}
@ -342,42 +352,42 @@
* DataTables 이벤트
**************************************************************************/
// DataTables에 click, dbclick 이벤트
renderList${pageName} = () => {
let ${infoPrefix}List = ${pageName}Control.dataset;
$P.renderSndngList = () => {
let ${infoPrefix}List = $P.sndngControl.dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
[document.getElementById("sndngNotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
document.getElementById("sndngRow--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}Control.setCurrent('" + dataItem.getValue("SNDNG_DTL_ID") + "');")
.replace(/{onclick}/gi, "pageObject['${pageName}'].sndngControl.setCurrent('" + dataItem.getValue("SNDNG_DTL_ID") + "');")
);
$("#tbody--${pageName}").html(trs.join());
$("#tbodySndng--${pageName}").html(trs.join());
}
// 공시송달 정보 DataTables에 click 이벤트
renderList${pageName}${pageDataName2} = () => {
let ${infoPrefix}List = ${pageName}${pageDataName2}Dataset;
$P.renderSvbtcList = () => {
let ${infoPrefix}List = $P.svbtcControl.dataset;
let empty = ${infoPrefix}List.empty;
let trs = empty ?
[document.getElementById("${infoPrefix}NotFound--${pageName}${pageDataName2}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
[document.getElementById("svbtcNotFound--${pageName}").innerHTML] : <%-- from template#${infoPrefix}NotFound --%>
${infoPrefix}List.inStrings(
document.getElementById("${infoPrefix}Row--${pageName}${pageDataName2}").innerHTML, <%-- from template#${infoPrefix}Row --%>
document.getElementById("svbtcRow--${pageName}").innerHTML, <%-- from template#${infoPrefix}Row --%>
(str, dataItem) => str
.replace(/{onclick}/gi, "${pageName}${pageDataName2}Dataset.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
.replace(/{onclick}/gi, "pageObject['${pageName}'].svbtcControl.setCurrent('" + dataItem.getValue("SVBTC_ID") + "');")
);
$("#tbody--${pageName}${pageDataName2}").html(trs.join());
$("#tbodySvbtc--${pageName}").html(trs.join());
}
/**************************************************************************
* 사용자 함수(function)
**************************************************************************/
// 자료 재조회
refreshDataInfo${pageName} = () => {
$P.refreshSndngDataInfo = () => {
let crdnId = $("#crdnId--${pageNameMain}").val();
// 단속 ID 가 없다면.. return
@ -396,17 +406,18 @@
, headers: { Accept: "application/json; charset=utf-8" } // json
, data : params || {}
, success : resp => {
// Dataset 초기화
${pageName}Control.dataset.clear();
${pageName}${pageDataName2}Dataset.clear();
// 초기화
$("#frmEdit--${pageName}")[0].reset(); // 화면 초기화
$P.sndngControl.dataset.clear(); // Dataset 초기화
$P.svbtcControl.dataset.clear(); // Dataset 초기화
// Dataset 셋팅
${pageName}Control.setData(resp.sndngDtl); // 발송 이력 정보
${pageName}${pageDataName2}Dataset.setData(resp.svbtcList); // 공시송달 이력 정보
$P.sndngControl.setData(resp.sndngDtl); // 발송 이력 정보
$P.svbtcControl.setData(resp.svbtcList); // 공시송달 이력 정보
// 최상단 단속 Data 셋팅
if (resp.totalInfo) {
${pageNameMain}Control.setData([resp.totalInfo]);
pageObject["${pageNameMain}"].mainControl.setData([resp.totalInfo]);
}
}
});
@ -416,11 +427,11 @@
* 버튼 clickEvent
**************************************************************************/
// 개별 반송 등록
fnCreateSndbk${pageName} = () => {
$P.fnCreateSndbk = () => {
let btnTitle = $("#btnCreateSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlSttsNm = ${pageName}Control.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 코드
let sndngDtlId = $P.sndngControl.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = $P.sndngControl.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlSttsNm = $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 코드
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
@ -446,27 +457,28 @@
let params = {
callPurpose : "create"
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : $P.sndngControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
};
${pageName}Control.getInfo(params);
$P.sndngControl.getInfo(params);
}
// 개별 반송 수정
fnUpdateSndbk${pageName} = () => {
$P.fnUpdateSndbk = () => {
let btnTitle = $("#btnUpdateSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID");
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlId = $P.sndngControl.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let sndngDtlSttsCd = $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_CD"); // 발송 상세 상태 코드
let sndngDtlSttsNm = $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 명
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
// 미배달 사유 확인
if (undlvrRsnNm == "" ) {
// 발송상세 상태코드 확인 (FIM050 - 05:반송)
if (sndngDtlSttsCd != "05") {
dialog.alert({
content : "미배달 사유가 없어 " + btnTitle + " 을(를) 할 수 없습니다."
content : "발송 상세 상태가 " + sndngDtlSttsNm + " (으)로 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => { }
});
@ -475,37 +487,28 @@
let params = {
callPurpose : "update"
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : $P.sndngControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : ${pageName}Control.dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm : ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
, sndngDtlSttsCd : $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_CD") // 발송 상세 상태 코드
, undlvrRsnNm : $P.sndngControl.dataset.getValue("UNDLVR_RSN_NM") // 미배달 사유 명
};
${pageName}Control.getInfo(params);
$P.sndngControl.getInfo(params);
}
// 개별 반송 삭제
fnRemoveSndbk${pageName} = () => {
$P.fnRemoveSndbk = () => {
let btnTitle = $("#btnRemoveSndbk--${pageName}").attr("title");
let sndngDtlId = ${pageName}Control.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let undlvrRsnNm = ${pageName}Control.dataset.getValue("UNDLVR_RSN_NM"); // 미배달 사유 명
let sndngDtlSttsNm = ${pageName}Control.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 코드
let sndngDtlId = $P.sndngControl.dataset.getValue("SNDNG_DTL_ID"); // 발송 상세 ID
let sndngDtlSttsCd = $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_CD"); // 발송 상세 상태 코드
let sndngDtlSttsNm = $P.sndngControl.dataset.getValue("SNDNG_DTL_STTS_NM"); // 발송 상세 상태 명
// 발송상세ID 가 없다면.. return
if (typeof sndngDtlId == "undefined" || sndngDtlId == null || sndngDtlId == "") return;
// 미배달 사유 확인
if (undlvrRsnNm == "" ) {
dialog.alert({
content : "미배달 사유가 없어 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => {}
});
return;
}
// 발송상세 상태코드 확인 (FIM050 - 05:반송)
if (sndngDtlSttsNm != "반송") {
if (sndngDtlSttsCd != "05") {
dialog.alert({
content : "발송 상세 상태가 " + sndngDtlSttsNm + " (으)로 " + btnTitle + " 을(를) 할 수 없습니다."
, onOK : () => { }
@ -516,23 +519,24 @@
let params = {
callPurpose : "delete"
, sggCd : ${pageName}Control.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : ${pageName}Control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sggCd : $P.sndngControl.dataset.getValue("SGG_CD") // 시군구 코드
, taskSeCd : $P.sndngControl.dataset.getValue("TASK_SE_CD") // 업무 구분 코드
, sndngDtlId : sndngDtlId // 발송 상세 ID
, sndngDtlSttsCd : "03" // 발송 상세 상태 코드(SNDNG_DTL_STTS_CD) FIM050 - 03 발송
};
dialog.alert({
content : "선택한 반송 정보 을(를) 삭제하시겠습니까?"
, onOK : () => {
${pageName}Control.remove(params);
$P.sndngControl.remove(params);
}
});
}
// 우편 종적 보기
fnViewPostTrace${pageName} = () => {
$P.fnViewPostTrace = () => {
// 등기번호
let rgNo = ${pageName}Control.dataset.getValue("RG_NO");
let rgNo = $P.sndngControl.dataset.getValue("RG_NO");
// 등기번호가 없다면..
if (typeof rgNo == "undefined" || rgNo == null || rgNo == "") return;
@ -544,20 +548,20 @@
* 초기 셋팅
**************************************************************************/
// 이벤트 설정
setEvent${pageName} = () => {
$P.setEvent = () => {
// 업무 버튼 이벤트
$("#btnCreateSndbk--${pageName}").on("click", () => $P.fnCreateSndbk()); // 개별 반송 등록 버튼 이벤트
$("#btnUpdateSndbk--${pageName}").on("click", () => $P.fnUpdateSndbk()); // 개별 반송 수정 버튼 이벤트
$("#btnRemoveSndbk--${pageName}").on("click", () => $P.fnRemoveSndbk()); // 개별 반송 삭제 버튼 이벤트
$("#btnViewPostTrace--${pageName}").on("click", () => $P.fnViewPostTrace()); // 우편 종적 보기 버튼 이벤트
// DataTables width 변경 조정
$("#DataTables_Table_0--${pageName}").find("th").resizable( {handles : "e"} );
$("#DataTables_Table_0--${pageName}${pageDataName2}").find("th").resizable( {handles : "e"} );
}
// 화면 초기 설정
initForm${pageName} = () => {
// 화면 초기화
$("#frmEdit--${pageName}")[0].reset();
$("#DataTables_Table_1--${pageName}").find("th").resizable( {handles : "e"} );
}
// 화면 데이터 셋팅
setFormData${pageName} = () => {
// 기본 데이터 설정
$P.initData = () => {
// 화면 호출(callPurpose)이 view 라면 버튼 비활성화
if (${pageNameMain}CallPurpose == "view") {
$("#btnCreateSndbk--${pageName}").prop("disabled", true);
@ -567,22 +571,17 @@
}
/**************************************************************************
* script 진입
* 최초 실행 함수
**************************************************************************/
$(document).ready(function() {
// 이벤트 설정
setEvent${pageName}();
// 화면 초기 설정
initForm${pageName}();
// Dataset 설정
${pageName}Control.setData(${sndngDtl}); // 발송 이력
// 1. 이벤트 설정
$P.setEvent();
${pageName}${pageDataName2}Dataset.setData(${svbtc}); // 공시송달 이력
// 2. 기본 데이터 설정
$P.initData();
// 화면 데이터 셋팅
setFormData${pageName}();
// 3. Dataset 설정
$P.sndngControl.setData(${sndngDtl}); // 발송 이력
$P.svbtcControl.setData(${svbtc}); // 공시송달 이력
});
</script>

Loading…
Cancel
Save