현세대 세외수입 연계 수정.

main
jjh 1 year ago
parent 0037d2de92
commit d47d409d8e

@ -1,200 +0,0 @@
package cokr.xit.fims.enis;
import cokr.xit.foundation.AbstractEntity;
import lombok.Getter;
import lombok.Setter;
/**
*
* @author JoJH
*/
@Getter
@Setter
public class EnisMtchg extends AbstractEntity {
/**
* ID
*/
private String mtchgId;
/**
* ID
*/
private String crdnId;
/**
*
*/
private String crdnDt;
/**
*
*/
private String stdgNm;
/**
*
*/
private String crdnPlc;
/**
*
*/
private String lvyKey;
/**
*
*/
private String acntgYr;
/**
*
*/
private String levyNo;
/**
*
*/
private Integer levyAmt;
/**
*
*/
private Integer adtnAmt;
/**
*
*/
private Integer sumAmt;
/**
*
*/
private String prcsSttsCd;
/**
*
*/
private String epayno;
/**
* 1
*/
private String bankNm1;
/**
* 1
*/
private String vractno1;
/**
* 2
*/
private String bankNm2;
/**
* 2
*/
private String vractno2;
/**
* 3
*/
private String bankNm3;
/**
* 3
*/
private String vractno3;
/**
* 4
*/
private String bankNm4;
/**
* 4
*/
private String vractno4;
/**
* 5
*/
private String bankNm5;
/**
* 5
*/
private String vractno5;
/**
* 6
*/
private String bankNm6;
/**
* 6
*/
private String vractno6;
/**
* 7
*/
private String bankNm7;
/**
* 7
*/
private String vractno7;
/**
* 8
*/
private String bankNm8;
/**
* 8
*/
private String vractno8;
/**
* 9
*/
private String bankNm9;
/**
* 9
*/
private String vractno9;
/**
* 10
*/
private String bankNm10;
/**
* 10
*/
private String vractno10;
/**
* 11
*/
private String bankNm11;
/**
* 11
*/
private String vractno11;
/**
*
*/
private String delYn;
/**
*
*/
private String delRsn;
}

@ -1,102 +0,0 @@
package cokr.xit.fims.enis;
import cokr.xit.foundation.component.QueryRequest;
/**
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 JoJH
* ================================
* </pre>
*/
public class EnisMtchgQuery extends QueryRequest {
private static final long serialVersionUID = 1L;
// ID
private String[] mtchgIDs; // 매칭 IDs
private String mtchgId; // 매칭 ID
private String crdnId; // 단속 ID
// ETC
private String callPurpose; // 자료 조회시 호출용도. (view 조회, create 등록, update 수정, refresh 재조회)
private String delYn; // 삭제 여부
private String delRsn; // 삭제 사유
private String crdnDelYn; // 단속 삭제 여부
public String[] getMtchgIDs() {
return ifEmpty(mtchgIDs, () -> null);
}
public <T extends EnisMtchgQuery> T setMtchgIDs(String... mtchgIDs) {
this.mtchgIDs = mtchgIDs;
return self();
}
public String getMtchgId() {
return ifEmpty(mtchgId, () -> null);
}
public <T extends EnisMtchgQuery> T setMtchgId(String mtchgId) {
this.mtchgId = mtchgId;
return self();
}
public String getCrdnId() {
return ifEmpty(crdnId, () -> null);
}
public <T extends EnisMtchgQuery> T setCrdnId(String crdnId) {
this.crdnId = crdnId;
return self();
}
// ETC /////////////////////////////////////////////////////////////////////
public String getCallPurpose() {
return ifEmpty(callPurpose, () -> null);
}
public <T extends EnisMtchgQuery> T setCallPurpose(String callPurpose) {
this.callPurpose = callPurpose;
return self();
}
public String getDelYn() {
return ifEmpty(delYn, () -> null);
}
public <T extends EnisMtchgQuery> T setDelYn(String delYn) {
this.delYn = delYn;
return self();
}
public String getDelRsn() {
return ifEmpty(delRsn, () -> null);
}
public <T extends EnisMtchgQuery> T setDelRsn(String delRsn) {
this.delRsn = delRsn;
return self();
}
public String getCrdnDelYn() {
return ifEmpty(crdnDelYn, () -> null);
}
public <T extends EnisMtchgQuery> T setCrdnDelYn(String crdnDelYn) {
this.crdnDelYn = crdnDelYn;
return self();
}
// ETC /////////////////////////////////////////////////////////////////////
}

@ -1,107 +0,0 @@
package cokr.xit.fims.enis.dao;
import java.util.List;
import java.util.Map;
import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.EnisMtchgQuery;
/** DAO
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 JoJH
* ================================
* </pre>
*/
@Mapper("enisMtchgMapper")
public interface EnisMtchgMapper extends AbstractMapper {
/** .<br />
* @param req
* @return
*/
List<DataObject> selectEnisMtchgList(EnisMtchgQuery req);
/** .
* @param req
* @return
*/
List<DataObject> selectEnisMtchgs(EnisMtchgQuery req);
default DataObject selectEnisMtchgInfo(String crdnId) {
List<DataObject> infoEnisMtchg = selectEnisMtchgs(new EnisMtchgQuery().setCrdnId(crdnId)
.setDelYn("N")
.setOrderBy("MTCHG_ID DESC"));
return !infoEnisMtchg.isEmpty() ? infoEnisMtchg.get(0) : null;
}
/** .
* @param params
* <ul><li>"enisMtchg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int insertEnisMtchg(Map<String, Object> params);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean insert(EnisMtchg enisMtchg) {
return enisMtchg != null && insertEnisMtchg(params().set("enisMtchg", enisMtchg)) == 1;
}
/** .
* @param params
* <ul><li>"enisMtchg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int updateEnisMtchg(Map<String, Object> params);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean update(EnisMtchg enisMtchg) {
return enisMtchg != null && updateEnisMtchg(params().set("enisMtchg", enisMtchg)) == 1;
}
/** .
* @param params
* <ul><li>"enisMtchg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteEnisMtchg(Map<String, ?> params);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
default boolean delete(EnisMtchg enisMtchg) {
return enisMtchg != null && deleteEnisMtchg(params().set("enisMtchg", enisMtchg)) == 1;
}
}

@ -1,61 +0,0 @@
package cokr.xit.fims.enis.service;
import java.util.List;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.EnisMtchgQuery;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 JoJH
* ================================
* </pre>
*/
public interface EnisMtchgService {
/** .
* @param req
* @return
*/
List<DataObject> getEnisMtchgList(EnisMtchgQuery req);
/** .
* @param req
* @return
*/
List<DataObject> getEnisMtchgs(EnisMtchgQuery req);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
boolean createEnisMtchg(EnisMtchg enisMtchg);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
boolean updateEnisMtchg(EnisMtchg enisMtchg);
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
boolean removeEnisMtchg(EnisMtchg enisMtchg);
}

@ -1,90 +0,0 @@
package cokr.xit.fims.enis.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Component;
import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.EnisMtchgQuery;
import cokr.xit.fims.enis.dao.EnisMtchgMapper;
/** Bean
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 JoJH
* ================================
* </pre>
*/
@Component("enisMtchgBean")
public class EnisMtchgBean extends AbstractComponent {
/** 세외수입 매칭 내역 정보 DAO */
@Resource(name = "enisMtchgMapper")
private EnisMtchgMapper enisMtchgMapper;
/** .
* @param req
* @return
*/
public List<DataObject> getEnisMtchgList(EnisMtchgQuery req) {
return enisMtchgMapper.selectEnisMtchgList(req);
}
/** .
* @param req
* @return
*/
public List<DataObject> getEnisMtchgs(EnisMtchgQuery req) {
return enisMtchgMapper.selectEnisMtchgs(req);
}
/** ID .<br />
* @param crdnId ID
* @return
*/
public DataObject getEnisMtchgInfo(String crdnId) {
return enisMtchgMapper.selectEnisMtchgInfo(crdnId);
}
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean createEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgMapper.insert(enisMtchg);
}
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean updateEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgMapper.update(enisMtchg);
}
/** .
* @param enisMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public boolean removeEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgMapper.delete(enisMtchg);
}
}

@ -1,58 +0,0 @@
package cokr.xit.fims.enis.service.bean;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.EnisMtchgQuery;
import cokr.xit.fims.enis.service.EnisMtchgService;
/** .
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 JoJH
* ================================
* </pre>
*/
@Service("enisMtchgService")
public class EnisMtchgServiceBean extends AbstractServiceBean implements EnisMtchgService {
/** 세외수입 매칭 내역 정보 Bean */
@Resource(name = "enisMtchgBean")
private EnisMtchgBean enisMtchgBean;
@Override
public List<DataObject> getEnisMtchgList(EnisMtchgQuery req) {
return enisMtchgBean.getEnisMtchgList(req);
}
@Override
public List<DataObject> getEnisMtchgs(EnisMtchgQuery req) {
return enisMtchgBean.getEnisMtchgs(req);
}
@Override
public boolean createEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgBean.createEnisMtchg(enisMtchg);
}
@Override
public boolean updateEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgBean.updateEnisMtchg(enisMtchg);
}
@Override
public boolean removeEnisMtchg(EnisMtchg enisMtchg) {
return enisMtchgBean.removeEnisMtchg(enisMtchg);
}
}

