|
|
@ -80,7 +80,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
@Resource(name = "finSysFtpMapper")
|
|
|
|
@Resource(name = "finSysFtpMapper")
|
|
|
|
private FinSysFtpMapper finSysFtpMapper;
|
|
|
|
private FinSysFtpMapper finSysFtpMapper;
|
|
|
|
|
|
|
|
|
|
|
|
/**지정한 조건에 따라 단속, 임대차계약 매핑 대장 목록을 조회하여 반환한다.
|
|
|
|
/**지정한 조건에 따라 과태료시스템 단속(CP_MAIN) 대장 목록을 조회하여 단속(TB_CRDN) 대장에 등록한다.
|
|
|
|
* 통합플랫폼으로 사용하지 안을 경우 렌트 소스만 사용하기 위해서 TB_CRDN, TB_PAYER에 직접 등록한다.
|
|
|
|
* 통합플랫폼으로 사용하지 안을 경우 렌트 소스만 사용하기 위해서 TB_CRDN, TB_PAYER에 직접 등록한다.
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
* @return 단속, 임대차계약 매핑 대장 목록
|
|
|
|
* @return 단속, 임대차계약 매핑 대장 목록
|
|
|
@ -89,7 +89,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
* @throws NumberFormatException
|
|
|
|
* @throws NumberFormatException
|
|
|
|
* @throws SftpException
|
|
|
|
* @throws SftpException
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public List<DataObject> getCrdnLsctMpngList(RentQuery req) {
|
|
|
|
public String saveFfnlgMainList(RentQuery req) {
|
|
|
|
// 기존 과태료 시스템에서 사용하던 암/복호화 함수 사용을 위해서..
|
|
|
|
// 기존 과태료 시스템에서 사용하던 암/복호화 함수 사용을 위해서..
|
|
|
|
XitAria crypto = new XitAria("xit-aria");
|
|
|
|
XitAria crypto = new XitAria("xit-aria");
|
|
|
|
|
|
|
|
|
|
|
@ -109,7 +109,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 연계 View 테이블 조회
|
|
|
|
// 연계 View 테이블 조회
|
|
|
|
List<DataObject> mainList = lsctMpngMapper.selectMainList(req);
|
|
|
|
List<DataObject> mainList = lsctMpngMapper.selectFfnlgMainList(req);
|
|
|
|
|
|
|
|
|
|
|
|
if (mainList.size() > 0) {
|
|
|
|
if (mainList.size() > 0) {
|
|
|
|
for (int iLoop = 0; iLoop < mainList.size(); iLoop++) {
|
|
|
|
for (int iLoop = 0; iLoop < mainList.size(); iLoop++) {
|
|
|
@ -120,7 +120,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
|
|
|
|
|
|
|
|
DataObject crdnInfo = lsctMpngMapper.selectCrdnInfo(rentQuery);
|
|
|
|
DataObject crdnInfo = lsctMpngMapper.selectCrdnInfo(rentQuery);
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 정보가 존재하지 않는다면..
|
|
|
|
// 단속 정보가 존재하지 않는다면.. 해당 자료 insert
|
|
|
|
if (crdnInfo == null) {
|
|
|
|
if (crdnInfo == null) {
|
|
|
|
// 납부자 정보
|
|
|
|
// 납부자 정보
|
|
|
|
Payer payer = new Payer();
|
|
|
|
Payer payer = new Payer();
|
|
|
@ -163,7 +163,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
// 납부자 주소 정보 등록
|
|
|
|
// 납부자 주소 정보 등록
|
|
|
|
Payer result = payerBean.create(payer) ? payer : payerBean.getPayerAddrInfo(payer);
|
|
|
|
Payer result = payerBean.create(payer) ? payer : payerBean.getPayerAddrInfo(payer);
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 정보 Insert
|
|
|
|
// 단속 정보
|
|
|
|
Crdn crdn = new Crdn();
|
|
|
|
Crdn crdn = new Crdn();
|
|
|
|
crdn.setSggCd(mainList.get(iLoop).string("MM_SGGCODE")); // 시군구 코드
|
|
|
|
crdn.setSggCd(mainList.get(iLoop).string("MM_SGGCODE")); // 시군구 코드
|
|
|
|
crdn.setTaskSeCd(mainList.get(iLoop).string("MM_TASKGB")); // 업무 구분 코드
|
|
|
|
crdn.setTaskSeCd(mainList.get(iLoop).string("MM_TASKGB")); // 업무 구분 코드
|
|
|
@ -190,10 +190,10 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
crdn.setVhclColr(mainList.get(iLoop).string("MM_CARCOLOR")); // 차량 색상
|
|
|
|
crdn.setVhclColr(mainList.get(iLoop).string("MM_CARCOLOR")); // 차량 색상
|
|
|
|
crdn.setFfnlgCrdnAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 단속 금액
|
|
|
|
crdn.setFfnlgCrdnAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 단속 금액
|
|
|
|
crdn.setFfnlgRdcrt(null); // 과태료 감면율
|
|
|
|
crdn.setFfnlgRdcrt(null); // 과태료 감면율
|
|
|
|
crdn.setFfnlgAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 금액
|
|
|
|
crdn.setFfnlgAmt(mainList.get(iLoop).number("MM_KEUM2").intValue() - mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 과태료 금액
|
|
|
|
crdn.setAdvntceBgngYmd(mainList.get(iLoop).string("MM_SDATE")); // 사전통지 시작 일자
|
|
|
|
crdn.setAdvntceBgngYmd(mainList.get(iLoop).string("MM_SDATE")); // 사전통지 시작 일자
|
|
|
|
crdn.setAdvntceDudtYmd(mainList.get(iLoop).string("MM_EDATE")); // 사전통지 납기 일자
|
|
|
|
crdn.setAdvntceDudtYmd(mainList.get(iLoop).string("MM_EDATE")); // 사전통지 납기 일자
|
|
|
|
crdn.setAdvntceAmt(mainList.get(iLoop).number("MM_KEUM1").intValue()); // 사전통지 금액
|
|
|
|
crdn.setAdvntceAmt(mainList.get(iLoop).number("MM_KEUM1").intValue() - mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 사전통지 금액
|
|
|
|
if (mainList.get(iLoop).string("MM_RECALL").equals("1")) { // 의견 제출 여부
|
|
|
|
if (mainList.get(iLoop).string("MM_RECALL").equals("1")) { // 의견 제출 여부
|
|
|
|
crdn.setOpnnSbmsnYn("Y");
|
|
|
|
crdn.setOpnnSbmsnYn("Y");
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
@ -218,13 +218,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
crdn.setDelYn("N"); // 삭제 여부
|
|
|
|
crdn.setDelYn("N"); // 삭제 여부
|
|
|
|
crdn.setCreatedAt(mainList.get(iLoop).string("MM_INDT"));
|
|
|
|
crdn.setCreatedAt(mainList.get(iLoop).string("MM_INDT"));
|
|
|
|
crdn.setCreatedBy(mainList.get(iLoop).string("MM_INUSER"));
|
|
|
|
crdn.setCreatedBy(mainList.get(iLoop).string("MM_INUSER"));
|
|
|
|
|
|
|
|
// 단속 부가 정보
|
|
|
|
int rtnNocs = lsctMpngMapper.copyMainToCrdn(crdn);
|
|
|
|
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
|
|
|
|
throw new RuntimeException("[F] 단속 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 부가 정보 Insert
|
|
|
|
|
|
|
|
crdn.setCrdnSeCd(null); // 단속 구분 코드
|
|
|
|
crdn.setCrdnSeCd(null); // 단속 구분 코드
|
|
|
|
crdn.setTeamId(null); // 조 ID
|
|
|
|
crdn.setTeamId(null); // 조 ID
|
|
|
|
if (mainList.get(iLoop).string("MM_PRECODE").equals("1")) { // 단속 특별구역 코드 FIM007
|
|
|
|
if (mainList.get(iLoop).string("MM_PRECODE").equals("1")) { // 단속 특별구역 코드 FIM007
|
|
|
@ -237,25 +231,28 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
crdn.setCrdnSn(mainList.get(iLoop).string("MM_SNO")); // 단속 일련번호
|
|
|
|
crdn.setCrdnSn(mainList.get(iLoop).string("MM_SNO")); // 단속 일련번호
|
|
|
|
crdn.setMoscX(null); // 모자이크 X
|
|
|
|
crdn.setMoscX(null); // 모자이크 X
|
|
|
|
crdn.setMoscY(null); // 모자이크 Y
|
|
|
|
crdn.setMoscY(null); // 모자이크 Y
|
|
|
|
|
|
|
|
|
|
|
|
if (mainList.get(iLoop).string("MM_TRAC").equals("1")) { // 견인 여부
|
|
|
|
if (mainList.get(iLoop).string("MM_TRAC").equals("1")) { // 견인 여부
|
|
|
|
crdn.setTowngYn("Y");
|
|
|
|
crdn.setTowngYn("Y");
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
crdn.setTowngYn("N");
|
|
|
|
crdn.setTowngYn("N");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
crdn.setUseFuelCd(mainList.get(iLoop).string("MM_CARFUEL")); // 사용 연료 코드 LVS005
|
|
|
|
crdn.setUseFuelCd(mainList.get(iLoop).string("MM_CARFUEL")); // 사용 연료 코드 LVS005
|
|
|
|
|
|
|
|
|
|
|
|
if (!mainList.get(iLoop).string("MM_CARKIND").equals("")) {
|
|
|
|
if (!mainList.get(iLoop).string("MM_CARKIND").equals("")) {
|
|
|
|
crdn.setFfnlgCarmdlCd(String.format("%02d", mainList.get(iLoop).number("MM_CARKIND").intValue())); // 과태료 차종 코드 FIM009
|
|
|
|
crdn.setFfnlgCarmdlCd(String.format("%02d", mainList.get(iLoop).number("MM_CARKIND").intValue())); // 과태료 차종 코드 FIM009
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
crdn.setPrkPsbltyRsltCd(mainList.get(iLoop).string("MM_CARCHECK")); // 주차 가능 결과 코드
|
|
|
|
crdn.setPrkPsbltyRsltCd(mainList.get(iLoop).string("MM_CARCHECK")); // 주차 가능 결과 코드
|
|
|
|
crdn.setVltnNmtm(mainList.get(iLoop).string("MM_VIORCNT")); // 위반 횟수
|
|
|
|
crdn.setVltnNmtm(mainList.get(iLoop).string("MM_VIORCNT")); // 위반 횟수
|
|
|
|
crdn.setOvtmYn("N"); // 시간외 여부
|
|
|
|
crdn.setOvtmYn("N"); // 시간외 여부
|
|
|
|
crdn.setOvtmPrttnYn("N"); // 시간외 분할 여부
|
|
|
|
crdn.setOvtmPrttnYn("N"); // 시간외 분할 여부
|
|
|
|
|
|
|
|
|
|
|
|
rtnNocs = lsctMpngMapper.copyMainToCrdnAdi(crdn);
|
|
|
|
// 단속 대장 Insert
|
|
|
|
|
|
|
|
int rtnNocs = lsctMpngMapper.insertMainToCrdn(crdn);
|
|
|
|
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
|
|
|
|
throw new RuntimeException("[F] 단속 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 부가 대장 Insert
|
|
|
|
|
|
|
|
rtnNocs = lsctMpngMapper.insertMainToCrdnAdi(crdn);
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
throw new RuntimeException("[F] 단속 부가 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
throw new RuntimeException("[F] 단속 부가 대장 등록 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -279,7 +276,6 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
SFTPUtil sftpUtil = new SFTPUtil();
|
|
|
|
SFTPUtil sftpUtil = new SFTPUtil();
|
|
|
|
sftpUtil.connect(rs);
|
|
|
|
sftpUtil.connect(rs);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
boolean fileSearchEnd = false;
|
|
|
|
boolean fileSearchEnd = false;
|
|
|
|
int i = 1;
|
|
|
|
int i = 1;
|
|
|
|
while(!fileSearchEnd) {
|
|
|
|
while(!fileSearchEnd) {
|
|
|
@ -319,20 +315,164 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
/////////////////////////////
|
|
|
|
/////////////////////////////
|
|
|
|
//sftp연결종료
|
|
|
|
//sftp연결종료
|
|
|
|
sftpUtil.disconnect();
|
|
|
|
sftpUtil.disconnect();
|
|
|
|
|
|
|
|
} else { // 단속 정보가 존재한다면.. 해당 자료 update
|
|
|
|
|
|
|
|
// 납부자 정보
|
|
|
|
|
|
|
|
Payer payer = new Payer();
|
|
|
|
|
|
|
|
payer.setSggCd(mainList.get(iLoop).string("OM_SGGCODE")); // 시군구 코드
|
|
|
|
|
|
|
|
payer.setRtpyrInptSeCd("07"); // 납부자 입력 구분 코드 FIM015
|
|
|
|
|
|
|
|
switch (mainList.get(iLoop).string("OM_NOGB")) { // 납부자 구분 코드 FIM011
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
payer.setRtpyrNo(crypto.decrypt(mainList.get(iLoop).string("OM_JNO"))); // 납부자 번호
|
|
|
|
|
|
|
|
payer.setRtpyrNm(mainList.get(iLoop).string("OM_NAME")); // 납부자명
|
|
|
|
|
|
|
|
payer.setRtpyrBrdt(mainList.get(iLoop).string("OM_NO1")); // 납부자 생년월일
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 납부자 주소 정보
|
|
|
|
|
|
|
|
payer.setAddrInptSeCd("07"); // 주소 입력 구분 코드 FIM087
|
|
|
|
|
|
|
|
if (!mainList.get(iLoop).string("OM_DORO_CODE").equals("")) { // 주소 구분 코드
|
|
|
|
|
|
|
|
payer.setAddrSeCd("02");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
payer.setZip(mainList.get(iLoop).string("OM_ZIP")); // 우편번호
|
|
|
|
|
|
|
|
payer.setAddr(mainList.get(iLoop).string("OM_JUSO")); // 주소
|
|
|
|
|
|
|
|
payer.setDtlAddr(mainList.get(iLoop).string("OM_BUNJI")); // 상세 주소
|
|
|
|
|
|
|
|
payer.setRoadNmCd(mainList.get(iLoop).string("OM_DORO_CODE")); // 도로명 코드
|
|
|
|
|
|
|
|
payer.setUdgdSeCd(mainList.get(iLoop).string("OM_BLD_POSITION")); // 지하 구분 코드
|
|
|
|
|
|
|
|
payer.setBmno(mainList.get(iLoop).number("OM_BLD_NO1").intValue()); // 건물본번
|
|
|
|
|
|
|
|
payer.setBsno(mainList.get(iLoop).number("OM_BLD_NO2").intValue()); // 건물부번
|
|
|
|
|
|
|
|
payer.setBldgMngNo(mainList.get(iLoop).string("OM_BLD_ADMNO")); // 건물 관리 번호
|
|
|
|
|
|
|
|
payer.setStdgCd(mainList.get(iLoop).string("OM_BDCODE")); // 법정동 코드
|
|
|
|
|
|
|
|
payer.setWholAddr(mainList.get(iLoop).string("OM_JUSO") + ", " + mainList.get(iLoop).string("OM_BUNJI")); // 전체 주소
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 납부자 주소 정보 등록
|
|
|
|
|
|
|
|
Payer result = payerBean.create(payer) ? payer : payerBean.getPayerAddrInfo(payer);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 정보
|
|
|
|
|
|
|
|
Crdn crdn = new Crdn();
|
|
|
|
|
|
|
|
crdn.setCrdnId(crdnInfo.string("CRDN_ID")); // CRDN_ID
|
|
|
|
|
|
|
|
crdn.setMmCode(crdnInfo.string("MM_CODE")); // MM_CODE
|
|
|
|
|
|
|
|
crdn.setSggCd(crdnInfo.string("SGG_CD")); // 시군구 코드
|
|
|
|
|
|
|
|
crdn.setTaskSeCd(crdnInfo.string("TASK_SE_CD")); // 업무 구분 코드
|
|
|
|
|
|
|
|
crdn.setCrdnRegSeCd(String.format("%02d", mainList.get(iLoop).number("MM_DLGB").intValue())); // 단속 등록 구분 코드
|
|
|
|
|
|
|
|
crdn.setCrdnInptSeCd(String.format("%02d", mainList.get(iLoop).number("MM_INGB").intValue())); // 단속 입력 구분 코드
|
|
|
|
|
|
|
|
crdn.setRtpyrId(result.getRtpyrId()); // 납부자 ID
|
|
|
|
|
|
|
|
crdn.setAddrSn(result.getAddrSn()); // 주소 일련번호
|
|
|
|
|
|
|
|
crdn.setCrdnYmd(mainList.get(iLoop).string("MM_DATE")); // 단속 일자
|
|
|
|
|
|
|
|
crdn.setCrdnTm(mainList.get(iLoop).string("MM_TIME")); // 단속 시간
|
|
|
|
|
|
|
|
crdn.setVhrno(mainList.get(iLoop).string("MM_CARNO")); // 자동차등록번호
|
|
|
|
|
|
|
|
crdn.setCrdnStdgNm(mainList.get(iLoop).string("CRDN_STDG_NM")); // 단속 법정동 명
|
|
|
|
|
|
|
|
crdn.setCrdnPlc(mainList.get(iLoop).string("MM_SGPOS")); // 단속 장소
|
|
|
|
|
|
|
|
crdn.setVltnId(mainList.get(iLoop).string("VLTN_ID")); // 위반 ID
|
|
|
|
|
|
|
|
crdn.setGpsX(mainList.get(iLoop).string("MM_GPS_X")); // GPS_X
|
|
|
|
|
|
|
|
crdn.setGpsY(mainList.get(iLoop).string("MM_GPS_Y")); // GPS_Y
|
|
|
|
|
|
|
|
crdn.setAtchFileCnt(mainList.get(iLoop).number("MM_IMAGECNT").intValue()); // 첨부 파일 수
|
|
|
|
|
|
|
|
crdn.setVin(mainList.get(iLoop).string("MM_VHMNO")); // 차대번호
|
|
|
|
|
|
|
|
crdn.setVhclNm(mainList.get(iLoop).string("MM_CARNAME")); // 차량 명
|
|
|
|
|
|
|
|
crdn.setVhclColr(mainList.get(iLoop).string("MM_CARCOLOR")); // 차량 색상
|
|
|
|
|
|
|
|
crdn.setFfnlgCrdnAmt(mainList.get(iLoop).number("MM_KEUM2").intValue()); // 과태료 단속 금액
|
|
|
|
|
|
|
|
crdn.setFfnlgRdcrt(null); // 과태료 감면율
|
|
|
|
|
|
|
|
crdn.setFfnlgAmt(mainList.get(iLoop).number("MM_KEUM2").intValue() - mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 과태료 금액
|
|
|
|
|
|
|
|
crdn.setAdvntceBgngYmd(mainList.get(iLoop).string("MM_SDATE")); // 사전통지 시작 일자
|
|
|
|
|
|
|
|
crdn.setAdvntceDudtYmd(mainList.get(iLoop).string("MM_EDATE")); // 사전통지 납기 일자
|
|
|
|
|
|
|
|
crdn.setAdvntceAmt(mainList.get(iLoop).number("MM_KEUM1").intValue() - mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 사전통지 금액
|
|
|
|
|
|
|
|
if (mainList.get(iLoop).string("MM_RECALL").equals("1")) { // 의견 제출 여부
|
|
|
|
|
|
|
|
crdn.setOpnnSbmsnYn("Y");
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
|
|
|
|
crdn.setOpnnSbmsnYn("N");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
crdn.setEtcCn(mainList.get(iLoop).string("MM_ETC")); // 기타 내용
|
|
|
|
|
|
|
|
crdn.setCrdnSttsCd(mainList.get(iLoop).string("MM_STATE")); // 단속 상태 코드
|
|
|
|
|
|
|
|
crdn.setCrdnSttsChgDt(mainList.get(iLoop).string("MM_STATE_DT")); // 단속 상태 변경 일시
|
|
|
|
|
|
|
|
crdn.setAdtnAmt(mainList.get(iLoop).number("MM_ADD_KEUM").intValue()); // 가산 금액
|
|
|
|
|
|
|
|
crdn.setMinusAmt(mainList.get(iLoop).number("MM_MINUS_KEUM").intValue()); // 감경 금액
|
|
|
|
|
|
|
|
crdn.setRcvmtAmt(mainList.get(iLoop).number("MM_SUKEUM").intValue()); // 수납 금액
|
|
|
|
|
|
|
|
crdn.setBfrCrdnId(mainList.get(iLoop).string("MM_PRECODE")); // 이전 단속 ID
|
|
|
|
|
|
|
|
crdn.setNxrpCrdnLinkYn(mainList.get(iLoop).string("NIS_LINK_YN")); // 세외수입 단속 연계 여부
|
|
|
|
|
|
|
|
if (mainList.get(iLoop).string("MC_LVY_KEY").length() == 11) { // 세외수입 대장 키
|
|
|
|
|
|
|
|
crdn.setNxrpAcbKey(mainList.get(iLoop).string("MC_LVY_KEY"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
crdn.setNxrpAcbKey(null);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 단속 부가 정보
|
|
|
|
|
|
|
|
crdn.setCrdnSeCd(null); // 단속 구분 코드
|
|
|
|
|
|
|
|
crdn.setTeamId(null); // 조 ID
|
|
|
|
|
|
|
|
if (mainList.get(iLoop).string("MM_PRECODE").equals("1")) { // 단속 특별구역 코드 FIM007
|
|
|
|
|
|
|
|
crdn.setCrdnSpareaCd("01");
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
crdn.setCrdnSpareaCd("00");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
crdn.setCrdnBgngTm(mainList.get(iLoop).string("MM_TIME")); // 단속 시작 시각
|
|
|
|
|
|
|
|
crdn.setCrdnEndTm(mainList.get(iLoop).string("MM_TIME2")); // 단속 종료 시각
|
|
|
|
|
|
|
|
crdn.setCrdnSn(mainList.get(iLoop).string("MM_SNO")); // 단속 일련번호
|
|
|
|
|
|
|
|
crdn.setMoscX(null); // 모자이크 X
|
|
|
|
|
|
|
|
crdn.setMoscY(null); // 모자이크 Y
|
|
|
|
|
|
|
|
if (mainList.get(iLoop).string("MM_TRAC").equals("1")) { // 견인 여부
|
|
|
|
|
|
|
|
crdn.setTowngYn("Y");
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
crdn.setTowngYn("N");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
crdn.setUseFuelCd(mainList.get(iLoop).string("MM_CARFUEL")); // 사용 연료 코드 LVS005
|
|
|
|
|
|
|
|
if (!mainList.get(iLoop).string("MM_CARKIND").equals("")) {
|
|
|
|
|
|
|
|
crdn.setFfnlgCarmdlCd(String.format("%02d", mainList.get(iLoop).number("MM_CARKIND").intValue())); // 과태료 차종 코드 FIM009
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
crdn.setPrkPsbltyRsltCd(mainList.get(iLoop).string("MM_CARCHECK")); // 주차 가능 결과 코드
|
|
|
|
|
|
|
|
crdn.setVltnNmtm(mainList.get(iLoop).string("MM_VIORCNT")); // 위반 횟수
|
|
|
|
|
|
|
|
crdn.setOvtmYn("N"); // 시간외 여부
|
|
|
|
|
|
|
|
crdn.setOvtmPrttnYn("N"); // 시간외 분할 여부
|
|
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
// 단속 대장 Insert
|
|
|
|
|
|
|
|
int rtnNocs = lsctMpngMapper.updateMainToCrdn(crdn);
|
|
|
|
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
|
|
|
|
throw new RuntimeException("[F] 단속 대장 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//등록 또는 수정 완료
|
|
|
|
|
|
|
|
//////////////////////////
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속 부가 대장 Insert
|
|
|
|
|
|
|
|
rtnNocs = lsctMpngMapper.updateMainToCrdnAdi(crdn);
|
|
|
|
|
|
|
|
if (rtnNocs == 0) {
|
|
|
|
|
|
|
|
throw new RuntimeException("[F] 단속 부가 대장 수정 작업에 실패하였습니다."); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/////////////////////////////////////////////////
|
|
|
|
|
|
|
|
//FTP 서버 정보 조회
|
|
|
|
|
|
|
|
|
|
|
|
//...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return "[S] 등록 및 수정 작업이 정상 처리 되었습니다.";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**지정한 조건에 따라 단속, 임대차계약 매핑 대장 목록을 조회하여 반환한다.
|
|
|
|
|
|
|
|
* 통합플랫폼으로 사용하지 안을 경우 렌트 소스만 사용하기 위해서 TB_CRDN, TB_PAYER에 직접 등록한다.
|
|
|
|
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
|
|
|
|
* @return 단속, 임대차계약 매핑 대장 목록
|
|
|
|
|
|
|
|
* @throws IOException
|
|
|
|
|
|
|
|
* @throws JSchException
|
|
|
|
|
|
|
|
* @throws NumberFormatException
|
|
|
|
|
|
|
|
* @throws SftpException
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public List<DataObject> getCrdnList(RentQuery req) {
|
|
|
|
|
|
|
|
// 변수 선언
|
|
|
|
|
|
|
|
String rtnMsg = ""; // 처리 결과 메시지
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 과태료 시스템 조회하여 변경 내역 등록 및 수정.
|
|
|
|
|
|
|
|
if (req.getFfnlgSysInqYn().equals("Y")) {
|
|
|
|
|
|
|
|
rtnMsg = saveFfnlgMainList(req);
|
|
|
|
|
|
|
|
if (!rtnMsg.contains("[S]")) {
|
|
|
|
|
|
|
|
throw new RuntimeException(rtnMsg); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 단속(TB_CRDN) 자료 조회
|
|
|
|
// 단속(TB_CRDN) 자료 조회
|
|
|
|
if (req.getSchEntRegNos() != null) {
|
|
|
|
if (req.getSchEntRegNos() != null) {
|
|
|
@ -343,7 +483,7 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
req.setRtpyrNo(req.getSchEntRegNo());
|
|
|
|
req.setRtpyrNo(req.getSchEntRegNo());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return lsctMpngMapper.selectCrdnLsctMpngList(req);
|
|
|
|
return lsctMpngMapper.selectCrdnList(req);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**지정한 조건에 따라 단속 대장 상세정보를 조회하여 반환한다.
|
|
|
|
/**지정한 조건에 따라 단속 대장 상세정보를 조회하여 반환한다.
|
|
|
@ -354,6 +494,39 @@ public class LsctMpngBean extends AbstractBean {
|
|
|
|
return lsctMpngMapper.selectCrdnInfo(req);
|
|
|
|
return lsctMpngMapper.selectCrdnInfo(req);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**지정한 조건에 따라 단속, 임대차계약 매핑 대장 목록을 조회하여 반환한다.
|
|
|
|
|
|
|
|
* 통합플랫폼으로 사용하지 안을 경우 렌트 소스만 사용하기 위해서 TB_CRDN, TB_PAYER에 직접 등록한다.
|
|
|
|
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
|
|
|
|
* @return 단속, 임대차계약 매핑 대장 목록
|
|
|
|
|
|
|
|
* @throws IOException
|
|
|
|
|
|
|
|
* @throws JSchException
|
|
|
|
|
|
|
|
* @throws NumberFormatException
|
|
|
|
|
|
|
|
* @throws SftpException
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
public List<DataObject> getCrdnLsctMpngList(RentQuery req) {
|
|
|
|
|
|
|
|
// 변수 선언
|
|
|
|
|
|
|
|
String rtnMsg = ""; // 처리 결과 메시지
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 과태료 시스템 조회하여 변경 내역 등록 및 수정.
|
|
|
|
|
|
|
|
if (req.getFfnlgSysInqYn().equals("Y")) {
|
|
|
|
|
|
|
|
rtnMsg = saveFfnlgMainList(req);
|
|
|
|
|
|
|
|
if (!rtnMsg.contains("[S]")) {
|
|
|
|
|
|
|
|
throw new RuntimeException(rtnMsg); // 예외를 발생시켜서 DB Rollback
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 단속(TB_CRDN) 자료 조회
|
|
|
|
|
|
|
|
if (req.getSchEntRegNos() != null) {
|
|
|
|
|
|
|
|
// 잠시 대기.. 한실장님 확인중
|
|
|
|
|
|
|
|
// req.setRtpyrNos(req.getSchEntRegNos());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (req.getSchEntRegNo() != null) {
|
|
|
|
|
|
|
|
req.setRtpyrNo(req.getSchEntRegNo());
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return lsctMpngMapper.selectCrdnLsctMpngList(req);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**지정한 조건에 따라 단속 대장, 임대차계약 대장 상세정보를 조회하여 반환한다.
|
|
|
|
/**지정한 조건에 따라 단속 대장, 임대차계약 대장 상세정보를 조회하여 반환한다.
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
* @param req 임대차계약 대장 조회 조건
|
|
|
|
* @return 단속, 임대차계약 대장 객체
|
|
|
|
* @return 단속, 임대차계약 대장 객체
|
|
|
|