|
|
|
@ -216,9 +216,6 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
int rtnNocs = -1; // 처리 결과 건수
|
|
|
|
|
String rtnMsg = ""; // 처리 결과 메시지
|
|
|
|
|
|
|
|
|
|
// 사용자 정보를 조회한다.
|
|
|
|
|
DataObject userInfo = userBean.getUserInfo(currentUser().getId());
|
|
|
|
|
|
|
|
|
|
// 단속 IDs로 계도장 발송 대상 정보 조회
|
|
|
|
|
List<DataObject> trgtList = sndngMapper.selectWrngTrgtCrdnIds(req);
|
|
|
|
|
|
|
|
|
@ -232,6 +229,9 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
return rtnMsg;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 사용자 정보를 조회한다.
|
|
|
|
|
DataObject userInfo = userBean.getUserInfo(currentUser().getId());
|
|
|
|
|
|
|
|
|
|
// 위반 ID 조회
|
|
|
|
|
String vltnId = "";
|
|
|
|
|
if (req.getVltnCd() != null) {
|
|
|
|
@ -374,17 +374,17 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
public String createAdvntceSndngList(SndbQuery req, Sndng sndng) {
|
|
|
|
|
// 변수 선언
|
|
|
|
|
int rtnNocs = -1; // 처리 결과 건수
|
|
|
|
|
String rtnMsg = "[F] "; // 처리 결과 메시지
|
|
|
|
|
String rtnMsg = ""; // 처리 결과 메시지
|
|
|
|
|
|
|
|
|
|
// 단속 Ids로 사전통지 발송 대상 정보 조회
|
|
|
|
|
List<DataObject> advntceTrgtList = sndngMapper.selectAdvntceTrgtCrdnIds(req);
|
|
|
|
|
List<DataObject> trgtList = sndngMapper.selectAdvntceTrgtCrdnIds(req);
|
|
|
|
|
|
|
|
|
|
// 조회 건수 확인
|
|
|
|
|
if (advntceTrgtList == null || advntceTrgtList.size() < 1) {
|
|
|
|
|
if (trgtList == null || trgtList.size() < 1) {
|
|
|
|
|
rtnMsg = "[F] 작업 중 대상 자료가 존재하지 않습니다.";
|
|
|
|
|
return rtnMsg;
|
|
|
|
|
}
|
|
|
|
|
if (sndng.getTnocs() != advntceTrgtList.size()) {
|
|
|
|
|
if (sndng.getTnocs() != trgtList.size()) {
|
|
|
|
|
rtnMsg = "[F] 조회된 총 건수와 대상 건수가 다릅니다.";
|
|
|
|
|
return rtnMsg;
|
|
|
|
|
}
|
|
|
|
@ -392,17 +392,26 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
// 사용자 정보를 조회한다.
|
|
|
|
|
DataObject userInfo = userBean.getUserInfo(currentUser().getId());
|
|
|
|
|
|
|
|
|
|
// 위반 ID 조회
|
|
|
|
|
String vltnId = "";
|
|
|
|
|
if (req.getVltnCd() != null) {
|
|
|
|
|
VltnQuery vltnReq = new VltnQuery();
|
|
|
|
|
vltnReq.setSggCd(sndng.getSggCd());
|
|
|
|
|
vltnReq.setTaskSeCd(sndng.getTaskSeCd());
|
|
|
|
|
vltnReq.setVltnCd(req.getVltnCd());
|
|
|
|
|
|
|
|
|
|
DataObject vltnInfo = vltnMapper.selectVltnInfo(vltnReq);
|
|
|
|
|
|
|
|
|
|
vltnId = vltnInfo.string("VLTN_ID");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 발송 대장에 등록한다.
|
|
|
|
|
sndng.setDeptCd(userInfo.string("DEPT_CD")); // 부서 코드
|
|
|
|
|
sndng.setVltnId(vltnId); // 위반 ID
|
|
|
|
|
|
|
|
|
|
if (sndng.getSndngRegSeCd() == null) {
|
|
|
|
|
sndng.setSndngRegSeCd("02"); // 발송 등록 구분 코드(FIM067) - 02: 개별
|
|
|
|
|
}
|
|
|
|
|
if (sndng.getTnocs() == null) {
|
|
|
|
|
sndng.setTnocs(advntceTrgtList.size()); // 총건수
|
|
|
|
|
}
|
|
|
|
|
if (sndng.getGramt() == null) {
|
|
|
|
|
sndng.setGramt(advntceTrgtList.get(0).number("GRAMT").longValue()); // 총금액
|
|
|
|
|
}
|
|
|
|
|
if (sndng.getRsndYn() == null) {
|
|
|
|
|
sndng.setRsndYn("N"); // 재발송 여부
|
|
|
|
|
}
|
|
|
|
@ -418,9 +427,8 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 발송 상세 대장에 등록한다.
|
|
|
|
|
for (int iLoop = 0; iLoop < advntceTrgtList.size(); iLoop++) {
|
|
|
|
|
rtnMsg = createAdvntceSndngDtl(sndng, advntceTrgtList.get(iLoop).string("CRDN_ID"));
|
|
|
|
|
// 메시지 확인
|
|
|
|
|
for (int iLoop = 0; iLoop < trgtList.size(); iLoop++) {
|
|
|
|
|
rtnMsg = createAdvntceSndngDtl(sndng, trgtList.get(iLoop).string("CRDN_ID"));
|
|
|
|
|
if (!rtnMsg.contains("[S]")) { // 오류가 발생하였으면 종료..
|
|
|
|
|
throw new RuntimeException(rtnMsg.replace("[F]", "")); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
}
|
|
|
|
@ -625,8 +633,7 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
throw new RuntimeException("단속 대장에 사전통지일자 수정에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 단속 상태 이력(TB_CRDN_STTS_HSTRY)을 등록하고, 단속(TB_CRDN) 대장의 단속상태코드를 수정한다.
|
|
|
|
|
if ("21,22,23".contains(crdnPayerInfo.string("CRDN_STTS_CD"))) {
|
|
|
|
|
// 단속 상태 이력(TB_CRDN_STTS_HSTRY)을 등록한다.
|
|
|
|
|
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
|
|
|
|
|
crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
|
|
|
|
|
crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD"));
|
|
|
|
@ -635,20 +642,13 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId());
|
|
|
|
|
crdnSttsHstry.setUseYn("Y");
|
|
|
|
|
|
|
|
|
|
if ("21,22,23".contains(crdnPayerInfo.string("CRDN_STTS_CD"))) {
|
|
|
|
|
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
|
|
|
|
|
rtnScs = crdnSttsHstryBean.createHstryUpdateCrdnSttsCd(crdnSttsHstry);
|
|
|
|
|
if (!rtnScs) {
|
|
|
|
|
throw new RuntimeException("발송상세 등록 작업중 단속 대장의 단속상태 변경에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
}
|
|
|
|
|
} else if (crdnPayerInfo.string("CRDN_STTS_CD").equals("31")) {
|
|
|
|
|
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
|
|
|
|
|
crdnSttsHstry.setCrdnId(crdnPayerInfo.string("CRDN_ID"));
|
|
|
|
|
crdnSttsHstry.setBfrSttsCd(crdnPayerInfo.string("CRDN_STTS_CD"));
|
|
|
|
|
crdnSttsHstry.setBfrSttsChgDt(crdnPayerInfo.string("CRDN_STTS_CHG_DT"));
|
|
|
|
|
crdnSttsHstry.setCrdnSttsCd("42");
|
|
|
|
|
crdnSttsHstry.setTaskDtlId(sndngDtl.getSndngDtlId());
|
|
|
|
|
crdnSttsHstry.setUseYn("Y");
|
|
|
|
|
|
|
|
|
|
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록한다.
|
|
|
|
|
rtnScs = crdnSttsHstryBean.create(crdnSttsHstry);
|
|
|
|
|
if (!rtnScs) {
|
|
|
|
@ -717,10 +717,10 @@ public class SndngBean extends AbstractBean {
|
|
|
|
|
rtnMsg = "[F] 작업 중 대상 자료가 존재하지 않습니다.";
|
|
|
|
|
return rtnMsg;
|
|
|
|
|
}
|
|
|
|
|
// if (sndng.getTnocs() != nhtTrgtList.size()) {
|
|
|
|
|
// rtnMsg = "[F] 조회된 총 건수와 대상 건수가 다릅니다.";
|
|
|
|
|
// return rtnMsg;
|
|
|
|
|
// }
|
|
|
|
|
if (sndng.getTnocs() != nhtTrgtList.size()) {
|
|
|
|
|
rtnMsg = "[F] 조회된 총 건수와 대상 건수가 다릅니다.";
|
|
|
|
|
return rtnMsg;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 사용자 정보를 조회한다.
|
|
|
|
|
DataObject userInfo = userBean.getUserInfo(currentUser().getId());
|
|
|
|
|