이범준 9 months ago
commit ca078c5a3b

@ -19,9 +19,9 @@ public class EpostQuery extends CmmnQuery {
// ID
private String[] crdnIDs; // 단속 IDs
private String crdnId; // 단속 ID
private String[] sndngIDs; // 발송 IDs
private String[] sndngIds; // 발송 IDs
private String sndngId; // 발송 ID
private String[] sndngDtlIDs; // 발송 상세 IDs
private String[] sndngDtlIds; // 발송 상세 IDs
private String sndngDtlId; // 발송 상세 ID
private String[] svbtcIDs; // 공시송달 IDs
private String svbtcId; // 공시송달 ID
@ -84,12 +84,12 @@ public class EpostQuery extends CmmnQuery {
return self();
}
public String[] getSndngIDs() {
return ifEmpty(sndngIDs, () -> null);
public String[] getSndngIds() {
return ifEmpty(sndngIds, () -> null);
}
public <T extends EpostQuery> T setSndngIDs(String... sndngIDs) {
this.sndngIDs = sndngIDs;
public <T extends EpostQuery> T setSndngIds(String... sndngIds) {
this.sndngIds = sndngIds;
return self();
}
@ -102,12 +102,12 @@ public class EpostQuery extends CmmnQuery {
return self();
}
public String[] getSndngDtlIDs() {
return ifEmpty(sndngDtlIDs, () -> null);
public String[] getSndngDtlIds() {
return ifEmpty(sndngDtlIds, () -> null);
}
public <T extends EpostQuery> T setSndngDtlIDs(String... sndngDtlIDs) {
this.sndngDtlIDs = sndngDtlIDs;
public <T extends EpostQuery> T setSndngDtlIds(String... sndngDtlIds) {
this.sndngDtlIds = sndngDtlIds;
return self();
}

@ -21,9 +21,9 @@ public class NxrpMtchgQuery extends QueryRequest {
private String lvyKey; // 부과 키
private String[] crdnIDs; // 단속 IDs
private String crdnId; // 단속 ID
private String[] sndngIDs; // 발송 IDs
private String[] sndngIds; // 발송 IDs
private String sndngId; // 발송 ID
private String[] sndngDtlIDs; // 발송 상세 IDs
private String[] sndngDtlIds; // 발송 상세 IDs
private String sndngDtlId; // 발송 상세 ID
// ETC
private String callPurpose; // infoDialog 호출 용도(view 조회(편집불가), create 등록, update 수정, refresh 재조회).
@ -67,12 +67,12 @@ public class NxrpMtchgQuery extends QueryRequest {
return self();
}
public String[] getSndngIDs() {
return ifEmpty(sndngIDs, () -> null);
public String[] getSndngIds() {
return ifEmpty(sndngIds, () -> null);
}
public <T extends NxrpMtchgQuery> T setSndngIDs(String... sndngIDs) {
this.sndngIDs = sndngIDs;
public <T extends NxrpMtchgQuery> T setSndngIds(String... sndngIds) {
this.sndngIds = sndngIds;
return self();
}
@ -85,12 +85,12 @@ public class NxrpMtchgQuery extends QueryRequest {
return self();
}
public String[] getSndngDtlIDs() {
return ifEmpty(sndngDtlIDs, () -> null);
public String[] getSndngDtlIds() {
return ifEmpty(sndngDtlIds, () -> null);
}
public <T extends NxrpMtchgQuery> T setSndngDtlIDs(String... sndngDtlIDs) {
this.sndngDtlIDs = sndngDtlIDs;
public <T extends NxrpMtchgQuery> T setSndngDtlIds(String... sndngDtlIds) {
this.sndngDtlIds = sndngDtlIds;
return self();
}

@ -90,12 +90,12 @@ public class NxrpMtchgBean extends AbstractComponent {
// 세외수입 연계관련 정보 확인
// 발송상세 대상를 조회
List<DataObject> sndngDtlIDs = sndngDtlMapper.selectSndngTrgtDtlIDs(req.getSndngId());
List<DataObject> sndngDtlIds = sndngDtlMapper.selectSndngTrgtDtlIDs(req.getSndngId());
// 발송상세 대상 자료로 세외수입 매핑 내역 등록한다.
for (int iLoop = 0; iLoop < sndngDtlIDs.size(); iLoop++) {
for (int iLoop = 0; iLoop < sndngDtlIds.size(); iLoop++) {
// 단속 자료 조회
DataObject sndngDtlLevyInfo = sndngDtlMapper.selectSndngDtlLevyInfo(sndngDtlIDs.get(iLoop).string("SNDNG_DTL_ID"));
DataObject sndngDtlLevyInfo = sndngDtlMapper.selectSndngDtlLevyInfo(sndngDtlIds.get(iLoop).string("SNDNG_DTL_ID"));
//
if (sndngDtlLevyInfo == null) {
@ -138,7 +138,7 @@ public class NxrpMtchgBean extends AbstractComponent {
sndngDtl.setMtchgId(nxrpMtchg.getMtchgId()); // 매칭 ID
sndngDtl.setSndngDtlSttsCd("01"); // FIM050(발송 상세 상태 코드) - 01 세외수입부과
sndngDtl.setSndngDtlId(sndngDtlIDs.get(iLoop).string("SNDNG_DTL_ID")); // 발송 상세 ID
sndngDtl.setSndngDtlId(sndngDtlIds.get(iLoop).string("SNDNG_DTL_ID")); // 발송 상세 ID
rtnScs = sndngDtlMapper.updateSndngDtlSttsCd(sndngDtl);
if (!rtnScs) {
@ -164,7 +164,7 @@ public class NxrpMtchgBean extends AbstractComponent {
boolean rtnScs = false; // DB 처리 결과
String rtnMsg = "[F] "; // 처리 결과 메시지
for (int iLoop = 0; iLoop < req.getSndngDtlIDs().length; iLoop++) {
for (int iLoop = 0; iLoop < req.getSndngDtlIds().length; iLoop++) {
// 세외수입 매칭 내역 정보 조회
DataObject nxrpMtchgInfo = nxrpMtchgMapper.selectNxrpMtchgInfo(new NxrpMtchgQuery().setCrdnId(req.getCrdnIDs()[iLoop])
.setDelYN("N"));

@ -19,9 +19,9 @@ public class SndbQuery extends CmmnQuery {
// ID
private String[] crdnIDs; // 단속 IDs
private String crdnId; // 단속 ID
private String[] sndngIDs; // 발송 IDs
private String[] sndngIds; // 발송 IDs
private String sndngId; // 발송 ID
private String[] sndngDtlIDs; // 발송 상세 IDs
private String[] sndngDtlIds; // 발송 상세 IDs
private String sndngDtlId; // 발송 상세 ID
private String[] svbtcIDs; // 공시송달 IDs
private String svbtcId; // 공시송달 ID
@ -89,12 +89,12 @@ public class SndbQuery extends CmmnQuery {
return self();
}
public String[] getSndngIDs() {
return ifEmpty(sndngIDs, () -> null);
public String[] getSndngIds() {
return ifEmpty(sndngIds, () -> null);
}
public <T extends SndbQuery> T setSndngIDs(String... sndngIDs) {
this.sndngIDs = sndngIDs;
public <T extends SndbQuery> T setSndngIds(String... sndngIds) {
this.sndngIds = sndngIds;
return self();
}
@ -107,12 +107,12 @@ public class SndbQuery extends CmmnQuery {
return self();
}
public String[] getSndngDtlIDs() {
return ifEmpty(sndngDtlIDs, () -> null);
public String[] getSndngDtlIds() {
return ifEmpty(sndngDtlIds, () -> null);
}
public <T extends SndbQuery> T setSndngDtlIDs(String... sndngDtlIDs) {
this.sndngDtlIDs = sndngDtlIDs;
public <T extends SndbQuery> T setSndngDtlIds(String... sndngDtlIds) {
this.sndngDtlIds = sndngDtlIds;
return self();
}

@ -140,7 +140,7 @@ public class Sndng extends AbstractEntity {
/**
* IDs
*/
private String[] sndngDtlIDs;
private String[] sndngDtlIds;
/**
* - 0: 1:

@ -80,7 +80,7 @@ public class Svbtc extends AbstractEntity {
/**
* IDs
*/
private String[] sndngDtlIDs;
private String[] sndngDtlIds;
/**
* ID

@ -56,6 +56,12 @@ public interface SndngDtlMapper extends AbstractMapper {
*/
List<DataObject> selectSndngTrgtDtlIDs(String sndngId);
/** ID ID .
* @param req
* @return
*/
List<DataObject> selectSndngTrgtCrdnIDs(String sndngId);
/**
* @param req
* @return

@ -32,6 +32,18 @@ public interface SndngDtlService {
*/
List<DataObject> getSndngDtls(SndbQuery req);
/** ID ID .
* @param req
* @return
*/
List<DataObject> getSndngTrgtDtlIDs(String sndngId);
/** ID ID .
* @param req
* @return
*/
List<DataObject> getSndngTrgtCrdnIDs(String sndngId);
/** .
* @param sndngDtl
* @return

@ -79,6 +79,22 @@ public class SndngDtlBean extends AbstractComponent {
return sndngDtlMapper.selectSndngDtls(req);
}
/** ID ID .
* @param req
* @return
*/
public List<DataObject> getSndngTrgtDtlIDs(String sndngId) {
return sndngDtlMapper.selectSndngTrgtDtlIDs(sndngId);
}
/** ID ID .
* @param req
* @return
*/
public List<DataObject> getSndngTrgtCrdnIDs(String sndngId) {
return sndngDtlMapper.selectSndngTrgtCrdnIDs(sndngId);
}
/** .
* @param sndngDtl
* @return

@ -45,6 +45,16 @@ public class SndngDtlServiceBean extends AbstractServiceBean implements SndngDtl
return sndngDtlBean.getSndngDtls(req);
}
@Override
public List<DataObject> getSndngTrgtDtlIDs(String sndngId) {
return sndngDtlBean.getSndngTrgtDtlIDs(sndngId);
}
@Override
public List<DataObject> getSndngTrgtCrdnIDs(String sndngId) {
return sndngDtlBean.getSndngTrgtCrdnIDs(sndngId);
}
@Override
public boolean create(SndngDtl sndngDtl) {
return sndngDtlBean.create(sndngDtl);
@ -113,17 +123,17 @@ public class SndngDtlServiceBean extends AbstractServiceBean implements SndngDtl
String retMessage = ""; // 처리 결과 메시지
// 공시송달 IDs 건수를 확인하여 1건이하면.. 종료
if (svbtc.getSndngDtlIDs().length < 1) {
if (svbtc.getSndngDtlIds().length < 1) {
retMessage = "작업 중 선택 자료가 존재하지 않습니다.";
return retMessage;
}
// 공시송달 IDs 만큼 반복..
for (int iLoop = 0; iLoop < svbtc.getSndngDtlIDs().length; iLoop++) {
for (int iLoop = 0; iLoop < svbtc.getSndngDtlIds().length; iLoop++) {
// 발송 상세(TB_SNDNG_DTL) 대장에서 공시송달 정보를 삭제 한다.
SndngDtl sndngDtl = new SndngDtl();
sndngDtl.setSndngDtlId(svbtc.getSndngDtlIDs()[iLoop]);
sndngDtl.setSndngDtlId(svbtc.getSndngDtlIds()[iLoop]);
sndngDtl.setSvbtcId(svbtc.getSvbtcId());
sndngDtl.setSndngDtlSttsCd("05");

@ -139,14 +139,14 @@ public class SvbtcBean extends AbstractComponent {
}
List<DataObject> sndngDtlList = new ArrayList<DataObject>();
if (svbtc.getSndngDtlIDs() == null || svbtc.getSndngDtlIDs().length < 1) {
if (svbtc.getSndngDtlIds() == null || svbtc.getSndngDtlIds().length < 1) {
req.setOrderBy("SD.SNDNG_DTL_ID");
sndngDtlList = sndngDtlMapper.selectSvbtcsTrgtSndngDtlIDs(req);
} else {
SndbQuery query = new SndbQuery();
query.setSndngDtlIDs(svbtc.getSndngDtlIDs());
query.setSndngDtlIds(svbtc.getSndngDtlIds());
query.setOrderBy("SD.SNDNG_DTL_ID");
sndngDtlList = sndngDtlMapper.selectSvbtcsTrgtSndngDtlIDs(query);

@ -28,6 +28,7 @@ import cokr.xit.fims.sndb.service.SndngDtlService;
import cokr.xit.fims.sndb.service.SndngService;
import cokr.xit.fims.sndb.service.SvbtcService;
import cokr.xit.fims.sprt.PrintOption;
import cokr.xit.fims.sprt.service.IntegrationSearchService;
import cokr.xit.foundation.data.DataObject;
/**
@ -46,57 +47,51 @@ public class Sndb01Controller extends ApplicationController {
public class METHOD_URL {
public static final String
warningTargetMain = "/010/main.do" // 계고장발송 대상 메인 화면
, getWarningTargetList = "/010/list.do" // 계고장발송 대상 목록 조회
, getWarningTargetInfo = "/020/info.do" // 계고장발송 대상 조회
, createWarningSendingList = "/020/createList.do" // 계고장발송 대상 목록의 발송 등록
, warningSendingMain = "/030/main.do" // 계고장발송 현황 메인 화면
, getWarningSendingList = "/030/list.do" // 계고장발송 현황 목록 조회
, getWarningSendingDetailInfo = "/040/info.do" // 계고장발송 현황 상세 화면
, getWarningSendingDetailList = "/040/list.do" // 계고장발송 현황 상세 목록 조회
, advanceNoticeTargetMain = "/050/main.do" // 사전통지발송 대상 메인 화면
, getAdvanceNoticeTargetList = "/050/list.do" // 사전통지발송 대상 목록 조회
, getAdvanceNoticeTargetInfo = "/060/info.do" // 사전통지발송 대상 조회
, createAdvanceNoticeSendingList = "/060/createList.do" // 사전통지발송 대상 목록의 발송 등록
, advanceNoticeSendingMain = "/070/main.do" // 사전통지발송 현황 메인 화면
, getAdvanceNoticeSendingList = "/070/list.do" // 사전통지발송 대상 목록 조회
, getAdvanceNoticeSendingDetailInfo = "/080/info.do" // 사전통지발송 현황 상세 화면
, getAdvanceNoticeSendingDetailList = "/080/list.do" // 사전통지발송 현황 상세 목록 조회
, createSendingLink = "/080/createSndngLink.do" // 발송상세 목록의 우편통합 발송 연계 등록
, createSendBackList = "/080/createSndbkList.do" // 발송상세 목록의 반송 확인(등록)
, noticeSheetSendingMain = "/090/main.do" // 고지서발송 현황 메인 화면
, getNoticeSheetSendingList = "/090/list.do" // 고지서발송 대상 목록 조회
, getNoticeSheetSendingDetailInfo = "/100/info.do" // 고지서발송 현황 상세 화면
, getNoticeSheetSendingDetailList = "/100/list.do" // 고지서발송 현황 상세 목록 조회
, noticeSheetSendingTargetInfo = "/110/info.do" // 고지서발송 대상 화면
, unitySendBackTargetMain = "/210/main.do" // 통합 반송 등록 메인
, sendBackMain = "/220/main.do" // 반송 현황 메인 화면
, getSendBackList = "/220/list.do" // 반송 현황 목록 조회
, removeSendBack = "/220/remove.do" // 반송 삭제
, getSendBackInfo = "/230/info.do" // 반송 정보 조회
, createSendBack = "/230/create.do" // 반송 등록
, updateSendBack = "/230/update.do" // 반송 수정
, serviceByPublicNoticeMain = "/240/main.do" // 공시송달 현황 메인 화면
, getServiceByPublicNoticeList = "/240/list.do" // 공시송달 현황 목록 조회
, removeServiceByPublicNotice = "/240/remove.do" // 공시송달 삭제
, makeSvbtcFileFromHwpFormat = "/240/makeSvbtcHwp.do" // 공시송달 한글 파일 출력
, getServiceByPublicNoticeDetailInfo = "/250/info.do" // 공시송달 상세 화면
, getServiceByPublicNoticeDetailList = "/250/list.do" // 공시송달 상세 목록 조회
, makeSvbtcDetailsFileFromHwpFormat = "/250/makeSvbtcDtlHwp.do" // 공시송달 상세 한글 파일 출력
, getServiceByPublicNoticeInfo = "/260/info.do" // 공시송달 정보
, createServiceByPublicNotice = "/260/create.do" // 공시송달 등록
, updateServiceByPublicNotice = "/260/update.do" // 공시송달 수정
, removeServiceByPublicNoticeEach = "/250/remove.do" // 공시송달 개별 삭제
warningTargetMain = "/010/main.do" // 계고장발송 대상 메인 화면
, getWarningTargetList = "/010/list.do" // 계고장발송 대상 목록 조회
, getWarningTargetInfo = "/020/info.do" // 계고장발송 대상 조회
, createWarningSendingList = "/020/createList.do" // 계고장발송 대상 목록의 발송 등록
, warningSendingMain = "/030/main.do" // 계고장발송 현황 메인 화면
, getWarningSendingList = "/030/list.do" // 계고장발송 현황 목록 조회
, getWarningSendingDetailInfo = "/040/info.do" // 계고장발송 현황 상세 화면
, getWarningSendingDetailList = "/040/list.do" // 계고장발송 현황 상세 목록 조회
, advanceNoticeTargetMain = "/050/main.do" // 사전통지발송 대상 메인 화면
, getAdvanceNoticeTargetList = "/050/list.do" // 사전통지발송 대상 목록 조회
, getAdvanceNoticeTargetInfo = "/060/info.do" // 사전통지발송 대상 조회
, createAdvanceNoticeSendingList = "/060/createList.do" // 사전통지발송 대상 목록의 발송 등록
, advanceNoticeSendingMain = "/070/main.do" // 사전통지발송 현황 메인 화면
, getAdvanceNoticeSendingList = "/070/list.do" // 사전통지발송 대상 목록 조회
, getAdvanceNoticeSendingDetailInfo = "/080/info.do" // 사전통지발송 현황 상세 화면
, getAdvanceNoticeSendingDetailList = "/080/list.do" // 사전통지발송 현황 상세 목록 조회
, createSendingLink = "/080/createSndngLink.do" // 사전통지발송 현황 상세 목록의 우편통합 발송 연계 등록
, makeAdvntcePdf = "/080/makeAdvntcePdf.do" // 사전통지발송 현황 사전통지서 출력(PDF)
, makeAdvntceOutsourcing = "/080/makeAdvntceOutsourcing.do" // 사전통지발송 현황 사전통지서 출력(외주파일)
, createSendBackList = "/080/createSndbkList.do" // 발송상세 목록의 반송 확인(등록)
, noticeSheetSendingMain = "/090/main.do" // 고지서발송 현황 메인 화면
, getNoticeSheetSendingList = "/090/list.do" // 고지서발송 대상 목록 조회
, getNoticeSheetSendingDetailInfo = "/100/info.do" // 고지서발송 현황 상세 화면
, getNoticeSheetSendingDetailList = "/100/list.do" // 고지서발송 현황 상세 목록 조회
, noticeSheetSendingTargetInfo = "/110/info.do" // 고지서발송 대상 화면
, unitySendBackTargetMain = "/210/main.do" // 통합 반송 등록 메인
, sendBackMain = "/220/main.do" // 반송 현황 메인 화면
, getSendBackList = "/220/list.do" // 반송 현황 목록 조회
, removeSendBack = "/220/remove.do" // 반송 삭제
, getSendBackInfo = "/230/info.do" // 반송 정보 조회
, createSendBack = "/230/create.do" // 반송 등록
, updateSendBack = "/230/update.do" // 반송 수정
, serviceByPublicNoticeMain = "/240/main.do" // 공시송달 현황 메인 화면
, getServiceByPublicNoticeList = "/240/list.do" // 공시송달 현황 목록 조회
, removeServiceByPublicNotice = "/240/remove.do" // 공시송달 삭제
, makeSvbtcFileFromHwpFormat = "/240/makeSvbtcHwp.do" // 공시송달 한글 파일 출력
, getServiceByPublicNoticeDetailInfo = "/250/info.do" // 공시송달 상세 화면
, getServiceByPublicNoticeDetailList = "/250/list.do" // 공시송달 상세 목록 조회
, makeSvbtcDetailsFileFromHwpFormat = "/250/makeSvbtcDtlHwp.do" // 공시송달 상세 한글 파일 출력
, removeServiceByPublicNoticeEach = "/250/remove.do" // 공시송달 개별 삭제
, getServiceByPublicNoticeInfo = "/260/info.do" // 공시송달 정보
, createServiceByPublicNotice = "/260/create.do" // 공시송달 등록
, updateServiceByPublicNotice = "/260/update.do" // 공시송달 수정
;
}
@ -116,6 +111,10 @@ public class Sndb01Controller extends ApplicationController {
@Resource(name="taskBean")
private TaskBean taskBean;
/**통합 조회 서비스*/
@Resource(name="integrationSearchService")
private IntegrationSearchService integrationSearchService;
@Resource(name="stngBean")
private StngBean stngBean;
@ -1595,4 +1594,47 @@ public class Sndb01Controller extends ApplicationController {
.addObject("rtnMsg", rtnMsg);
}
/** PDF .
* @return PDF
*/
public ModelAndView makeAdvntcePdf(PrintOption printOption, String sndngId) {
ModelAndView mav = new ModelAndView("jsonView");
List<DataObject> list = sndngDtlService.getSndngTrgtCrdnIDs(sndngId);
String[] crdnIds = new String[list.size()];
for (int iLoop = 0; iLoop < list.size(); iLoop++) {
crdnIds[iLoop] = list.get(iLoop).string("CRDN_ID");
}
Map<String,String> result = integrationSearchService.makePdfFile("info", "advntce", printOption, crdnIds);
mav.addAllObjects(result);
return mav;
}
/** txt, .
* @return
*/
public ModelAndView makeAdvntceOutsourcing(PrintOption printOption, String sndngId) {
ModelAndView mav = new ModelAndView("jsonView");
List<DataObject> list = sndngDtlService.getSndngTrgtCrdnIDs(sndngId);
String[] crdnIds = new String[list.size()];
for (int iLoop = 0; iLoop < list.size(); iLoop++) {
crdnIds[iLoop] = list.get(iLoop).string("CRDN_ID");
}
Map<String,String> result = integrationSearchService.makeOutsourcingFile("advntce", printOption, crdnIds);
mav.addAllObjects(result);
return mav;
}
}

@ -32,6 +32,7 @@ import cokr.xit.fims.sndb.SndngDtl;
import cokr.xit.fims.sndb.Svbtc;
import cokr.xit.fims.sprt.CvlcptDscsn;
import cokr.xit.fims.sprt.CvlcptDscsnQuery;
import cokr.xit.fims.sprt.PrintOption;
import cokr.xit.fims.sprt.SprtQuery;
@Controller
@ -649,6 +650,18 @@ public class DpvController {
return super.createSendingLink(sndng);
}
@Override
@RequestMapping(name="사전통지발송 현황 사전통지서 pdf 파일 생성", value=METHOD_URL.makeAdvntcePdf)
public ModelAndView makeAdvntcePdf(PrintOption printOption, String sndngId) {
return super.makeAdvntcePdf(printOption, sndngId);
}
@Override
@RequestMapping(name="사전통지발송 현황 사전통지서 외주 파일 생성", value=METHOD_URL.makeAdvntceOutsourcing)
public ModelAndView makeAdvntceOutsourcing(PrintOption printOption, String sndngId) {
return super.makeAdvntceOutsourcing(printOption, sndngId);
}
@Override
@RequestMapping(name="발송상세의 반송(미배달) 정보 조회", value=METHOD_URL.getSendBackInfo)
public ModelAndView getSendBackInfo(SndbQuery req) {

@ -174,9 +174,9 @@
<select id="selectSndngs" parameterType="map" resultType="dataobject">/* 발송 대장 객체 가져오기(sndngMapper.selectSndngs) */
<include refid="selectList" />
<where>
<if test="sndngIDs != null">
<if test="sndngIds != null">
AND S.SNDNG_ID IN ( <!-- 발송 IDs -->
<foreach collection="sndngIDs" item="sndngId" separator=","> #{sndngId} </foreach>
<foreach collection="sndngIds" item="sndngId" separator=","> #{sndngId} </foreach>
)
</if>
<if test="sndngId != null">

@ -229,9 +229,9 @@
<include refid="utility.paging-prefix" />
<include refid="selectList" />
<where>
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SD.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<if test="sndngDtlId != null">
@ -254,9 +254,9 @@
<select id="selectSndngDtls" parameterType="map" resultType="dataobject">/* 발송 상세 객체 가져오기(sndngDtlMapper.selectSndngDtls) */
<include refid="selectList" />
<where>
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SD.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<if test="sndngDtlId != null">
@ -283,6 +283,14 @@
ORDER BY SNDNG_DTL_ID
</select>
<select id="selectSndngTrgtCrdnIDs" parameterType="String" resultType="dataobject">/* 발송 ID로 단속 ID를 가져오기(sndngDtlMapper.selectSndngTrgtCrdnIDs) */
SELECT CRDN_ID <!-- 단속 ID -->
FROM TB_SNDNG_DTL
WHERE SNDNG_ID = #{sndngId} <!-- 발송 ID -->
AND DEL_YN = 'N'
ORDER BY SNDNG_DTL_ID
</select>
<select id="selectSndngDtlLevyInfo" parameterType="string" resultType="dataobject">/* 발송 상세 및 부과 객체 가져오기(sndngDtlMapper.selectSndngDtlLevyInfo) */
SELECT SD.SNDNG_DTL_ID <!-- 발송 상세 ID -->
, SD.SNDNG_ID <!-- 발송 ID -->
@ -854,9 +862,9 @@
AND (SD.SVBTC_ID IS NULL OR SD.SVBTC_ID = '')
AND (SD.SNDNG_RCVMT_CD IS NULL OR SD.SNDNG_RCVMT_CD = '')
AND (S.RESND_YN IS NULL OR S.RESND_YN = 'N')
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SD.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<choose>
@ -1001,9 +1009,9 @@
<select id="selectSndbks" parameterType="map" resultType="dataobject">/* 반송 정보 조회(sndngDtlMapper.selectSndbks) */
<include refid="selectSndbk" />
<where>
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SD.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<if test="sndngDtlId != null">

@ -233,9 +233,9 @@
<if test="svbtcId != null">
AND SV.SVBTC_ID = #{svbtcId} <!-- 공시송달 ID -->
</if>
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SV.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<if test="sndngDtlId != null">
@ -305,9 +305,9 @@
<if test="svbtcId != null">
AND SV.SVBTC_ID = #{svbtcId} <!-- 공시송달 ID -->
</if>
<if test="sndngDtlIDs != null">
<if test="sndngDtlIds != null">
AND SD.SNDNG_DTL_ID IN ( <!-- 발송 상세 IDs -->
<foreach collection="sndngDtlIDs" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
<foreach collection="sndngDtlIds" item="sndngDtlId" separator=","> #{sndngDtlId} </foreach>
)
</if>
<if test="sndngDtlId != null">

@ -452,7 +452,7 @@
$P.callbackRsn = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {};
params.sndngIDs = selected.join(","); // IDs
params.sndngIds = selected.join(","); // Ids
params.delRsn = obj.reason; // 삭제 사유
$P.control.remove(params);

@ -143,7 +143,7 @@
**************************************************************************/
$P.control = new DatasetControl({
prefix : "wrngSndngDtl"
, prefixName : "계고장 발송 상세 정보"
, prefixName : "계고장 발송 상세"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.${infoPrefix}List
, appendData : true

@ -125,8 +125,14 @@
</div>
<span class="container-window-btn-right">
<!-- 업무 버튼 -->
<button type="button" class="btn btn-primary w-px-120" id="btnRemove--${pageName}" title="사전통지 발송 삭제">
삭제
<button type="button" class="btn btn-primary w-px-120" id="btnCreateNxrpLink--${pageName}" title="세외수입 등록">
세외수입 등록
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnUpdateNxrpLink--${pageName}" title="매치정보 등록">
매치정보 작성
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnRemoveSndng--${pageName}" title="사전통지 발송 삭제">
발송 삭제
</button>
</span>
</span>
@ -298,7 +304,7 @@
});
// 삭제 버튼
$("#btnRemove--${pageName}").prop("disabled", keys.length < 1);
$("#btnRemoveSndng--${pageName}").prop("disabled", keys.length < 1);
// DataTables(그리드) 전체 선택(checkbox)
if (keys.length < 1) {
@ -335,7 +341,7 @@
// 삭제 callback
$P.control.onRemove = (resp) => {
let btnTitle = $("#btnRemove--${pageName}").attr("title");
let btnTitle = $("#btnRemoveSndng--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
// 메시지 출력
@ -441,11 +447,57 @@
});
}
// 세외수입 등록
$P.createNxrpLink = (params) => {
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/nxrp/nxrp01/010/createNxrpLink.do")
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
, onOK : () => { }
});
}
});
}
// 매칭정보 확인
$P.updateNxrpLink = (params) => {
// 선택된 자료의 ID 추가
let selected = $P.control.dataset.getKeys("selected"); // 발송 상세 ID
let crdnKeys = getCrdnKeys("selected"); // 단속 ID
if (selected.length < 1) return;
params.sndngDtlIds = selected.join(","); // 발송 상세 Ids
params.crdnIDs = crdnKeys.join(","); // 단속 IDs
params.delYN = "N"; // 삭제 여부
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/sndb/nxrp01/010/updateNxrpLink.do")
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
, onOK : () => { }
});
}
});
}
// 삭제 사유 callback
$P.callbackRsn = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {};
params.sndngIDs = selected.join(","); // IDs
params.sndngIds = selected.join(","); // Ids
params.delRsn = obj.reason; // 삭제 사유
$P.control.remove(params);
@ -515,8 +567,44 @@
$P.getFindUser();
}
// 세외수입등록 버튼 이벤트
$P.fnCreateNxrpLink = (title) => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
// main에서 받아온 조건(Query)을 파라미터로 넘긴다.
dialog.alert({
content : "세외수입 과태료 대장에 자료를 전송하시겠습니까?"
, onOK : () => {
let params = {};
params.title; // 타이틀
params.sndngId = $P.control.dataset.getValue("SNDNG_ID"); // 발송 ID
$P.createNxrpLink(params);
}
});
}
// 매치정보작성 버튼 이벤트
$P.fnUpdateNxrpLink = (title) => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
// main에서 받아온 조건(Query)을 파라미터로 넘긴다.
dialog.alert({
content : "과태료 대장에 매치정보 작성하시겠습니까?"
, onOK : () => {
let params = {};
params.title; // 타이틀
params.sndngId = $P.control.dataset.getValue("SNDNG_ID"); // 발송 ID
$P.updateNxrpLink(params);
}
});
}
// 삭제 버튼 이벤트
$P.fnRemove = () => {
$P.fnRemoveSndng = () => {
// 선택 자료
let selected = $P.control.dataset.getKeys("selected");
@ -578,7 +666,18 @@
});
// 업무 버튼 이벤트
$("#btnRemove--${pageName}").on("click", () => $P.fnRemove()); // 사전통지 발송 삭제
// 세외수입 등록 버튼 이벤트
$("#btnCreateNxrpLink--${pageName}").on("click", function() {
$P.fnCreateNxrpLink($(this).attr("title"));
});
// 매치정보 작성 버튼 이벤트
$("#btnUpdateNxrpLink--${pageName}").on("click", function() {
$P.fnUpdateNxrpLink($(this).attr("title"));
});
// 사전통지 발송 삭제 버튼 이벤트
$("#btnRemoveSndng--${pageName}").on("click", function() {
$P.fnRemoveSndng($(this).attr("title"));
});
// DataTables width 변경 조정
fnMakeResizableTable($("#table-responsive--${pageName}")[0]);

@ -29,24 +29,24 @@
<button type="button" class="btn btn-excel w-px-120" id="btnExcel--${pageName}" title="엑셀">
엑셀
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnCreateNxrpLink--${pageName}" title="세외수입 등록">
세외수입 등록
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnUpdateNxrpLink--${pageName}" title="매치정보 등록">
매치정보 작성
<button type="button" class="btn btn-primary w-px-120" id="btnLevyIdnty--${pageName}" title="미부과건 확인">
미부과건 확인
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnCreateSndngLink--${pageName}" title="우편통합 발송">
우편통합 발송
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnPrintAdvntce--${pageName}" title="사전통지 출력">
사전통지 출력
<button type="button" class="btn btn-primary w-px-120" id="btnPrintAdvntcePdf01--${pageName}" title="사전통지 출력(PDF-A4)">
사전통지 출력(PDF-A4)
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnPrintAdvntcePdf02--${pageName}" title="사전통지 출력(PDF-Letter)">
사전통지 출력(PDF-Letter)
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnPrintAdvntceOutsourcing--${pageName}" title="사전통지 출력(외주파일)">
사전통보서출력(외주파일)
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnCreateSndbk--${pageName}" title="반송 등록">
반송 확인
</button>
<button type="button" class="btn btn-primary w-px-120" id="btnLevyIdnty--${pageName}" title="미부과건 확인">
미부과건 확인
</button>
</span>
</span>
</div>
@ -142,6 +142,8 @@
<!-- / DataTables(그리드) -->
</div> <!-- <div class="wrapper-list"> -->
</div> <!-- <div class="card"> -->
<span id="tempArea--${pageName}" hidden></span>
</div> <!-- / Content <div class="container flex-grow-1 px-0"> -->
</div>
<!-- / inner page html <div class="content-wrapper"> -->
@ -173,7 +175,7 @@
**************************************************************************/
$P.control = new DatasetControl({
prefix : "advntceSndngDtl"
, prefixName : "사전통지 발송 상세 정보"
, prefixName : "사전통지 발송 상세"
, keymapper : info => info ? info.SNDNG_DTL_ID : ""
, dataGetter : obj => obj.${infoPrefix}List
, appendData : true
@ -293,43 +295,22 @@
});
}
// 세외수입 등록
$P.createNxrpLink = (params) => {
if (!params) return;
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/nxrp/nxrp01/010/createNxrpLink.do")
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, $("#btnCreateNxrpLink--${pageName}").attr("title"));
dialog.alert({
content : showMessage
, onOK : () => { }
});
}
});
}
// 매칭정보 확인
$P.updateNxrpLink = (params) => {
// 선택된 자료의 ID 추가
let selected = $P.control.dataset.getKeys("selected"); // 발송 상세 ID
let crdnKeys = getCrdnKeys("selected"); // 단속 ID
// 미부과건 확인
$P.levyIdnty = (params) => {
// 선택된 자료의 발송 상세 ID 추가
let selected = $P.control.dataset.getKeys("selected");
if (selected.length < 1) return;
params.sndngDtlIDs = selected.join(","); // 발송 상세 IDs
params.crdnIDs = crdnKeys.join(","); // 단속 IDs
params.sndngDtlIds = selected.join(","); // 발송 상세 Ids
params.delYN = "N"; // 삭제 여부
ajax.post({
url : wctx.url("/" + params.taskSeCd + "/sndb/nxrp01/010/updateNxrpLink.do")
url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/levyIdnty.do")
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, $("#btnUpdateNxrpLink--${pageName}").attr("title"));
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
@ -349,15 +330,14 @@
, sndngYmd : obj.sndngYmd // 발송 일자
, sndngEndYmd : obj.sndngEndYmd // 발송 종료 일자
, postSndngSeCd : obj.postSndngSeCd // 우편 발송 구분 코드 0 일반, 1 등기
, title : $("#btnCreateSndngLink--${pageName}").attr("title")
};
ajax.post({
url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/080/createSndngLink.do")
, data : params || {}
, success : resp => {
let btnTitle = $("#btnCreateSndngLink--${pageName}").attr("title");
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, btnTitle);
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
@ -367,17 +347,6 @@
});
}
// 사전통지 출력
$P.print = (params) => {
if (!params) return;
// ajax.post({
// url : !create ? $P.control.urls.update : $P.control.urls.create
// , data : params
// , success : resp => $P.control.onSave(resp)
// });
}
// 종적결과 등록
$P.createSndbk = (params) => {
if (!params) return;
@ -387,32 +356,7 @@
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, $("#btnCreateSndbk--${pageName}").attr("title"));
dialog.alert({
content : showMessage
, onOK : () => { }
});
}
});
}
// 미부과건 확인
$P.levyIdnty = (params) => {
// 선택된 자료의 발송 상세 ID 추가
let selected = $P.control.dataset.getKeys("selected");
if (selected.length < 1) return;
params.sndngDtlIDs = selected.join(","); // 발송 상세 IDs
params.delYN = "N"; // 삭제 여부
ajax.post({
url : wctx.url("/" + params.taskSeCd + $P.PrefixUrl + "/levyIdnty.do")
, data : params || {}
, success : resp => {
// S 또는 F 를 버튼 title 로 변경하여 메시지 출력
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, $("#btnCreateSndbk--${pageName}").attr("title"));
let showMessage = resp.rtnMsg.replace(/[S]|[F]/g, params.title);
dialog.alert({
content : showMessage
@ -444,36 +388,20 @@
$P.control.download();
}
// 세외수입등록 버튼 이벤트
$P.fnCreateNxrpLink = () => {
// 미부과건확인 버튼 이벤트
$P.fnLevyIdnty = () => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
// main에서 받아온 조건(Query)을 파라미터로 넘긴다.
dialog.alert({
content : "세외수입 과태료 대장에 자료를 전송하시겠습니까?"
, onOK : () => {
$P.createNxrpLink($P.mainQuery);
}
});
}
// 매치정보작성 버튼 이벤트
$P.fnUpdateNxrpLink = () => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
// 파리미터 설정
let params = $P.formFields.get(); // formFields
params.title = title; // 타이틀
// main에서 받아온 조건(Query)을 파라미터로 넘긴다.
dialog.alert({
content : "세외수입 과태료 대장의 매치정보 작성하시겠습니까?"
, onOK : () => {
$P.updateNxrpLink($P.mainQuery);
}
});
$P.levyIdnty(params);
}
// 우편통합발송 버튼 이벤트
$P.fnCreateSndngLink = () => {
$P.fnCreateSndngLink = (title) => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
@ -487,7 +415,7 @@
wctx.url("/resources/html/inputDateDialog.html"
+ "?openerPageName=${pageName}"
+ "&prefix=" + "sndngLink"
+ "&usePurpose=" + "create"
+ "&callPurpose=" + "create"
+ "&sndngYmd=" + $P.control.dataset.getValue("SNDNG_YMD")
+ "&sndngEndYmd=" + $P.control.dataset.getValue("SNDNG_END_YMD")
)
@ -497,54 +425,90 @@
}
// 사전통지출력 버튼 이벤트
$P.fnPrintAdvntce = () => {
$P.fnMakeFileAdvntce = (title, fileType, paper) => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
dialog.alert({
content : $P.control.prefixName + " 정보를 출력하시겠습니까?"
, onOK : () => {
$P.print($P.formFields.get());
let taskSeCd = $P.control.dataset.getValue("TASK_SE_CD");
let url = "";
if (fileType == "pdf") {
url = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/080/makeAdvntcePdf.do");
} else if (fileType == "outsourcing") {
url = wctx.url("/" + taskSeCd + $P.PrefixUrl + "/080/makeAdvntceOutsourcing.do");
}
let params = {};
params.sndngId = $P.control.dataset.getValue("SNDNG_ID") // 발송 ID
params.taskSeCd = taskSeCd;
if (fileType == "pdf") params.paperSeCd = paper;
ajax.post({
url : url
, data : params
, success : (resp) => {
if (resp.filePath != null && resp.filePath != "") {
if (fileType == "pdf") {
openPDF(resp.filePath, resp.fileName, resp.fileName);
} else {
downloadFile(resp.filePath, resp.fileName, "tempArea--${pageName}");
}
}
}
});
}
// 반송확인 버튼 이벤트
$P.fnCreateSndbk = () => {
$P.fnCreateSndbk = (title) => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
dialog.alert({
content : "종적결과를 확인하시겠습니까?"
, onOK : () => {
$P.createSndbk($P.mainQuery);
// 파리미터 설정
let params = $P.mainQuery; // mainQuery
params.title = title; // 타이틀
$P.createSndbk(params);
}
});
}
// 미부과건확인 버튼 이벤트
$P.fnLevyIdnty = () => {
// validate 확인
if (!customValidate($("#frmEdit--${pageName}").find("input, select, textarea"))) return;
$P.levyIdnty($P.formFields.get());
}
/**************************************************************************
* 초기 셋팅
**************************************************************************/
// 이벤트 설정
$P.setEvent = () => {
// 기본 버튼 이벤트
$("#btnExcel--${pageName}").on("click", () => $P.fnExcel()); // 엑셀
// 업무 버튼 이벤트
$("#btnCreateNxrpLink--${pageName}").on("click", () => $P.fnCreateNxrpLink()); // 세외수입 등록
$("#btnUpdateNxrpLink--${pageName}").on("click", () => $P.fnUpdateNxrpLink()); // 매치정보 등록
$("#btnCreateSndngLink--${pageName}").on("click", () => $P.fnCreateSndngLink()); // 우편통합 발송
$("#btnPrintAdvntce--${pageName}").on("click", () => $P.fnPrintAdvntce()); // 사전통지
$("#btnCreateSndbk--${pageName}").on("click", () => $P.fnCreateSndbk()); // 반송 등록
$("#btnLevyIdnty--${pageName}").on("click", () => $P.fnLevyIdnty()); // 미부과건 확인
$("#btnExcel--${pageName}").on("click", () => $P.fnExcel()); // 엑셀
// 미부과건 확인 버튼 이벤트
$("#btnLevyIdnty--${pageName}").on("click", function() {
$P.fnLevyIdnty($(this).attr("title"));
});
// 우편통합 발송 버튼 이벤트
$("#btnCreateSndngLink--${pageName}").on("click", function() {
$P.fnCreateSndngLink($(this).attr("title"));
});
// 사전통지 출력(PDF-A4) 버튼 이벤트
$("#btnPrintAdvntcePdf01--${pageName}").on("click", function() {
$P.fnMakeFileAdvntce($(this).attr("title"), "pdf", "01");
});
// 사전통지 출력(PDF-Letter) 버튼 이벤트
$("#btnPrintAdvntcePdf02--${pageName}").on("click", function() {
$P.fnMakeFileAdvntce($(this).attr("title"), "pdf", "02");
});
// 사전통지 출력(외주파일) 버튼 이벤트
$("#btnPrintAdvntceOutsourcing--${pageName}").on("click", function() {
$P.fnMakeFileAdvntce($(this).attr("title"), "outsourcing");
});
// 반송 등록 버튼 이벤트
$("#btnCreateSndbk--${pageName}").on("click", function() {
$P.fnCreateSndbk($(this).attr("title"));
});
// DataTables width 변경 조정
fnMakeResizableTable($("#table-responsive--${pageName}")[0]);

@ -475,7 +475,7 @@
$P.callbackRsn = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {};
params.sndngIDs = selected.join(","); // IDs
params.sndngIds = selected.join(","); // Ids
params.delRsn = obj.reason; // 삭제 사유
$P.control.remove(params);

@ -611,7 +611,7 @@
let params = $P.control.query; // 검색 조건
params.title = title; // 타이틀
params.callPurpose = "create"; // 호출 용도 (등록)
params.sndngDtlIDs = selected.join(","); // IDs
params.sndngDtlIds = selected.join(","); // 발송 상세 Ids
params.sggCd = $P.control.dataset.getValue("SGG_CD") // 시군구 코드
params.deptCd = $P.control.dataset.getValue("DEPT_CD") // 부서코드
params.taskSeCd = $P.control.dataset.getValue("TASK_SE_CD") // 업무 구분 코드

@ -344,7 +344,7 @@
, svbtcId : $P.control.dataset.getValue("SVBTC_ID") // 반송 ID
};
params.sndngDtlIDs = selected.join(","); // 발송 상세 IDs
params.sndngDtlIds = selected.join(","); // 발송 상세 Ids
params.printDocNo = obj.docNo; // 문서 번호
params.printTtlNm = obj.ttlNm; // 제목
params.printSvbtcDate = obj.textDate; // 공고 기한
@ -371,7 +371,7 @@
$P.callbackRsn = (obj) => {
// 서버에 전송할 data(파라미터) 생성
let params = {};
params.sndngDtlIDs = selected.join(","); // 발송 상세 IDs
params.sndngDtlIds = selected.join(","); // 발송 상세 IDs
params.delRsn = obj.reason; // 삭제 사유
$P.control.remove(params);

Loading…
Cancel
Save