@ -1,105 +0,0 @@
package cokr.xit.fims.enis.web;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.foundation.web.AbstractController;
import cokr.xit.fims.enis.EnisMtchg;
import cokr.xit.fims.enis.EnisMtchgQuery;
import cokr.xit.fims.enis.service.EnisMtchgService;
/**
*
* <p> :
*
* <pre>
* ============ ============
* 2023-10-04 mjkhan
* ================================
* </pre>
*/
@RequestMapping(name = "세외수입 매칭 내역", value = "/enisMtchg")
public class EnisMtchgController extends AbstractController {
/**세외수입 매칭 내역 서비스*/
@Resource(name = "enisMtchgService")
private EnisMtchgService enisMtchgService;
/** (enisMtchg/enisMtchg-main) .
* {@link #getEnisMtchgList(EnisMtchgQuery) } .
* @return /enisMtchg/enisMtchg-main
*/
@RequestMapping(name = "세외수입 매칭 내역 메인", value = "/main.do")
public ModelAndView main() {
ModelAndView mav = getEnisMtchgList(new EnisMtchgQuery().setPageNum(1));
mav.setViewName("/enisMtchg/enisMtchg-main");
return mav.addObject("enisMtchgList", toJson(mav.getModel().get("enisMtchgList")));
}
/** .<br />
* {@link EnisMtchgService#getEnisMtchgList(EnisMtchgQuery)}
* @param req
* @return jsonView
* <pre><code> {
* "enisMtchgList": [ ]
* "enisMtchgStart":
* "enisMtchgFetch":
* "enisMtchgTotal":
* }</code></pre>
*/
@RequestMapping(name = "세외수입 매칭 내역 조회", value = "/list.do")
public ModelAndView getEnisMtchgList(EnisMtchgQuery req) {
List<?> result = enisMtchgService.getEnisMtchgList(setFetchSize(req));
return setCollectionInfo(new ModelAndView("jsonView"), result, "enisMtchg");
}
/** .
* @param enisMtchg
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "세외수입 매칭 내역 등록", value = "/create.do")
public ModelAndView createEnisMtchg(EnisMtchg enisMtchg) {
boolean saved = enisMtchgService.createEnisMtchg(enisMtchg);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
/** .
* @param enisMtchg
* @return jsonView
* <pre><code> {
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "세외수입 매칭 내역 수정", value = "/update.do")
public ModelAndView updateEnisMtchg(EnisMtchg enisMtchg) {
boolean saved = enisMtchgService.updateEnisMtchg(enisMtchg);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
/** .
* @param enisMtchgIDs
* @return jsonView
* <pre><code> {
* "affected":
* "saved": true, false
* }</code></pre>
*/
@PostMapping(name = "세외수입 매칭 내역 제거", value = "/remove.do")
public ModelAndView removeEnisMtchg(EnisMtchg enisMtchg) {
boolean saved = enisMtchgService.removeEnisMtchg(enisMtchg);
return new ModelAndView("jsonView")
.addObject("saved", saved);
}
}

@ -73,7 +73,7 @@ public class LevyBean extends AbstractComponent {
return levyMapper.selectLevyInfo(req);
}
/** .
/** .
* @param levy
* @return
* <ul><li> true</li>
@ -97,6 +97,11 @@ public class LevyBean extends AbstractComponent {
for (int iLoop = 0; iLoop < req.getCrdnIDs().length; iLoop++) {
DataObject crdnInfo = levyMapper.selectCrdnInfo(req.getCrdnIDs()[iLoop]);
if (!crdnInfo.string("LEVY_ID").equals("")) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("감경부과 등록 중 이미 감경부과된 자료가 있습니다.");
}
Levy levy = new Levy();
levy.setSggCd(crdnInfo.string("SGG_CD")); // 시군구 코드
@ -139,28 +144,30 @@ public class LevyBean extends AbstractComponent {
retSuccess = levyMapper.insert(levy);
if (!retSuccess) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("부과 대장 등록에 실패하였습니다.");
throw new RuntimeException("감경부과 대장 등록에 실패하였습니다.");
}
// 단속상태이력(TB_CRDN_STTS_HSTRY)
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
crdnSttsHstry.setCrdnId(crdnInfo.string("CRDN_ID"));
crdnSttsHstry.setBfrSttsCd(crdnInfo.string("CRDN_STTS_CD"));
crdnSttsHstry.setBfrSttsChgDt(crdnInfo.string("CRDN_STTS_CHG_DT"));
crdnSttsHstry.setCrdnSttsCd("41");
crdnSttsHstry.setBfrSttsCd(crdnInfo.string("CRDN_STTS_CD")); //
crdnSttsHstry.setBfrSttsChgDt(crdnInfo.string("CRDN_STTS_CHG_DT")); //
crdnSttsHstry.setCrdnSttsCd("23"); // 단속상태코드(FIM010) - 감경부과
crdnSttsHstry.setTaskDtlId(levy.getLevyId());
if (crdnInfo.number("CRDN_STTS_CD").intValue() < 31 ) {
if (crdnInfo.number("CRDN_STTS_CD").intValue() >= 1 && crdnInfo.number("CRDN_STTS_CD").intValue() <= 22 ) {
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
retSuccess = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry);
} else if (crdnInfo.number("CRDN_STTS_CD").intValue() == 31) {
} else if (crdnInfo.number("CRDN_STTS_CD").intValue() == 31) { // 의견제출 접수
// 단속상태이력(TB_CRDN_STTS_HSTRY) 대장을 등록 한다.
retSuccess = crdnSttsHstryBean.create(crdnSttsHstry);
} else {
retSuccess = false;
}
if (!retSuccess) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("부과 등록 중 단속 대장의 단속상태 변경에 실패하였습니다.");
throw new RuntimeException("감경부과 등록 중 단속 대장의 단속상태 변경에 실패하였습니다.");
}
}

@ -1,4 +1,4 @@
package cokr.xit.fims.sndb;
package cokr.xit.fims.nxrp;
import cokr.xit.foundation.AbstractEntity;
import lombok.Getter;

@ -1,4 +1,4 @@
package cokr.xit.fims.sndb;
package cokr.xit.fims.nxrp;
import cokr.xit.foundation.component.QueryRequest;

@ -1,4 +1,4 @@
package cokr.xit.fims.sndb.dao;
package cokr.xit.fims.nxrp.dao;
import java.util.List;
import java.util.Map;
@ -7,8 +7,8 @@ import org.egovframe.rte.psl.dataaccess.mapper.Mapper;
import cokr.xit.foundation.component.AbstractMapper;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
/** DAO
*
@ -142,4 +142,17 @@ public interface NxrpMtchgMapper extends AbstractMapper {
return nxrpMtchg != null && deleteNxrpMtchg(params().set("nxrpMtchg", nxrpMtchg)) == 1;
}
/** ID .
* @param params
* <ul><li>"nxrpMtchg" - </li>
* <li>"currentUser" - </li>
* </ul>
* @return
*/
int deleteCrdnNxrpMtchg(Map<String, ?> params);
default boolean deleteCrdnNxrpMtchg(NxrpMtchg nxrpMtchg) {
return nxrpMtchg != null && deleteNxrpMtchg(params().set("nxrpMtchg", nxrpMtchg)) == 1;
}
}

