|
|
|
@ -131,7 +131,21 @@ public class PayerBean extends AbstractComponent {
|
|
|
|
|
payer.setSggCd(basicInfo.getSggCd());
|
|
|
|
|
String vhrno = basicInfo.getVhrno();
|
|
|
|
|
payer.setVhrno(vhrno);
|
|
|
|
|
payer.setRtpyrSeCd(basicInfo.getMber_se_code());
|
|
|
|
|
payer.setRtpyrInptSeCd("02");
|
|
|
|
|
switch (basicInfo.getMber_se_code()) {
|
|
|
|
|
case "11" : payer.setRtpyrSeCd("01");
|
|
|
|
|
break;
|
|
|
|
|
case "12" : payer.setRtpyrSeCd("02");
|
|
|
|
|
break;
|
|
|
|
|
case "13" : payer.setRtpyrSeCd("03");
|
|
|
|
|
break;
|
|
|
|
|
case "14" : payer.setRtpyrSeCd("04");
|
|
|
|
|
break;
|
|
|
|
|
case "15" : payer.setRtpyrSeCd("05");
|
|
|
|
|
break;
|
|
|
|
|
default : payer.setRtpyrSeCd("05");
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
String rtpyrNo = basicInfo.getMber_se_no();
|
|
|
|
|
payer.setRtpyrNo(rtpyrNo);
|
|
|
|
|
payer.setRtpyrNm(basicInfo.getMber_nm());
|
|
|
|
@ -153,12 +167,14 @@ public class PayerBean extends AbstractComponent {
|
|
|
|
|
str = basicInfo.getUse_strnghld_ho();
|
|
|
|
|
if (!isEmpty(str))
|
|
|
|
|
payer.setSno(toInt(str));
|
|
|
|
|
payer.setAddr(basicInfo.getRoad_nm_adres());
|
|
|
|
|
payer.setDtlAddr(basicInfo.getUse_strnghld_adres_nm());
|
|
|
|
|
payer.setWholAddr(basicInfo.getOwner_adres_full());
|
|
|
|
|
payer.setWholAddr(basicInfo.getRoad_nm_adres() + ", " + basicInfo.getUse_strnghld_adres_nm());
|
|
|
|
|
|
|
|
|
|
Payer result = create(payer) ? payer : getPayer(vhrno, rtpyrNo);
|
|
|
|
|
if (result != null)
|
|
|
|
|
result.setVehicleInfo(basicInfo);
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -201,61 +217,66 @@ public class PayerBean extends AbstractComponent {
|
|
|
|
|
req.setRtpyrNo(payer.getRtpyrNo());
|
|
|
|
|
req.setOrderBy("RTPYR_ID DESC");
|
|
|
|
|
|
|
|
|
|
List<Payer> infoPayer = payerMapper.selectPayers(req);
|
|
|
|
|
|
|
|
|
|
if (infoPayer.size() == 0) {
|
|
|
|
|
DataObject params = new DataObject()
|
|
|
|
|
.set("roadNmCd", payer.getRoadNmCd())
|
|
|
|
|
.set("udgdSeCd", payer.getUdgdSeCd())
|
|
|
|
|
.set("bmno", payer.getBmno())
|
|
|
|
|
.set("bsno", payer.getBsno());
|
|
|
|
|
|
|
|
|
|
DataObject info = payerMapper.selectAddrInfo(params);
|
|
|
|
|
Payer infoPayer = getPayer(payer.getVhrno(), payer.getRtpyrNo());
|
|
|
|
|
|
|
|
|
|
if (info != null) {
|
|
|
|
|
payer.setAddrSeCd("02");
|
|
|
|
|
payer.setZip(info.string("ZIP"));
|
|
|
|
|
payer.setBldgMngNo(info.string("BLDG_MNG_NO"));
|
|
|
|
|
payer.setStdgCd(info.string("STDG_CD"));
|
|
|
|
|
payer.setDongCd(info.string("DONG_CD"));
|
|
|
|
|
}
|
|
|
|
|
payer.setWholAddr(payer.getAddr() + " " + payer.getDtlAddr()); // 전체 주소
|
|
|
|
|
//
|
|
|
|
|
payer.setWholAddr(payer.getAddr() + ", " + payer.getDtlAddr()); // 전체 주소
|
|
|
|
|
|
|
|
|
|
if (infoPayer == null) {
|
|
|
|
|
// 납부자가 신규 등록
|
|
|
|
|
retSuccess = payerMapper.insert(payer);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 등록에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
payer.setRtpyrId(infoPayer.get(0).getRtpyrId());
|
|
|
|
|
|
|
|
|
|
retSuccess = payerMapper.update(payer);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 등록에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 단속 대장의 납부자 ID 수정 및 단속 납부자 이력(TB_CRDN_PAYER_HSTRY) 대장에 등록한다.
|
|
|
|
|
CrdnPayerHstry crdnPayerHstry = new CrdnPayerHstry();
|
|
|
|
|
crdnPayerHstry.setCrdnId(payer.getCrdnId());
|
|
|
|
|
crdnPayerHstry.setRtpyrId(payer.getRtpyrId());
|
|
|
|
|
|
|
|
|
|
// 단속 대장의 납부자 ID 수정
|
|
|
|
|
retSuccess = payerMapper.updateCrdnPayer(payer);
|
|
|
|
|
retSuccess = crdnPayerHstryBean.createHstryUpdateCrdnPayer(crdnPayerHstry);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 등록 실행중 단속 대장에 납부자ID 등록에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// 수정할 납부자ID 와 조회한 납부자 ID 확인
|
|
|
|
|
if (!payer.getRtpyrId().equals(infoPayer.getRtpyrId())) {
|
|
|
|
|
payer.setRtpyrId(infoPayer.getRtpyrId());
|
|
|
|
|
|
|
|
|
|
// 단속 납부자 이력(TB_CRDN_PAYER_HSTRY) 대장에 등록한다.
|
|
|
|
|
// 단속 대장의 납부자 ID 수정 및 단속 납부자 이력(TB_CRDN_PAYER_HSTRY) 대장에 등록한다.
|
|
|
|
|
CrdnPayerHstry crdnPayerHstry = new CrdnPayerHstry();
|
|
|
|
|
crdnPayerHstry.setCrdnId(payer.getCrdnId());
|
|
|
|
|
crdnPayerHstry.setRtpyrId(payer.getRtpyrId());
|
|
|
|
|
|
|
|
|
|
retSuccess = crdnPayerHstryBean.create(crdnPayerHstry);
|
|
|
|
|
retSuccess = crdnPayerHstryBean.createHstryUpdateCrdnPayer(crdnPayerHstry);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 등록 중 단속 대장의 단속상태코드 변경에 실패하였습니다.");
|
|
|
|
|
throw new RuntimeException("납부자 등록 실행중 단속 대장에 납부자ID 등록에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 현재 조회된 납부자 정보에서 주소가 다르다면 update 필요
|
|
|
|
|
if (!(infoPayer.getRtpyrSeCd().equals(payer.getRtpyrSeCd()) &&
|
|
|
|
|
infoPayer.getRtpyrNm().equals(payer.getRtpyrNm()) &&
|
|
|
|
|
infoPayer.getRtpyrTelno().equals(payer.getRtpyrTelno()) &&
|
|
|
|
|
infoPayer.getRtpyrMblTelno().equals(payer.getRtpyrMblTelno()) &&
|
|
|
|
|
infoPayer.getRtpyrEml().equals(payer.getRtpyrEml()) &&
|
|
|
|
|
infoPayer.getRtpyrSttsCd().equals(payer.getRtpyrSttsCd()) &&
|
|
|
|
|
infoPayer.getZip().equals(payer.getZip()) &&
|
|
|
|
|
infoPayer.getAddr().equals(payer.getAddr()) &&
|
|
|
|
|
infoPayer.getDtlAddr().equals(payer.getDtlAddr())) ) {
|
|
|
|
|
retSuccess = payerMapper.update(payer);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 수정에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 단속 상태 이력(TB_CRDN_STTS_HSTRY) 대장에 등록하고, 단속(TB_CRDN) 대장을 수정한다.
|
|
|
|
|
if (infoCrdn.number("CRDN_STTS_CD").intValue() < 21) { // 차적조회완료
|
|
|
|
|
if (infoCrdn.number("CRDN_STTS_CD").intValue() < 21) { // 납부자 등록 완료
|
|
|
|
|
CrdnSttsHstry crdnSttsHstry = new CrdnSttsHstry();
|
|
|
|
|
crdnSttsHstry.setCrdnId(infoCrdn.string("CRDN_ID"));
|
|
|
|
|
crdnSttsHstry.setBfrSttsCd(infoCrdn.string("CRDN_STTS_CD"));
|
|
|
|
@ -274,44 +295,16 @@ public class PayerBean extends AbstractComponent {
|
|
|
|
|
return retMessage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**납부자 정보를 수정한다.
|
|
|
|
|
* @param payer 납부자
|
|
|
|
|
* @return 저장 여부
|
|
|
|
|
* <ul><li>저장됐으면 true</li>
|
|
|
|
|
* <li>그렇지 않으면 false</li>
|
|
|
|
|
* </ul>
|
|
|
|
|
/**지정한 조건에 따라 납부자 변경 이력 목록을 조회하여 반환한다.
|
|
|
|
|
* @param req 납부자 조회 조건
|
|
|
|
|
* @return 납부자 변경 이력 목록
|
|
|
|
|
*/
|
|
|
|
|
public String updatePayer(Payer payer) {
|
|
|
|
|
// 변수 선언
|
|
|
|
|
boolean retSuccess = false; // DB 처리 결과
|
|
|
|
|
String retMessage = "[F] "; // 처리 결과 메시지
|
|
|
|
|
|
|
|
|
|
DataObject params = new DataObject()
|
|
|
|
|
.set("roadNmCd", payer.getRoadNmCd())
|
|
|
|
|
.set("udgdSeCd", payer.getUdgdSeCd())
|
|
|
|
|
.set("bmno", payer.getBmno())
|
|
|
|
|
.set("bsno", payer.getBsno());
|
|
|
|
|
|
|
|
|
|
DataObject info = payerMapper.selectAddrInfo(params);
|
|
|
|
|
|
|
|
|
|
if (info != null) {
|
|
|
|
|
payer.setAddrSeCd("02");
|
|
|
|
|
payer.setZip(info.string("ZIP"));
|
|
|
|
|
payer.setBldgMngNo(info.string("BLDG_MNG_NO"));
|
|
|
|
|
payer.setStdgCd(info.string("STDG_CD"));
|
|
|
|
|
payer.setDongCd(info.string("DONG_CD"));
|
|
|
|
|
public List<DataObject> getPayerHstrys(PayerQuery req) {
|
|
|
|
|
if (req.getOrderBy() == null) {
|
|
|
|
|
req.setOrderBy("PH.REG_DT DESC");
|
|
|
|
|
}
|
|
|
|
|
payer.setWholAddr(payer.getAddr() + " " + payer.getDtlAddr()); // 전체 주소
|
|
|
|
|
|
|
|
|
|
retSuccess = payerMapper.update(payer);
|
|
|
|
|
if (!retSuccess) {
|
|
|
|
|
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
|
|
|
|
|
throw new RuntimeException("납부자 수정에 실패하였습니다.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
retMessage = "[S] 작업이 정상 처리 되었습니다.";
|
|
|
|
|
|
|
|
|
|
return retMessage;
|
|
|
|
|
return payerMapper.selectPayerHstrys(req);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|