@ -1,11 +1,11 @@
package cokr.xit.fims.sndb.service;
package cokr.xit.fims.nxrp.service;
import java.util.List;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
/** .
*

@ -1,4 +1,4 @@
package cokr.xit.fims.sndb.service.bean;
package cokr.xit.fims.nxrp.service.bean;
import java.util.List;
@ -8,11 +8,10 @@ import org.springframework.stereotype.Component;
import cokr.xit.foundation.AbstractComponent;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.dao.NxrpMtchgMapper;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
import cokr.xit.fims.sndb.SndngDtl;
import cokr.xit.fims.sndb.dao.NxrpMtchgMapper;
import cokr.xit.fims.sndb.dao.SndngMapper;
/** Bean
@ -87,7 +86,7 @@ public class NxrpMtchgBean extends AbstractComponent {
// 단속 자료 조회
DataObject crdnLevyInfo = nxrpMtchgMapper.selectCrdnLevy(req.getCrdnIDs()[iLoop]);
// 세외수입 등록 연계 호출
// 세외수입 연계 등록 서비스 호출
String linkRsltId = "0000000000";
// 세외수입 매칭 내역 정보 조회
@ -216,4 +215,28 @@ public class NxrpMtchgBean extends AbstractComponent {
return retMessage;
}
/** ID .
* @param nxrpMtchg
* @return
* <ul><li> true</li>
* <li> false</li>
* </ul>
*/
public String removeCrdnNxrpMtchg(NxrpMtchg delNxrpMtchg) {
// 변수 선언
boolean retSuccess = false; // DB 처리 결과
String retMessage = "[F] "; // 처리 결과 메시지
retSuccess = nxrpMtchgMapper.deleteCrdnNxrpMtchg(delNxrpMtchg);
if (!retSuccess) {
throw new RuntimeException("세외수입 매칭 내역 정보를 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
retMessage = "[S] 작업이 정상 처리 되었습니다.";
return retMessage;
}
}

@ -1,4 +1,4 @@
package cokr.xit.fims.sndb.service.bean;
package cokr.xit.fims.nxrp.service.bean;
import java.util.List;
@ -8,10 +8,9 @@ import org.springframework.stereotype.Service;
import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.sndb.service.NxrpMtchgService;
import cokr.xit.fims.nxrp.service.NxrpMtchgService;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
/** .
*

@ -1,15 +1,15 @@
package cokr.xit.fims.sndb.web;
package cokr.xit.fims.nxrp.web;
import javax.annotation.Resource;
import org.springframework.web.servlet.ModelAndView;
import cokr.xit.base.web.ApplicationController;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.sndb.service.NxrpMtchgService;
import cokr.xit.foundation.web.AbstractController;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.service.NxrpMtchgService;
/**
/**
*
* <p> :
*
@ -19,9 +19,9 @@ import cokr.xit.fims.sndb.service.NxrpMtchgService;
* ================================
* </pre>
*/
public class Sndb02Controller extends ApplicationController {
public class Nxrp01Controller extends AbstractController {
public static final String CLASS_URL = "/sndb/sndb02";
public static final String CLASS_URL = "/nxrp/nxrp01";
public class METHOD_URL {
public static final String
@ -148,4 +148,32 @@ public class Sndb02Controller extends ApplicationController {
.addObject("retMessage", retMessage);
}
/** (enisMtchg/enisMtchg-main) .
* {@link #getEnisMtchgList(NxrpMtchgQuery) } .
* @return /enisMtchg/enisMtchg-main
*/
// @RequestMapping(name = "세외수입 매칭 내역 메인", value = "/main.do")
// public ModelAndView main() {
// ModelAndView mav = getEnisMtchgList(new NxrpMtchgQuery().setPageNum(1));
// mav.setViewName("/enisMtchg/enisMtchg-main");
// return mav.addObject("enisMtchgList", toJson(mav.getModel().get("enisMtchgList")));
// }
/** .<br />
* {@link EnisMtchgService#getEnisMtchgList(NxrpMtchgQuery)}
* @param req
* @return jsonView
* <pre><code> {
* "enisMtchgList": [ ]
* "enisMtchgStart":
* "enisMtchgFetch":
* "enisMtchgTotal":
* }</code></pre>
*/
// @RequestMapping(name = "세외수입 매칭 내역 조회", value = "/list.do")
// public ModelAndView getEnisMtchgList(NxrpMtchgQuery req) {
// List<?> result = enisMtchgService.getEnisMtchgList(setFetchSize(req));
// return setCollectionInfo(new ModelAndView("jsonView"), result, "enisMtchg");
// }
}

@ -22,6 +22,11 @@ public class SndngDtl extends AbstractEntity {
*/
private String sndngId;
/**
* ID
*/
private String svbtcId;
/**
* ID
*/
@ -32,16 +37,6 @@ public class SndngDtl extends AbstractEntity {
*/
private String levyId;
/**
* ID
*/
private String svbtcId;
/**
*
*/
private String sndngSeCd;
/**
*
*/
@ -52,11 +47,6 @@ public class SndngDtl extends AbstractEntity {
*/
private String crdnDt;
/**
*
*/
private String crdnStdgNm;
/**
*
*/
@ -92,21 +82,6 @@ public class SndngDtl extends AbstractEntity {
*/
private Integer ffnlgAmt;
/**
*
*/
private Integer pcptax;
/**
*
*/
private Integer adamt;
/**
*
*/
private Integer sumAmt;
/**
*
*/
@ -217,6 +192,56 @@ public class SndngDtl extends AbstractEntity {
*/
private String vrActno;
/**
* ID
*/
private String mtchgId;
/**
*
*/
private String sndngSeCd;
/**
*
*/
private String sndngEndYmd;
/**
*
*/
private String crdnStdgNm;
/**
*
*/
private String levyYmd;
/**
*
*/
private String dudtAftrYmd;
/**
*
*/
private Integer pcptax;
/**
*
*/
private Integer adamt;
/**
*
*/
private Integer sumAmt;
/**
*
*/
private Integer dudtAftrAmt;
/**
* 2
*/
@ -322,4 +347,9 @@ public class SndngDtl extends AbstractEntity {
*/
private String delYn;
/**
*
*/
private String delRsn;
}

@ -14,13 +14,15 @@ import cokr.xit.fims.cmmn.CrdnSttsHstry;
import cokr.xit.fims.cmmn.VltnInfoQuery;
import cokr.xit.fims.cmmn.service.bean.CrdnSttsHstryBean;
import cokr.xit.fims.cmmn.service.bean.VltnInfoBean;
import cokr.xit.fims.enis.EnisMtchg;
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.levy.Levy;
import cokr.xit.fims.levy.service.bean.LevyBean;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.dao.NxrpMtchgMapper;
import cokr.xit.fims.nxrp.service.bean.NxrpMtchgBean;
import cokr.xit.fims.sndb.dao.SndngMapper;
import cokr.xit.fims.sndb.dao.SvbtcMapper;
import cokr.xit.fims.sndb.Sndng;
@ -49,6 +51,10 @@ public class SndngBean extends AbstractComponent {
@Resource(name = "svbtcMapper")
private SvbtcMapper svbtcMapper;
/** 세외수입 매칭 내역 정보 DAO */
@Resource(name = "nxrpMtchgMapper")
private NxrpMtchgMapper nxrpMtchgMapper;
/** 단속 상태 이력 정보 Bean */
@Resource(name = "crdnSttsHstryBean")
private CrdnSttsHstryBean crdnSttsHstryBean;
@ -61,10 +67,6 @@ public class SndngBean extends AbstractComponent {
@Resource(name = "levyBean")
private LevyBean levyBean;
/** 세외수입 매칭 내역 정보 Bean */
@Resource(name = "enisMtchgBean")
private EnisMtchgBean enisMtchgBean;
/** 전자우편 접수 등록 정보 Bean */
@Resource(name = "epostRcptRegBean")
private EpostRcptRegBean epostRcptRegBean;
@ -293,31 +295,40 @@ public class SndngBean extends AbstractComponent {
// 사전통지 발송 등록시 세외수입 연계 자료 등록 ///////////////////////////////////
if (sndng.getSndngSeCd().equals("01") || sndng.getSndngSeCd().equals("02")) {
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
EnisMtchg enisMtchg = new EnisMtchg();
// 세외수입 매핑 내역 정보 조회
DataObject infoEnisMtchg = enisMtchgBean.getEnisMtchgInfo(sndng.getCrdnIDs()[iLoop]);
DataObject nxrpMtchgInfo = nxrpMtchgMapper.selectNxrpMtchgInfo(new NxrpMtchgQuery().setCrdnId(crdnPayerInfo.string("CRDN_ID"))
.setDelYn("N"));
// 기존에 등록된 자료가 있다면 삭제 처리
if (infoEnisMtchg != null) {
enisMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
if (nxrpMtchgInfo != null) {
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
NxrpMtchg delNxrpMtchg = new NxrpMtchg();
delNxrpMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
enisMtchgBean.removeEnisMtchg(enisMtchg);
// 세외수입 매칭 내역을 등록
retSuccess = nxrpMtchgMapper.deleteCrdnNxrpMtchg(delNxrpMtchg);
if (!retSuccess) {
throw new RuntimeException("발송 대장 등록 중 세외수입 매칭 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
enisMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID")); // 단속 ID
enisMtchg.setCrdnDt(crdnPayerInfo.string("CRDN_YMD_TM_MASK")); // 단속 일시
enisMtchg.setStdgNm(crdnPayerInfo.string("CRDN_STDG_NM")); // 법정동 명
enisMtchg.setCrdnPlc(crdnPayerInfo.string("CRDN_PLC")); // 단속 장소
enisMtchg.setLevyAmt(pcptax); // 부과 금액
enisMtchg.setAdtnAmt(adamt); // 가산 금액
enisMtchg.setSumAmt(sumAmt); // 합계 금액
enisMtchg.setPrcsSttsCd("01"); // 처리 상태 코드
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
NxrpMtchg nxrpMtchg = new NxrpMtchg();
nxrpMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID")); // 단속 ID
nxrpMtchg.setCrdnDt(crdnPayerInfo.string("CRDN_YMD_TM_MASK")); // 단속 일시
nxrpMtchg.setStdgNm(crdnPayerInfo.string("CRDN_STDG_NM")); // 법정동 명
nxrpMtchg.setCrdnPlc(crdnPayerInfo.string("CRDN_PLC")); // 단속 장소
nxrpMtchg.setLevyAmt(pcptax); // 부과 금액
nxrpMtchg.setAdtnAmt(adamt); // 가산 금액
nxrpMtchg.setSumAmt(sumAmt); // 합계 금액
nxrpMtchg.setPrcsSttsCd("01"); // 처리 상태 코드
// 세외수입 매칭 내역을 등록
retSuccess = enisMtchgBean.createEnisMtchg(enisMtchg);
retSuccess = nxrpMtchgMapper.insert(nxrpMtchg);
if (!retSuccess) {
throw new RuntimeException("부과제외 등록 중 단속 대장의 단속상태 변경에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
throw new RuntimeException("발송 대장 등록 중 세외수입 매칭 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
@ -494,31 +505,42 @@ public class SndngBean extends AbstractComponent {
// 사전통지 발송 등록시 세외수입 연계 자료 등록 ///////////////////////////////////
if (sndng.getSndngSeCd().equals("02")) {
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
EnisMtchg enisMtchg = new EnisMtchg();
// 세외수입 매핑 내역 정보 조회
DataObject infoEnisMtchg = enisMtchgBean.getEnisMtchgInfo(sndng.getCrdnIDs()[iLoop]);
DataObject nxrpMtchgInfo = nxrpMtchgMapper.selectNxrpMtchgInfo(new NxrpMtchgQuery().setCrdnId(crdnPayerInfo.string("CRDN_ID"))
.setDelYn("N"));
// 기존에 등록된 자료가 있다면 삭제 처리
if (infoEnisMtchg != null) {
enisMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
if (nxrpMtchgInfo != null) {
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
NxrpMtchg delNxrpMtchg = new NxrpMtchg();
delNxrpMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
enisMtchgBean.removeEnisMtchg(enisMtchg);
// 세외수입 매칭 내역을 등록
retSuccess = nxrpMtchgMapper.deleteCrdnNxrpMtchg(delNxrpMtchg);
if (!retSuccess) {
throw new RuntimeException("발송 대장 등록 중 세외수입 매칭 삭제에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}
enisMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID")); // 단속 ID
enisMtchg.setCrdnDt(crdnPayerInfo.string("CRDN_YMD_TM_MASK")); // 단속 일시
enisMtchg.setStdgNm(crdnPayerInfo.string("CRDN_STDG_NM")); // 법정동 명
enisMtchg.setCrdnPlc(crdnPayerInfo.string("CRDN_PLC")); // 단속 장소
enisMtchg.setLevyAmt(pcptax); // 부과 금액
enisMtchg.setAdtnAmt(adamt); // 가산 금액
enisMtchg.setSumAmt(sumAmt); // 합계 금액
enisMtchg.setPrcsSttsCd("01"); // 처리 상태 코드
// 세외수입 매칭 내역(TB_ENIS_MTCHG)
NxrpMtchg nxrpMtchg = new NxrpMtchg();
nxrpMtchg.setCrdnId(crdnPayerInfo.string("CRDN_ID")); // 단속 ID
nxrpMtchg.setCrdnDt(crdnPayerInfo.string("CRDN_YMD_TM_MASK")); // 단속 일시
nxrpMtchg.setStdgNm(crdnPayerInfo.string("CRDN_STDG_NM")); // 법정동 명
nxrpMtchg.setCrdnPlc(crdnPayerInfo.string("CRDN_PLC")); // 단속 장소
nxrpMtchg.setLevyAmt(pcptax); // 부과 금액
nxrpMtchg.setAdtnAmt(adamt); // 가산 금액
nxrpMtchg.setSumAmt(sumAmt); // 합계 금액
nxrpMtchg.setPrcsSttsCd("01"); // 처리 상태 코드
// 세외수입 매칭 내역을 등록
retSuccess = enisMtchgBean.createEnisMtchg(enisMtchg);
retSuccess = nxrpMtchgMapper.insert(nxrpMtchg);
if (!retSuccess) {
throw new RuntimeException("부과제외 등록 중 단속 대장의 단속상태 변경에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
throw new RuntimeException("발송 대장 등록 중 세외수입 매칭 등록에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
}
}

@ -16,10 +16,11 @@ import cokr.xit.fims.excl.LevyExcl;
import cokr.xit.fims.excl.OpnnSbmsn;
import cokr.xit.fims.levy.LevyQuery;
import cokr.xit.fims.levy.Rduct;
import cokr.xit.fims.nxrp.NxrpMtchg;
import cokr.xit.fims.nxrp.NxrpMtchgQuery;
import cokr.xit.fims.nxrp.web.Nxrp01Controller;
import cokr.xit.fims.payer.Payer;
import cokr.xit.fims.payer.PayerQuery;
import cokr.xit.fims.sndb.NxrpMtchg;
import cokr.xit.fims.sndb.NxrpMtchgQuery;
import cokr.xit.fims.sndb.SndbQuery;
import cokr.xit.fims.sndb.Sndng;
import cokr.xit.fims.sndb.SndngDtl;
@ -686,8 +687,8 @@ public class DpvController {
}
@Controller
@RequestMapping(name="장애인과태료업무 세외수입 매핑", value=CLASS_URL+Sndb02Controller.CLASS_URL)
class Sndb02Controller extends cokr.xit.fims.sndb.web.Sndb02Controller {
@RequestMapping(name="장애인과태료업무 세외수입 매핑", value=CLASS_URL+Nxrp01Controller.CLASS_URL)
class Sndb02Controller extends cokr.xit.fims.nxrp.web.Nxrp01Controller {
@Override
@RequestMapping(name="세외수입 등록 연계 및 매핑 등록", value=METHOD_URL.createNonTaxReceiptLink)

@ -1,285 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.enis.dao.EnisMtchgMapper">
<!-- 세외수입 매칭 내역 정보 매퍼
========== 변경 이력 ==========
2023-10-04 JoJH 최초 작성
============================ -->
<resultMap id="enisMtchgRow" type="cokr.xit.fims.enis.EnisMtchg">
<result property="mtchgId" column="MTCHG_ID" /> <!-- 매칭 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="crdnDt" column="CRDN_DT" /> <!-- 단속 일시 -->
<result property="stdgNm" column="STDG_NM" /> <!-- 법정동 명 -->
<result property="crdnPlc" column="CRDN_PLC" /> <!-- 단속 장소 -->
<result property="lvyKey" column="LVY_KEY" /> <!-- 부과 키 -->
<result property="acntgYr" column="ACNTG_YR" /> <!-- 회계 연도 -->
<result property="levyNo" column="LEVY_NO" /> <!-- 부과 번호 -->
<result property="levyAmt" column="LEVY_AMT" /> <!-- 부과 금액 -->
<result property="adtnAmt" column="ADTN_AMT" /> <!-- 가산 금액 -->
<result property="sumAmt" column="SUM_AMT" /> <!-- 합계 금액 -->
<result property="prcsSttsCd" column="PRCS_STTS_CD" /> <!-- 처리 상태 코드 -->
<result property="epayno" column="EPAYNO" /> <!-- 전자납부번호 -->
<result property="bankNm1" column="BANK_NM1" /> <!-- 은행 명1 -->
<result property="vractno1" column="VRACTNO1" /> <!-- 가상계좌번호1 -->
<result property="bankNm2" column="BANK_NM2" /> <!-- 은행 명2 -->
<result property="vractno2" column="VRACTNO2" /> <!-- 가상계좌번호2 -->
<result property="bankNm3" column="BANK_NM3" /> <!-- 은행 명3 -->
<result property="vractno3" column="VRACTNO3" /> <!-- 가상계좌번호3 -->
<result property="bankNm4" column="BANK_NM4" /> <!-- 은행 명4 -->
<result property="vractno4" column="VRACTNO4" /> <!-- 가상계좌번호4 -->
<result property="bankNm5" column="BANK_NM5" /> <!-- 은행 명5 -->
<result property="vractno5" column="VRACTNO5" /> <!-- 가상계좌번호5 -->
<result property="bankNm6" column="BANK_NM6" /> <!-- 은행 명6 -->
<result property="vractno6" column="VRACTNO6" /> <!-- 가상계좌번호6 -->
<result property="bankNm7" column="BANK_NM7" /> <!-- 은행 명7 -->
<result property="vractno7" column="VRACTNO7" /> <!-- 가상계좌번호7 -->
<result property="bankNm8" column="BANK_NM8" /> <!-- 은행 명8 -->
<result property="vractno8" column="VRACTNO8" /> <!-- 가상계좌번호8 -->
<result property="bankNm9" column="BANK_NM9" /> <!-- 은행 명9 -->
<result property="vractno9" column="VRACTNO9" /> <!-- 가상계좌번호9 -->
<result property="bankNm10" column="BANK_NM10" /> <!-- 은행 명10 -->
<result property="vractno10" column="VRACTNO10" /> <!-- 가상계좌번호10 -->
<result property="bankNm11" column="BANK_NM11" /> <!-- 은행 명11 -->
<result property="vractno11" column="VRACTNO11" /> <!-- 가상계좌번호11 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="delDt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="dltr" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<sql id="select">
SELECT EM.MTCHG_ID <!-- 매칭 ID -->
, EM.CRDN_ID <!-- 단속 ID -->
, EM.CRDN_DT <!-- 단속 일시 -->
, EM.STDG_NM <!-- 법정동 명 -->
, EM.CRDN_PLC <!-- 단속 장소 -->
, EM.LVY_KEY <!-- 부과 키 -->
, EM.ACNTG_YR <!-- 회계 연도 -->
, EM.LEVY_NO <!-- 부과 번호 -->
, EM.LEVY_AMT <!-- 부과 금액 -->
, EM.ADTN_AMT <!-- 가산 금액 -->
, EM.SUM_AMT <!-- 합계 금액 -->
, EM.PRCS_STTS_CD <!-- 처리 상태 코드 -->
, EM.EPAYNO <!-- 전자납부번호 -->
, EM.BANK_NM1 <!-- 은행 명1 -->
, EM.VRACTNO1 <!-- 가상계좌번호1 -->
, EM.BANK_NM2 <!-- 은행 명2 -->
, EM.VRACTNO2 <!-- 가상계좌번호2 -->
, EM.BANK_NM3 <!-- 은행 명3 -->
, EM.VRACTNO3 <!-- 가상계좌번호3 -->
, EM.BANK_NM4 <!-- 은행 명4 -->
, EM.VRACTNO4 <!-- 가상계좌번호4 -->
, EM.BANK_NM5 <!-- 은행 명5 -->
, EM.VRACTNO5 <!-- 가상계좌번호5 -->
, EM.BANK_NM6 <!-- 은행 명6 -->
, EM.VRACTNO6 <!-- 가상계좌번호6 -->
, EM.BANK_NM7 <!-- 은행 명7 -->
, EM.VRACTNO7 <!-- 가상계좌번호7 -->
, EM.BANK_NM8 <!-- 은행 명8 -->
, EM.VRACTNO8 <!-- 가상계좌번호8 -->
, EM.BANK_NM9 <!-- 은행 명9 -->
, EM.VRACTNO9 <!-- 가상계좌번호9 -->
, EM.BANK_NM10 <!-- 은행 명10 -->
, EM.VRACTNO10 <!-- 가상계좌번호10 -->
, EM.BANK_NM11 <!-- 은행 명11 -->
, EM.VRACTNO11 <!-- 가상계좌번호11 -->
, EM.REG_DT <!-- 등록 일시 -->
, EM.RGTR <!-- 등록자 -->
, EM.MDFCN_DT <!-- 수정 일시 -->
, EM.MDFR <!-- 수정자 -->
FROM TB_ENIS_MTCHG EM
</sql>
<select id="selectEnisMtchgList" parameterType="map" resultType="dataobject">/* 세외수입 매칭 내역 목록 조회(enisMtchgMapper.selectEnisMtchgList) */
<include refid="utility.paging-prefix" />
<include refid="select" />
<where></where>
<include refid="utility.orderBy" />
<include refid="utility.paging-suffix" />
</select>
<select id="selectEnisMtchgs" parameterType="map" resultType="dataobject">/* 세외수입 매칭 내역 객체 가져오기(enisMtchgMapper.selectEnisMtchgs) */
<include refid="select" />
<where>
<if test="mtchgIDs != null">
AND EM.MTCHG_ID IN (
<foreach collection="mtchgIDs" item="mtchgId" separator=","> #{mtchgId} </foreach>
)
</if>
<if test="mtchgId != null">
AND EM.MTCHG_ID = #{mtchgId} <!-- 매핑 ID -->
</if>
<if test="crdnId != null">
AND EM.CRDN_ID = #{crdnId} <!-- 단속 ID -->
</if>
<choose>
<when test="delYn != null">
AND EM.DEL_YN = #{delYn} <!-- 삭제 여부 -->
</when>
<otherwise>
AND EM.DEL_YN = 'N' <!-- 삭제 여부 -->
</otherwise>
</choose>
</where>
<include refid="utility.orderBy" />
</select>
<insert id="insertEnisMtchg" parameterType="map">/* 세외수입 매칭 내역 등록(enisMtchgMapper.insertEnisMtchg) */
<selectKey resultType="string" keyProperty="enisMtchg.mtchgId" keyColumn="NEW_ID" order="BEFORE">
SELECT CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), LPAD(CAST(IFNULL(MAX(SUBSTRING(MTCHG_ID, 5)) + 1, 1) AS INT), 16, '0')) AS NEW_ID
FROM TB_ENIS_MTCHG
WHERE MTCHG_ID LIKE CONCAT(DATE_FORMAT(CURRENT_DATE, '%Y'), '%')
</selectKey>
INSERT
INTO TB_ENIS_MTCHG (
MTCHG_ID <!-- 매칭 ID -->
, CRDN_ID <!-- 단속 ID -->
, CRDN_DT <!-- 단속 일시 -->
, STDG_NM <!-- 법정동 명 -->
, CRDN_PLC <!-- 단속 장소 -->
, LVY_KEY <!-- 부과 키 -->
, ACNTG_YR <!-- 회계 연도 -->
, LEVY_NO <!-- 부과 번호 -->
, LEVY_AMT <!-- 부과 금액 -->
, ADTN_AMT <!-- 가산 금액 -->
, SUM_AMT <!-- 합계 금액 -->
, PRCS_STTS_CD <!-- 처리 상태 코드 -->
, EPAYNO <!-- 전자납부번호 -->
, BANK_NM1 <!-- 은행 명1 -->
, VRACTNO1 <!-- 가상계좌번호1 -->
, BANK_NM2 <!-- 은행 명2 -->
, VRACTNO2 <!-- 가상계좌번호2 -->
, BANK_NM3 <!-- 은행 명3 -->
, VRACTNO3 <!-- 가상계좌번호3 -->
, BANK_NM4 <!-- 은행 명4 -->
, VRACTNO4 <!-- 가상계좌번호4 -->
, BANK_NM5 <!-- 은행 명5 -->
, VRACTNO5 <!-- 가상계좌번호5 -->
, BANK_NM6 <!-- 은행 명6 -->
, VRACTNO6 <!-- 가상계좌번호6 -->
, BANK_NM7 <!-- 은행 명7 -->
, VRACTNO7 <!-- 가상계좌번호7 -->
, BANK_NM8 <!-- 은행 명8 -->
, VRACTNO8 <!-- 가상계좌번호8 -->
, BANK_NM9 <!-- 은행 명9 -->
, VRACTNO9 <!-- 가상계좌번호9 -->
, BANK_NM10 <!-- 은행 명10 -->
, VRACTNO10 <!-- 가상계좌번호10 -->
, BANK_NM11 <!-- 은행 명11 -->
, VRACTNO11 <!-- 가상계좌번호11 -->
, DEL_YN <!-- 삭제 여부 -->
, REG_DT <!-- 등록 일시 -->
, RGTR <!-- 등록자 -->
, MDFCN_DT <!-- 수정 일시 -->
, MDFR <!-- 수정자 -->
)
VALUES (
#{enisMtchg.mtchgId} <!-- 매칭 ID -->
, #{enisMtchg.crdnId} <!-- 단속 ID -->
, #{enisMtchg.crdnDt} <!-- 단속 일시 -->
, #{enisMtchg.stdgNm} <!-- 법정동 명 -->
, #{enisMtchg.crdnPlc} <!-- 단속 장소 -->
, #{enisMtchg.lvyKey} <!-- 부과 키 -->
, #{enisMtchg.acntgYr} <!-- 회계 연도 -->
, #{enisMtchg.levyNo} <!-- 부과 번호 -->
, #{enisMtchg.levyAmt} <!-- 부과 금액 -->
, #{enisMtchg.adtnAmt} <!-- 가산 금액 -->
, #{enisMtchg.sumAmt} <!-- 합계 금액 -->
, #{enisMtchg.prcsSttsCd} <!-- 처리 상태 코드 -->
, #{enisMtchg.epayno} <!-- 전자납부번호 -->
, #{enisMtchg.bankNm1} <!-- 은행 명1 -->
, #{enisMtchg.vractno1} <!-- 가상계좌번호1 -->
, #{enisMtchg.bankNm2} <!-- 은행 명2 -->
, #{enisMtchg.vractno2} <!-- 가상계좌번호2 -->
, #{enisMtchg.bankNm3} <!-- 은행 명3 -->
, #{enisMtchg.vractno3} <!-- 가상계좌번호3 -->
, #{enisMtchg.bankNm4} <!-- 은행 명4 -->
, #{enisMtchg.vractno4} <!-- 가상계좌번호4 -->
, #{enisMtchg.bankNm5} <!-- 은행 명5 -->
, #{enisMtchg.vractno5} <!-- 가상계좌번호5 -->
, #{enisMtchg.bankNm6} <!-- 은행 명6 -->
, #{enisMtchg.vractno6} <!-- 가상계좌번호6 -->
, #{enisMtchg.bankNm7} <!-- 은행 명7 -->
, #{enisMtchg.vractno7} <!-- 가상계좌번호7 -->
, #{enisMtchg.bankNm8} <!-- 은행 명8 -->
, #{enisMtchg.vractno8} <!-- 가상계좌번호8 -->
, #{enisMtchg.bankNm9} <!-- 은행 명9 -->
, #{enisMtchg.vractno9} <!-- 가상계좌번호9 -->
, #{enisMtchg.bankNm10} <!-- 은행 명10 -->
, #{enisMtchg.vractno10} <!-- 가상계좌번호10 -->
, #{enisMtchg.bankNm11} <!-- 은행 명11 -->
, #{enisMtchg.vractno11} <!-- 가상계좌번호11 -->
, 'N' <!-- 삭제 여부 -->
, <include refid="utility.now" /> <!-- 등록 일시 -->
, #{enisMtchg.createdBy} <!-- 등록자 -->
, <include refid="utility.now" /> <!-- 수정 일시 -->
, #{enisMtchg.modifiedBy} <!-- 수정자 -->
)
</insert>
<update id="updateEnisMtchg" parameterType="map">/* 세외수입 매칭 내역 수정(enisMtchgMapper.updateEnisMtchg) */
UPDATE TB_ENIS_MTCHG
SET CRDN_DT = #{enisMtchg.crdnDt} <!-- 단속 일시 -->
, STDG_NM = #{enisMtchg.stdgNm} <!-- 법정동 명 -->
, CRDN_PLC = #{enisMtchg.crdnPlc} <!-- 단속 장소 -->
, LVY_KEY = #{enisMtchg.lvyKey} <!-- 부과 키 -->
, ACNTG_YR = #{enisMtchg.acntgYr} <!-- 회계 연도 -->
, LEVY_NO = #{enisMtchg.levyNo} <!-- 부과 번호 -->
, LEVY_AMT = #{enisMtchg.levyAmt} <!-- 부과 금액 -->
, ADTN_AMT = #{enisMtchg.adtnAmt} <!-- 가산 금액 -->
, SUM_AMT = #{enisMtchg.sumAmt} <!-- 합계 금액 -->
, PRCS_STTS_CD = #{enisMtchg.prcsSttsCd} <!-- 처리 상태 코드 -->
, EPAYNO = #{enisMtchg.epayno} <!-- 전자납부번호 -->
, BANK_NM1 = #{enisMtchg.bankNm1} <!-- 은행 명1 -->
, VRACTNO1 = #{enisMtchg.vractno1} <!-- 가상계좌번호1 -->
, BANK_NM2 = #{enisMtchg.bankNm2} <!-- 은행 명2 -->
, VRACTNO2 = #{enisMtchg.vractno2} <!-- 가상계좌번호2 -->
, BANK_NM3 = #{enisMtchg.bankNm3} <!-- 은행 명3 -->
, VRACTNO3 = #{enisMtchg.vractno3} <!-- 가상계좌번호3 -->
, BANK_NM4 = #{enisMtchg.bankNm4} <!-- 은행 명4 -->
, VRACTNO4 = #{enisMtchg.vractno4} <!-- 가상계좌번호4 -->
, BANK_NM5 = #{enisMtchg.bankNm5} <!-- 은행 명5 -->
, VRACTNO5 = #{enisMtchg.vractno5} <!-- 가상계좌번호5 -->
, BANK_NM6 = #{enisMtchg.bankNm6} <!-- 은행 명6 -->
, VRACTNO6 = #{enisMtchg.vractno6} <!-- 가상계좌번호6 -->
, BANK_NM7 = #{enisMtchg.bankNm7} <!-- 은행 명7 -->
, VRACTNO7 = #{enisMtchg.vractno7} <!-- 가상계좌번호7 -->
, BANK_NM8 = #{enisMtchg.bankNm8} <!-- 은행 명8 -->
, VRACTNO8 = #{enisMtchg.vractno8} <!-- 가상계좌번호8 -->
, BANK_NM9 = #{enisMtchg.bankNm9} <!-- 은행 명9 -->
, VRACTNO9 = #{enisMtchg.vractno9} <!-- 가상계좌번호9 -->
, BANK_NM10 = #{enisMtchg.bankNm10} <!-- 은행 명10 -->
, VRACTNO10 = #{enisMtchg.vractno10} <!-- 가상계좌번호10 -->
, BANK_NM11 = #{enisMtchg.bankNm11} <!-- 은행 명11 -->
, VRACTNO11 = #{enisMtchg.vractno11} <!-- 가상계좌번호11 -->
, MDFCN_DT = <include refid="utility.now" /> <!-- 수정 일시 -->
, MDFR = #{currentUser.id} <!-- 수정자 -->
WHERE MTCHG_ID = #{enisMtchg.mtchgId} <!-- 매핑 ID -->
AND CRDN_ID = #{enisMtchg.crdnId} <!-- 단속 ID -->
AMD DEL_YN = 'N'
</update>
<update id="deleteEnisMtchg" parameterType="map">/* 세외수입 매칭 내역 삭제(enisMtchgMapper.deleteEnisMtchg) */
UPDATE TB_ENIS_MTCHG
SET DEL_YN = 'Y' <!-- 삭제 여부 -->
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{enisMtchg.modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{enisMtchg.delRsn} <!-- 삭제 사유 -->
<choose>
<when test="enisMtchg.crdnId != null">
WHERE CRDN_ID = #{enisMtchg.crdnId} <!-- 단속 ID -->
</when>
<otherwise>
WHERE MTCHG_ID = #{enisMtchg.mtchgId} <!-- 매핑 ID -->
</otherwise>
</choose>
AND DEL_YN = 'N'
</update>
</mapper>

@ -650,9 +650,11 @@
, VI.TXITM_CD
, VI.OPER_ITEM_CD
, VI.SPCL_BIZ_CD
, L.LEVY_ID <!-- 부과 ID -->
, <include refid="utility.today" /> AS TODAY <!-- 오늘 일자 -->
FROM TB_CRDN C
INNER JOIN TB_VLTN_INFO VI ON (C.VLTN_ID = VI.VLTN_ID AND C.SGG_CD = VI.SGG_CD AND C.TASK_SE_CD = VI.TASK_SE_CD)
LEFT OUTER JOIN TB_LEVY L ON (C.CRDN_ID = L.CRDN_ID AND DEL_YN = 'N')
WHERE C.CRDN_ID = #{crdnId} <!-- 단속 ID -->
AND C.DEL_YN = 'N'
</select>

@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cokr.xit.fims.sndb.dao.NxrpMtchgMapper">
<mapper namespace="cokr.xit.fims.nxrp.dao.NxrpMtchgMapper">
<!-- 세외수입 매칭 내역 정보 매퍼
========== 변경 이력 ==========
2023-11-16 JoJH 최초 작성
============================ -->
<resultMap id="nxrpMtchgRow" type="cokr.xit.fims.sndb.NxrpMtchg"> <!-- TB_NXRP_MTCHG 세외수입 매칭 내역 -->
<resultMap id="nxrpMtchgRow" type="cokr.xit.fims.nxrp.NxrpMtchg"> <!-- TB_NXRP_MTCHG 세외수입 매칭 내역 -->
<result property="mtchgId" column="MTCHG_ID" /> <!-- 매칭 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="crdnDt" column="CRDN_DT" /> <!-- 단속 일시 -->
@ -351,4 +351,14 @@
AND DEL_YN = 'N'
</update>
<update id="deleteCrdnNxrpMtchg" parameterType="map">/* 단속 ID로 세외수입 매칭 내역 삭제(nxrpMtchgMapper.deleteCrdnNxrpMtchg) */
UPDATE TB_NXRP_MTCHG
SET DEL_YN = 'Y' <!-- 삭제 여부 -->
, DEL_DT = <include refid="utility.now" /> <!-- 삭제 일시 -->
, DLTR = #{nxrpMtchg.modifiedBy} <!-- 삭제자 -->
, DEL_RSN = #{nxrpMtchg.delRsn} <!-- 삭제 사유 -->
WHERE CRDN_ID = #{nxrpMtchg.crdnId}
AND DEL_YN = 'N'
</update>
</mapper>

@ -39,13 +39,16 @@
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
<resultMap id="sndngDtlRow" type="cokr.xit.fims.sndb.SndngDtl"> <!-- TB_SNDNG_DTL 발송 상세 대장 -->
<resultMap id="sndngDtlRow" type="cokr.xit.fims.sndb.SndngDtl"> <!-- 발송 상세 -->
<result property="sndngDtlId" column="SNDNG_DTL_ID" /> <!-- 발송 상세 ID -->
<result property="sndngId" column="SNDNG_ID" /> <!-- 발송 ID -->
<result property="svbtcId" column="SVBTC_ID" /> <!-- 공시송달 ID -->
<result property="crdnId" column="CRDN_ID" /> <!-- 단속 ID -->
<result property="levyId" column="LEVY_ID" /> <!-- 부과 ID -->
<result property="svbtcId" column="SVBTC_ID" /> <!-- 공시송달 ID -->
<result property="mtchgId" column="MTCHG_ID" /> <!-- 매칭 ID -->
<result property="sndngSeCd" column="SNDNG_SE_CD" /> <!-- 발송 구분 코드 -->
<result property="sndngYmd" column="SNDNG_YMD" /> <!-- 발송 일자 -->
<result property="sndngEndYmd" column="SNDNG_END_YMD" /> <!-- 발송 종료 일자 -->
<result property="vhrno" column="VHRNO" /> <!-- 차량번호 -->
<result property="crdnDt" column="CRDN_DT" /> <!-- 단속 일시 -->
<result property="crdnStdgNm" column="CRDN_STDG_NM" /> <!-- 단속 법정동 명 -->
@ -53,12 +56,14 @@
<result property="levKey" column="LEV_KEY" /> <!-- 세외수입 부과키 -->
<result property="fyr" column="FYR" /> <!-- 회계연도 -->
<result property="levyNo" column="LEVY_NO" /> <!-- 부과 번호 -->
<result property="sndngYmd" column="SNDNG_YMD" /> <!-- 발송 일자 -->
<result property="levyYmd" column="LEVY_YMD" /> <!-- 부과 일자 -->
<result property="dudtYmd" column="DUDT_YMD" /> <!-- 납기 일자 -->
<result property="dudtAftrYmd" column="DUDT_AFTR_YMD" /> <!-- 납기 후 일자 -->
<result property="ffnlgAmt" column="FFNLG_AMT" /> <!-- 과태료 금액 -->
<result property="levyPcptax" column="LEVY_PCPTAX" /> <!-- 부과 본세 -->
<result property="levyAdamt" column="LEVY_ADAMT" /> <!-- 부과 가산금 -->
<result property="levySumAmt" column="LEVY_SUM_AMT" /> <!-- 부과 합계 금액 -->
<result property="pcptax" column="PCPTAX" /> <!-- 본세 -->
<result property="adamt" column="ADAMT" /> <!-- 가산금 -->
<result property="sumAmt" column="SUM_AMT" /> <!-- 합계 금액 -->
<result property="dudtAftrAmt" column="DUDT_AFTR_AMT" /> <!-- 납기 후 금액 -->
<result property="rtpyrNm" column="RTPYR_NM" /> <!-- 납부자 명 -->
<result property="rtpyrNo" column="RTPYR_NO" /> <!-- 납부자 번호 -->
<result property="rtpyrAddr" column="RTPYR_ADDR" /> <!-- 납부자 주소 -->
@ -81,33 +86,33 @@
<result property="epayno" column="EPAYNO" /> <!-- 전자납부번호 -->
<result property="bankNm" column="BANK_NM" /> <!-- 은행 명 -->
<result property="vrActno" column="VR_ACTNO" /> <!-- 가상 계좌번호 -->
<result property="bankNm2" column="BANK_NM_2" /> <!-- 은행 명 2 -->
<result property="vrActno2" column="VR_ACTNO_2" /> <!-- 가상 계좌번호 2 -->
<result property="bankNm3" column="BANK_NM_3" /> <!-- 은행 명 3 -->
<result property="vrActno3" column="VR_ACTNO_3" /> <!-- 가상 계좌번호 3 -->
<result property="bankNm4" column="BANK_NM_4" /> <!-- 은행 명 4 -->
<result property="vrActno4" column="VR_ACTNO_4" /> <!-- 가상 계좌번호 4 -->
<result property="bankNm5" column="BANK_NM_5" /> <!-- 은행 명 5 -->
<result property="vrActno5" column="VR_ACTNO_5" /> <!-- 가상 계좌번호 5 -->
<result property="bankNm6" column="BANK_NM_6" /> <!-- 은행 명 6 -->
<result property="vrActno6" column="VR_ACTNO_6" /> <!-- 가상 계좌번호 6 -->
<result property="bankNm7" column="BANK_NM_7" /> <!-- 은행 명 7 -->
<result property="vrActno7" column="VR_ACTNO_7" /> <!-- 가상 계좌번호 7 -->
<result property="bankNm8" column="BANK_NM_8" /> <!-- 은행 명 8 -->
<result property="vrActno8" column="VR_ACTNO_8" /> <!-- 가상 계좌번호 8 -->
<result property="bankNm9" column="BANK_NM_9" /> <!-- 은행 명 9 -->
<result property="vrActno9" column="VR_ACTNO_9" /> <!-- 가상 계좌번호 9 -->
<result property="bankNm10" column="BANK_NM_10" /> <!-- 은행 명 10 -->
<result property="vrActno10" column="VR_ACTNO_10" /> <!-- 가상 계좌번호 10 -->
<result property="bankNm11" column="BANK_NM_11" /> <!-- 은행 명 11 -->
<result property="vrActno11" column="VR_ACTNO_11" /> <!-- 가상 계좌번호 11 -->
<result property="bankNm2" column="BANK_NM2" /> <!-- 은행 명2 -->
<result property="vrActno2" column="VR_ACTNO2" /> <!-- 가상 계좌번호2 -->
<result property="bankNm3" column="BANK_NM3" /> <!-- 은행 명3 -->
<result property="vrActno3" column="VR_ACTNO3" /> <!-- 가상 계좌번호3 -->
<result property="bankNm4" column="BANK_NM4" /> <!-- 은행 명4 -->
<result property="vrActno4" column="VR_ACTNO4" /> <!-- 가상 계좌번호4 -->
<result property="bankNm5" column="BANK_NM5" /> <!-- 은행 명5 -->
<result property="vrActno5" column="VR_ACTNO5" /> <!-- 가상 계좌번호5 -->
<result property="bankNm6" column="BANK_NM6" /> <!-- 은행 명6 -->
<result property="vrActno6" column="VR_ACTNO6" /> <!-- 가상 계좌번호6 -->
<result property="bankNm7" column="BANK_NM7" /> <!-- 은행 명7 -->
<result property="vrActno7" column="VR_ACTNO7" /> <!-- 가상 계좌번호7 -->
<result property="bankNm8" column="BANK_NM8" /> <!-- 은행 명8 -->
<result property="vrActno8" column="VR_ACTNO8" /> <!-- 가상 계좌번호8 -->
<result property="bankNm9" column="BANK_NM9" /> <!-- 은행 명9 -->
<result property="vrActno9" column="VR_ACTNO9" /> <!-- 가상 계좌번호9 -->
<result property="bankNm10" column="BANK_NM10" /> <!-- 은행 명10 -->
<result property="vrActno10" column="VR_ACTNO10" /> <!-- 가상 계좌번호10 -->
<result property="bankNm11" column="BANK_NM11" /> <!-- 은행 명11 -->
<result property="vrActno11" column="VR_ACTNO11" /> <!-- 가상 계좌번호11 -->
<result property="delYn" column="DEL_YN" /> <!-- 삭제 여부 -->
<result property="createdAt" column="REG_DT" /> <!-- 등록 일시 -->
<result property="createdBy" column="RGTR" /> <!-- 등록자 -->
<result property="lastModified" column="MDFCN_DT" /> <!-- 수정 일시 -->
<result property="modifiedBy" column="MDFR" /> <!-- 수정자 -->
<result property="delDt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="dltr" column="DLTR" /> <!-- 삭제자 -->
<result property="removedAt" column="DEL_DT" /> <!-- 삭제 일시 -->
<result property="removedBy" column="DLTR" /> <!-- 삭제자 -->
<result property="delRsn" column="DEL_RSN" /> <!-- 삭제 사유 -->
</resultMap>
@ -700,10 +705,10 @@
</if>
<choose>
<when test="taskSeCd == 'BPV' or taskSeCd == 'PVS'">
AND C.CRDN_STTS_CD BETWEEN '21' AND '41' <!-- 단속 상태 코드 -->
AND C.CRDN_STTS_CD = '23' <!-- 단속 상태 코드 -->
</when>
<otherwise>
AND C.CRDN_STTS_CD BETWEEN '21' AND '22' <!-- 단속 상태 코드 -->
AND C.CRDN_STTS_CD BETWEEN '21' AND '23' <!-- 단속 상태 코드 -->
</otherwise>
</choose>
<if test="schCrdnYmdFrom != null">

Loading…
Cancel
Save