단속 재등록 수정.

단속 사진 복사 수정.
main
jjh 1 year ago
parent 2c7dae3782
commit 977d520a33

@ -79,6 +79,10 @@ public interface Excl03Mapper extends AbstractMapper {
* @param crdnId ID * @param crdnId ID
* @return * @return
*/ */
DataObject selectCrdnInfo(String crdnId); DataObject selectCrdn(Excl03Query req);
default DataObject selectCrdnInfo(String crdnId) {
return selectCrdn(new Excl03Query().setCrdnId(crdnId));
}
} }

@ -45,11 +45,7 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
@Override @Override
public DataObject getLevyExclInfo(Excl01Query req) { public DataObject getLevyExclInfo(Excl01Query req) {
DataObject levyExcl = excl01Bean.getLevyExclInfo(req); return excl01Bean.getLevyExclInfo(req);
// 등록으로 실행했는데 부과제외 ID가 존재한다면 이미 등록되었으므로 오류로 처리..
return levyExcl;
} }
@Override @Override
@ -83,8 +79,8 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
} }
} }
// 비부과(서손), 계고 등록 하는데, // 비부과(서손)
if (excl01.getLevyExclSeCd().equals("1") || excl01.getLevyExclSeCd().equals("2")) { if (excl01.getLevyExclSeCd().equals("1")) {
// 단속민원ID가 있다면.. // 단속민원ID가 있다면..
if (!infoCrdnLevyExcl.string("CVLCPT_LINK_ID").equals("")) { if (!infoCrdnLevyExcl.string("CVLCPT_LINK_ID").equals("")) {
// 자동등록 자료만 단속민원(TB_CRDN_CVLCPT) 답변 부분을 처리 // 자동등록 자료만 단속민원(TB_CRDN_CVLCPT) 답변 부분을 처리
@ -161,9 +157,12 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
throw new RuntimeException("부과제외 등록 중 단속 대장의 표지정보확인여부 수정에 실패하였습니다."); throw new RuntimeException("부과제외 등록 중 단속 대장의 표지정보확인여부 수정에 실패하였습니다.");
} }
} }
// 전액감액일 경우.. 부과(TB_LEVY)에 감액금액 입력이 필요.. // 계고
} else if (excl01.getLevyExclSeCd().equals("5")) { } else if (excl01.getLevyExclSeCd().equals("2")) {
// 전액감액
} else if (excl01.getLevyExclSeCd().equals("5")) {
// 부과(TB_LEVY)에 감액금액 입력이 필요..
} }
// 단속 ID로 발송 상세(TB_SNDNG_DTL) 대장 정보 조회 // 단속 ID로 발송 상세(TB_SNDNG_DTL) 대장 정보 조회
@ -173,7 +172,7 @@ public class Excl01ServiceBean extends AbstractServiceBean implements Excl01Serv
// 발송 상세(TB_SNDNG_DTL) 대장 // 발송 상세(TB_SNDNG_DTL) 대장
Excl01 updtSndngDtl = new Excl01(); Excl01 updtSndngDtl = new Excl01();
updtSndngDtl.setCrdnId(excl01.getCrdnId()); // 단속 ID updtSndngDtl.setCrdnId(excl01.getCrdnId()); // 단속 ID
// 발송상세 수납코드를 수정 // 발송상세 수납코드를 수정
retSuccess = excl01Bean.updateRcvmtCd(updtSndngDtl); retSuccess = excl01Bean.updateRcvmtCd(updtSndngDtl);

@ -1,11 +1,17 @@
package cokr.xit.fims.excl.service.bean; package cokr.xit.fims.excl.service.bean;
import java.io.File;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import cokr.xit.base.file.FileInfo;
import cokr.xit.base.file.service.FileQuery;
import cokr.xit.base.file.service.bean.FileBean;
import cokr.xit.base.file.web.FileInfoFactory;
import cokr.xit.fims.crdn.Crdn; import cokr.xit.fims.crdn.Crdn;
import cokr.xit.fims.crdn.service.CrdnService; import cokr.xit.fims.crdn.service.CrdnService;
import cokr.xit.fims.excl.Excl03; import cokr.xit.fims.excl.Excl03;
@ -14,13 +20,13 @@ import cokr.xit.fims.excl.service.Excl03Service;
import cokr.xit.foundation.component.AbstractServiceBean; import cokr.xit.foundation.component.AbstractServiceBean;
import cokr.xit.foundation.data.DataObject; import cokr.xit.foundation.data.DataObject;
/** . /** .
* *
* <p> : * <p> : .
* *
* <pre> * <pre>
* ============ ============ * ============ ============
* 2023-07-03 mjkhan * 2023-07-03 JoJH
* ================================ * ================================
* </pre> * </pre>
*/ */
@ -31,6 +37,11 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
@Resource(name = "excl03Bean") @Resource(name = "excl03Bean")
private Excl03Bean excl03Bean; private Excl03Bean excl03Bean;
/** 파일 정보 Bean */
@Resource(name = "fileBean")
private FileBean fileBean;
/** 단속 정보 Service */
@Resource(name="crdnService") @Resource(name="crdnService")
private CrdnService crdnService; private CrdnService crdnService;
@ -49,76 +60,95 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
// 변수 선언 // 변수 선언
boolean retSuccess = false; // DB 처리 결과 boolean retSuccess = false; // DB 처리 결과
// 단속 ID로 부과제외 정보 조회 // 단속 ID로 단속(TB_CRDN) 정보 조회
DataObject infoCrdn = excl03Bean.getCrackdown(excl03.getBfrCrdnId()); DataObject infoCrdn = excl03Bean.getCrackdown(excl03.getBfrCrdnId());
// 단속 ID로 파일(TB_FILE) 정보 조회
Crdn crdn = new Crdn(); List<DataObject> infoCrdnFileList = fileBean.getFileList(new FileQuery().setInfoType(excl03.INF_TYPE)
.setInfoKeys(excl03.getBfrCrdnId()));
crdn.setSggCd(infoCrdn.string("SGG_CD")); // 시군구 코드
crdn.setTaskSeCd(infoCrdn.string("TASK_SE_CD")); // 업무 구분 코드 // 재등록 단속 정보(TB_CRDN)
crdn.setCrdnRegSeCd("03"); // 단속 등록 구분 코드(FIM026) - 재 등록 Crdn newCrdn = new Crdn();
crdn.setCrdnInptSeCd(infoCrdn.string("CRDN_INPT_SE_CD")); // 단속 입력 구분 코드
crdn.setLinkTblNm(infoCrdn.string("LINK_TBL_NM")); // 연계 테이블 명 newCrdn.setSggCd(infoCrdn.string("SGG_CD")); // 시군구 코드
crdn.setLinkId(infoCrdn.string("LINK_ID")); // 연계 ID newCrdn.setTaskSeCd(infoCrdn.string("TASK_SE_CD")); // 업무 구분 코드
crdn.setRtpyrId(infoCrdn.string("RTPYR_ID")); // 납부자 ID newCrdn.setCrdnRegSeCd("03"); // 단속 등록 구분 코드(FIM026) - 재 등록
crdn.setCrdnSeCd(infoCrdn.string("CRDN_SE_CD")); // 단속 구분 코드 newCrdn.setCrdnInptSeCd(infoCrdn.string("CRDN_INPT_SE_CD")); // 단속 입력 구분 코드
crdn.setCrdnYmd(infoCrdn.string("CRDN_YMD")); // 단속 일자 newCrdn.setCvlcptLinkYn(infoCrdn.string("CVLCPT_LINK_YN")); // 민원 연계 여부
crdn.setCrdnTm(infoCrdn.string("CRDN_TM")); // 단속 시각 newCrdn.setLinkTblNm(infoCrdn.string("LINK_TBL_NM")); // 연계 테이블 명
crdn.setVhrno(infoCrdn.string("VHRNO")); // 차량번호 newCrdn.setLinkId(infoCrdn.string("LINK_ID")); // 연계 ID
crdn.setCrdnStdgNm(infoCrdn.string("CRDN_STDG_NM")); // 단속 법정동 명 newCrdn.setRtpyrId(infoCrdn.string("RTPYR_ID")); // 납부자 ID
crdn.setCrdnRoadNm(infoCrdn.string("CRDN_ROAD_NM")); // 단속 도로 명 newCrdn.setCrdnYmd(infoCrdn.string("CRDN_YMD")); // 단속 일자
crdn.setCrdnPlc(infoCrdn.string("CRDN_PLC")); // 단속 장소 newCrdn.setCrdnTm(infoCrdn.string("CRDN_TM")); // 단속 시각
crdn.setDtlCrdnPlc(infoCrdn.string("DTL_CRDN_PLC")); // 상세 단속 장소 newCrdn.setVhrno(infoCrdn.string("VHRNO")); // 차량번호
crdn.setTeamId(infoCrdn.string("TEAM_ID")); // 조 ID newCrdn.setCrdnStdgNm(infoCrdn.string("CRDN_STDG_NM")); // 단속 법정동 명
crdn.setVltnId(infoCrdn.string("VLTN_ID")); // 위반 ID newCrdn.setCrdnRoadNm(infoCrdn.string("CRDN_ROAD_NM")); // 단속 도로 명
crdn.setVltnCd(infoCrdn.string("VLTN_CD")); // 위반 코드 newCrdn.setCrdnPlc(infoCrdn.string("CRDN_PLC")); // 단속 장소
crdn.setCrdnSpareaCd(infoCrdn.string("CRDN_SPAREA_CD")); // 단속 특별구역 코드 newCrdn.setVltnId(infoCrdn.string("VLTN_ID")); // 위반 ID
crdn.setCrdnBgngTm(infoCrdn.string("CRDN_BGNG_TM")); // 단속 시작 시각 newCrdn.setVltnCd(infoCrdn.string("VLTN_CD")); // 위반 코드
crdn.setCrdnEndTm(infoCrdn.string("CRDN_END_TM")); // 단속 종료 시각 newCrdn.setGpsX(infoCrdn.string("GPS_X")); // GPS X
crdn.setCrdnSn(infoCrdn.string("CRDN_SN")); // 단속 일련번호 newCrdn.setGpsY(infoCrdn.string("GPS_Y")); // GPS Y
crdn.setGpsX(infoCrdn.string("GPS_X")); // GPS X newCrdn.setAtchFileCnt(Integer.parseInt(infoCrdn.string("ATCH_FILE_CNT"))); // 첨부 파일 수
crdn.setGpsY(infoCrdn.string("GPS_Y")); // GPS Y newCrdn.setVin(infoCrdn.string("VIN")); // 차대번호
crdn.setMoscX(infoCrdn.string("MOSC_X")); // 모자이크 X newCrdn.setVhclNm(infoCrdn.string("VHCL_NM")); // 차량 명
crdn.setMoscY(infoCrdn.string("MOSC_Y")); // 모자이크 Y newCrdn.setVhclColor(infoCrdn.string("VHCL_COLOR")); // 차량 색상
crdn.setTowngYn(infoCrdn.string("TOWNG_YN")); // 견인 여부 newCrdn.setFfnlgAmt(0); // 과태료 금액 - 초기 값
crdn.setAtchFileCnt(Integer.parseInt(infoCrdn.string("ATCH_FILE_CNT"))); // 첨부 파일 수 newCrdn.setFfnlgRductRt(infoCrdn.string("FFNLG_RDUCT_RT")); // 과태료 감경 율
crdn.setVin(infoCrdn.string("VIN")); // 차대번호 newCrdn.setLevyAmt(0); // 부과 금액 - 초기 값
crdn.setVhclNm(infoCrdn.string("VHCL_NM")); // 차량 명 // newCrdn.setAdvntceBgngYmd(""); // 사전통지 시작 일자
crdn.setVhclColor(infoCrdn.string("VHCL_COLOR")); // 차량 색상 // newCrdn.setAdvntceDudtYmd(""); // 사전통지 납기 일자
crdn.setUseFuelCd(infoCrdn.string("USE_FUEL_CD")); // 사용 연료 코드 newCrdn.setAdvntceLevyAmt(0); // 사전통지 부과 금액 - 초기 값
crdn.setFfnlgCarmdlCd(infoCrdn.string("FFNLG_CARMDL_CD")); // 과태료 차종 코드 newCrdn.setOpnnSbmsnYn("N"); // 의견 제출 여부
crdn.setParkngPsbltyRsltCd(infoCrdn.string("PARKNG_PSBLTY_RSLT_CD")); // 주차 가능 결과 코드 newCrdn.setEtcCn(infoCrdn.string("ETC_CN")); // 기타 내용
crdn.setVltnNmtm(infoCrdn.string("VLTN_NMTM")); // 위반 횟수 // newCrdn.setLevyId(""); // 부과 ID
crdn.setOvtimeYn(infoCrdn.string("OVTIME_YN")); // 시간외 여부 newCrdn.setCrdnSttsCd("01"); // 단속 상태 코드
crdn.setFfnlgAmt(0); // 과태료 금액 - 초기 값 newCrdn.setCrdnSttsChgDt(""); // 단속 상태 변경 일시
crdn.setFfnlgRductRt(infoCrdn.string("FFNLG_RDUCT_RT")); // 과태료 감경 율 newCrdn.setAdtnAmt(0); // 가산 금액
crdn.setLevyAmt(0); // 부과 금액 - 초기 값 newCrdn.setMinusAmt(0); // 감경 금액
// crdn.setAdvntceBgngYmd(""); // 사전통지 시작 일자 newCrdn.setRcvmtAmt(0); // 수납 금액
// crdn.setAdvntceDudtYmd(""); // 사전통지 납기 일자 newCrdn.setBfrCrdnId(infoCrdn.string("CRDN_ID")); // 이전 단속 ID
crdn.setAdvntceLevyAmt(0); // 사전통지 부과 금액 - 초기 값 newCrdn.setDelYn("N"); // 삭제 여부
crdn.setOpnnSbmsnYn("N"); // 의견 제출 여부 // TB_CRDN_ADI(단속 부가 정보)
crdn.setEtcCn(infoCrdn.string("ETC_CN")); // 기타 내용 newCrdn.setCrdnSeCd(infoCrdn.string("CRDN_SE_CD")); // 단속 구분 코드
// crdn.setLevyId(""); // 부과 ID newCrdn.setTeamId(infoCrdn.string("TEAM_ID")); // 조 ID
crdn.setCrdnSttsCd("01"); // 단속 상태 코드 newCrdn.setDtlCrdnPlc(infoCrdn.string("DTL_CRDN_PLC")); // 상세 단속 장소
crdn.setCrdnSttsChgDt(""); // 단속 상태 변경 일시 newCrdn.setCrdnSpareaCd(infoCrdn.string("CRDN_SPAREA_CD")); // 단속 특별구역 코드
crdn.setAdtnAmt(0); // 가산 금액 newCrdn.setCrdnBgngTm(infoCrdn.string("CRDN_BGNG_TM")); // 단속 시작 시각
crdn.setMinusAmt(0); // 감경 금액 newCrdn.setCrdnEndTm(infoCrdn.string("CRDN_END_TM")); // 단속 종료 시각
crdn.setRcvmtAmt(0); // 수납 금액 newCrdn.setCrdnSn(infoCrdn.string("CRDN_SN")); // 단속 일련번호
crdn.setBfrCrdnId(infoCrdn.string("CRDN_ID")); // 이전 단속 ID newCrdn.setMoscX(infoCrdn.string("MOSC_X")); // 모자이크 X
crdn.setDelYn("N"); newCrdn.setMoscY(infoCrdn.string("MOSC_Y")); // 모자이크 Y
newCrdn.setTowngYn(infoCrdn.string("TOWNG_YN")); // 견인 여부
newCrdn.setUseFuelCd(infoCrdn.string("USE_FUEL_CD")); // 사용 연료 코드
newCrdn.setFfnlgCarmdlCd(infoCrdn.string("FFNLG_CARMDL_CD")); // 과태료 차종 코드
newCrdn.setParkngPsbltyRsltCd(infoCrdn.string("PARKNG_PSBLTY_RSLT_CD")); // 주차 가능 결과 코드
newCrdn.setVltnNmtm(infoCrdn.string("VLTN_NMTM")); // 위반 횟수
newCrdn.setOvtimeYn(infoCrdn.string("OVTIME_YN")); // 시간외 여부
// 재등록 단속 파일 정보(TB_FILE)
List<FileInfo> newFileInfoList = new ArrayList<FileInfo>();
// 현재 경로를 구한다.
String curWorkingDir = System.getProperty("user.dir");
if (!infoCrdnFileList.isEmpty() && infoCrdnFileList.size() > 0) {
List<File> files = new ArrayList<>();
for (int iLoop = 0; iLoop < infoCrdnFileList.size(); iLoop++) {
files.add(new File(curWorkingDir + File.separator + infoCrdnFileList.get(iLoop).string("FILE_PATH")));
}
newFileInfoList = new FileInfoFactory().createFileInfos(null, files);
}
// 단속 대장 입력 // 단속 대장 입력
retSuccess = crdnService.create(null, crdn, null); retSuccess = crdnService.create(null, newCrdn, newFileInfoList);
if (!retSuccess) { if (!retSuccess) {
// 예외를 발생시켜서 오류메세지를 보내고 DB Rollback // 예외를 발생시켜서 오류메세지를 보내고 DB Rollback
throw new RuntimeException("재부과 등록 중 단속대장 등록에 실패하였습니다."); throw new RuntimeException("재부과 등록 중 단속대장 등록에 실패하였습니다.");
} }
// 단속 대장 사진 복사
// 재부과 대장 등록 // 재부과 대장 등록
excl03.setCrdnId(crdn.getCrdnId()); excl03.setCrdnId(newCrdn.getCrdnId());
excl03.setCrdnRegSeCd("03"); excl03.setCrdnRegSeCd("03");
retSuccess = excl03Bean.create(excl03); retSuccess = excl03Bean.create(excl03);
@ -127,10 +157,7 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
throw new RuntimeException("재부과 대장 등록에 실패하였습니다."); throw new RuntimeException("재부과 대장 등록에 실패하였습니다.");
} }
// 처리 성공 return true;
retSuccess = true;
return retSuccess;
} }
@Override @Override
@ -139,4 +166,3 @@ public class Excl03ServiceBean extends AbstractServiceBean implements Excl03Serv
} }
} }

@ -81,9 +81,11 @@ public class Excl01Controller extends ApplicationController {
public ModelAndView getLevyExclInfo(Excl01Query req) { public ModelAndView getLevyExclInfo(Excl01Query req) {
DataObject levyExclInfo = excl01Service.getLevyExclInfo(req); DataObject levyExclInfo = excl01Service.getLevyExclInfo(req);
if(req.getLevyExclId() == null && !levyExclInfo.string("LEVY_EXCL_ID").equals("")) { if (req.getLevyExclId() == null && !levyExclInfo.string("LEVY_EXCL_ID").equals("")) {
ModelAndView mav = new ModelAndView("jsonView"); ModelAndView mav = new ModelAndView("jsonView");
mav.addObject("message","등록된 부과제외 정보가 있습니다.");
mav.addObject("message", "등록된 부과제외 정보가 있습니다.");
return mav; return mav;
} }

@ -37,28 +37,26 @@
, A.DEL_DT /* 삭제 일시 */ , A.DEL_DT /* 삭제 일시 */
, A.DLTR /* 삭제자 */ , A.DLTR /* 삭제자 */
, A.DEL_RSN /* 삭제 사유 */ , A.DEL_RSN /* 삭제 사유 */
, C.SGG_CD /* 시군구 코드 */ , H.SGG_CD /* 시군구 코드 */
, C.TASK_SE_CD /* 업무 구분 코드 */ , H.TASK_SE_CD /* 업무 구분 코드 */
, C.CRDN_INPT_SE_CD /* 단속 입력 구분 코드 */ , H.CRDN_INPT_SE_CD /* 단속 입력 구분 코드 */
, (SELECT FN_GET_CODE_NM('FIM003', C.CRDN_INPT_SE_CD) FROM DUAL) AS CRDN_INPT_SE_NM /* 단속 입력 구분 명 */ , (SELECT FN_GET_CODE_NM('FIM003', H.CRDN_INPT_SE_CD) FROM DUAL) AS CRDN_INPT_SE_NM /* 단속 입력 구분 명 */
, C.CRDN_SE_CD /* 단속 구분 코드 */ , H.CRDN_YMD /* 단속 일자 */
, (SELECT FN_GET_CODE_NM('FIM002', C.CRDN_SE_CD) FROM DUAL) AS CRDN_SE_NM /* 단속 구분 명 */ , H.CRDN_TM /* 단속 시각 */
, C.CRDN_YMD /* 단속 일자 */ , (CONCAT(H.CRDN_YMD, H.CRDN_TM)) AS CRDN_YMD_TM /* 단속 일시 */
, C.CRDN_TM /* 단속 시각 */ , H.VHRNO /* 차량번호 */
, (CONCAT(C.CRDN_YMD, C.CRDN_TM)) AS CRDN_YMD_TM /* 단속 일시 */ , H.CRDN_STDG_NM /* 단속 법정동 명 */
, C.VHRNO /* 차량번호 */ , H.CRDN_ROAD_NM /* 단속 도로 명 */
, C.CRDN_STDG_NM /* 단속 법정동 명 */ , H.CRDN_PLC /* 단속 장소 */
, C.CRDN_ROAD_NM /* 단속 도로 명 */ , H.ATCH_FILE_CNT /* 첨부 파일 수 */
, C.CRDN_PLC /* 단속 장소 */ , H.FFNLG_AMT /* 과태료 금액 */
, C.DTL_CRDN_PLC /* 상세 단속 장소 */ , H.LEVY_AMT /* 부과 금액 */
, C.ATCH_FILE_CNT /* 첨부 파일 수 */ , H.ADVNTCE_LEVY_AMT /* 사전통지 부과 금액 */
, C.FFNLG_AMT /* 과태료 금액 */ , H.CRDN_STTS_CD /* 단속 상태 코드 */
, C.LEVY_AMT /* 부과 금액 */ , (SELECT FN_GET_CODE_NM('FIM010', H.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */
, C.ADVNTCE_LEVY_AMT /* 사전통지 부과 금액 */ FROM TB_CRDN_RE_REG A
, C.CRDN_STTS_CD /* 단속 상태 코드 */ INNER JOIN TB_CRDN H ON (A.CRDN_ID = H.CRDN_ID)
, (SELECT FN_GET_CODE_NM('FIM010', C.CRDN_STTS_CD) FROM DUAL) AS CRDN_STTS_NM /* 단속 상태 명 */ INNER JOIN TB_CRDN_ADI I ON (H.CRDN_ID = I.CRDN_ID)
FROM TB_CRDN_RE_REG A
INNER JOIN TB_CRDN C ON (A.CRDN_ID = C.CRDN_ID)
</sql> </sql>
<select id="selectCrdnReRegList" parameterType="map" resultType="dataobject">/* 단속 재등록 목록 조회(excl03Mapper.selectCrdnReRegList) */ <select id="selectCrdnReRegList" parameterType="map" resultType="dataobject">/* 단속 재등록 목록 조회(excl03Mapper.selectCrdnReRegList) */
@ -66,8 +64,8 @@
<include refid="selectList" /> <include refid="selectList" />
WHERE A.DEL_YN = 'N' /* 삭제 여부 */ WHERE A.DEL_YN = 'N' /* 삭제 여부 */
AND A.CRDN_REG_SE_CD = '03' /* 단속 등록 구분 코드 - FIM026 */ AND A.CRDN_REG_SE_CD = '03' /* 단속 등록 구분 코드 - FIM026 */
AND C.SGG_CD = #{sggCd} /* 시군구 코드 */ AND H.SGG_CD = #{sggCd} /* 시군구 코드 */
AND C.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */ AND H.TASK_SE_CD = #{taskSeCd} /* 업무 구분 코드 */
<if test="schReRegYmdFrom != null"> <if test="schReRegYmdFrom != null">
AND A.RE_REG_YMD <![CDATA[ >= ]]> #{schReRegYmdFrom} /* 재등록 일자 시작 */ AND A.RE_REG_YMD <![CDATA[ >= ]]> #{schReRegYmdFrom} /* 재등록 일자 시작 */
</if> </if>
@ -75,13 +73,13 @@
AND A.RE_REG_YMD <![CDATA[ <= ]]> #{schReRegYmdTo} /* 재등록 일자 종료 */ AND A.RE_REG_YMD <![CDATA[ <= ]]> #{schReRegYmdTo} /* 재등록 일자 종료 */
</if> </if>
<if test="schCrdnYmdFrom != null"> <if test="schCrdnYmdFrom != null">
AND C.CRDN_YMD <![CDATA[ >= ]]> #{schCrdnYmdFrom} /* 단속 일자 시작 */ AND H.CRDN_YMD <![CDATA[ >= ]]> #{schCrdnYmdFrom} /* 단속 일자 시작 */
</if> </if>
<if test="schCrdnYmdTo != null"> <if test="schCrdnYmdTo != null">
AND C.CRDN_YMD <![CDATA[ <= ]]> #{schCrdnYmdTo} /* 단속 일자 종료 */ AND H.CRDN_YMD <![CDATA[ <= ]]> #{schCrdnYmdTo} /* 단속 일자 종료 */
</if> </if>
<if test = "schVhrno != null"> <if test = "schVhrno != null">
AND C.VHRNO = #{schVhrno} /* 차량번호 */ AND H.VHRNO = #{schVhrno} /* 차량번호 */
</if> </if>
<if test="by != null and by != '' and term != null"> <if test="by != null and by != '' and term != null">
<choose> <choose>
@ -91,12 +89,12 @@
<when test="by == 'reRegYmd'"> A.RE_REG_YMD </when> <when test="by == 'reRegYmd'"> A.RE_REG_YMD </when>
<when test="by == 'crdnRegSeNm'"> A.CRDN_REG_SE_CD </when> <when test="by == 'crdnRegSeNm'"> A.CRDN_REG_SE_CD </when>
<when test="by == 'etcCn'"> A.ETC_CN </when> <when test="by == 'etcCn'"> A.ETC_CN </when>
<when test="by == 'crdnYmd'"> C.CRDN_YMD </when> <when test="by == 'crdnYmd'"> H.CRDN_YMD </when>
<when test="by == 'vhrno'"> C.VHRNO </when> <when test="by == 'vhrno'"> H.VHRNO </when>
<when test="by == 'crdnStdgNm'"> C.CRDN_STDG_NM </when> <when test="by == 'crdnStdgNm'"> H.CRDN_STDG_NM </when>
<when test="by == 'crdnPlc'"> C.CRDN_PLC </when> <when test="by == 'crdnPlc'"> H.CRDN_PLC </when>
<when test="by == 'ffnlgAmt'"> C.FFNLG_AMT </when> <when test="by == 'ffnlgAmt'"> H.FFNLG_AMT </when>
<when test="by == 'crdnSttsNm'"> C.CRDN_STTS_CD </when> <when test="by == 'crdnSttsNm'"> H.CRDN_STTS_CD </when>
</choose> </choose>
<include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" /> <include refid="dynamicSearch.center" />#{term}<include refid="dynamicSearch.end" />
</when> </when>
@ -178,55 +176,30 @@
AND DEL_YN = 'N' /* 삭제 여부 */ AND DEL_YN = 'N' /* 삭제 여부 */
</update> </update>
<select id="selectCrdnInfo" parameterType="map" resultType="dataobject">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdnInfo) */ <select id="selectCrdn" parameterType="map" resultType="dataobject">/* 단속 재등록 객체 가져오기(excl03Mapper.selectCrdn) */
SELECT A.CRDN_ID SELECT A.CRDN_ID
, A.SGG_CD , A.SGG_CD
, A.TASK_SE_CD , A.TASK_SE_CD
, A.CRDN_REG_SE_CD , A.CRDN_REG_SE_CD
, A.CRDN_INPT_SE_CD , A.CRDN_INPT_SE_CD
, A.CVLCPT_LINK_YN
, A.LINK_TBL_NM , A.LINK_TBL_NM
, A.LINK_ID , A.LINK_ID
, A.RTPYR_ID , A.RTPYR_ID
, A.CRDN_SE_CD
, A.CRDN_YMD , A.CRDN_YMD
, A.CRDN_TM , A.CRDN_TM
, A.VHRNO , A.VHRNO
, A.CRDN_STDG_NM , A.CRDN_STDG_NM
, A.CRDN_ROAD_NM , A.CRDN_ROAD_NM
, A.CRDN_PLC , A.CRDN_PLC
, A.DTL_CRDN_PLC
, A.TEAM_ID
, A.VLTN_ID , A.VLTN_ID
, (SELECT VLTN_CD FROM TB_VLTN_INFO X WHERE X.VLTN_ID = A.VLTN_ID AND X.SGG_CD = A.SGG_CD AND X.TASK_SE_CD = A.TASK_SE_CD) AS VLTN_CD , (SELECT VLTN_CD FROM TB_VLTN_INFO X WHERE X.VLTN_ID = A.VLTN_ID AND X.SGG_CD = A.SGG_CD AND X.TASK_SE_CD = A.TASK_SE_CD) AS VLTN_CD
, A.CRDN_SPAREA_CD
, A.CRDN_BGNG_TM
, A.CRDN_END_TM
, A.CRDN_SN
, A.GPS_X , A.GPS_X
, A.GPS_Y , A.GPS_Y
, A.MOSC_X
, A.MOSC_Y
, A.TOWNG_YN
, A.ATCH_FILE_CNT , A.ATCH_FILE_CNT
, A.VIN , A.VIN
, A.VHCL_NM , A.VHCL_NM
, A.VHCL_COLOR , A.VHCL_COLOR
, A.USE_FUEL_CD
, A.USG_SE_CD
, A.MXMM_LOAD_QY
, A.TKCAR_PSNCPA_CNT
, A.CARMDL_ASORT_NM
, A.CARMDL_TYPE_NM
, A.CARMDL_CLSF_NM
, A.ERSR_YMD
, A.FFNLG_CARMDL_CD
, A.PARKNG_PSBLTY_RSLT_CD
, A.VLTN_NMTM
, A.OVTIME_YN
, A.RVW_SE_CD
, A.RVW_PRCS_SCRN_NM
, A.RVW_DT
, A.RVWR
, A.FFNLG_AMT , A.FFNLG_AMT
, A.FFNLG_RDUCT_RT , A.FFNLG_RDUCT_RT
, A.LEVY_AMT , A.LEVY_AMT
@ -245,7 +218,23 @@
, A.DEL_YN /* 삭제 여부 */ , A.DEL_YN /* 삭제 여부 */
, A.REG_DT /* 등록 일시 */ , A.REG_DT /* 등록 일시 */
, A.RGTR /* 등록자 */ , A.RGTR /* 등록자 */
FROM TB_CRDN A , B.CRDN_SE_CD
, B.TEAM_ID
, B.DTL_CRDN_PLC
, B.CRDN_SPAREA_CD
, B.CRDN_BGNG_TM
, B.CRDN_END_TM
, B.CRDN_SN
, B.MOSC_X
, B.MOSC_Y
, B.TOWNG_YN
, B.USE_FUEL_CD
, B.FFNLG_CARMDL_CD
, B.PARKNG_PSBLTY_RSLT_CD
, B.VLTN_NMTM
, B.OVTIME_YN
FROM TB_CRDN A
INNER JOIN TB_CRDN_ADI B ON (A.CRDN_ID = B.CRDN_ID)
WHERE A.CRDN_ID = #{crdnId} /* 단속 ID */ WHERE A.CRDN_ID = #{crdnId} /* 단속 ID */
</select> </select>

@ -489,8 +489,7 @@
let formFields = new FimsFormFields("#frmSearch--${pageName}"); let formFields = new FimsFormFields("#frmSearch--${pageName}");
let formData = formFields.get(); let formData = formFields.get();
formData.sggCd = "41480"; // 시군구 코드 임시 formData.sggCd = "41480"; // 시군구 코드 임시
formData.fetchSize = 30; // 한번에 30건씩 조회
return formData; return formData;
} }
@ -506,6 +505,7 @@
if (!pageNumber) pageNumber = 1; if (!pageNumber) pageNumber = 1;
${pageName}Control.query = fnGetParams${pageName}(); // 검색조건 ${pageName}Control.query = fnGetParams${pageName}(); // 검색조건
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.load(pageNumber); ${pageName}Control.load(pageNumber);
} }

@ -469,7 +469,6 @@
let formData = formFields.get(); let formData = formFields.get();
formData.sggCd = "41480"; // 시군구 코드 임시 formData.sggCd = "41480"; // 시군구 코드 임시
formData.fetchSize = 30; // 한번에 30건씩 조회
return formData; return formData;
} }
@ -485,6 +484,7 @@
if (!pageNumber) pageNumber = 1; if (!pageNumber) pageNumber = 1;
${pageName}Control.query = fnGetParams${pageName}(); // 검색조건 ${pageName}Control.query = fnGetParams${pageName}(); // 검색조건
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.load(pageNumber); ${pageName}Control.load(pageNumber);
} }

@ -120,7 +120,8 @@
<!-- 의견 제출 요지 --> <!-- 의견 제출 요지 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label> <label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label>
<input type="text" class="form-control w-85" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" data-maxlengthb="300" /> <textarea class="form-control w-85" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" rows="2" data-maxlengthb="300">
</textarea>
</div> </div>
<!-- 담당자 검토 의견 --> <!-- 담당자 검토 의견 -->
<div class="col-md-12"> <div class="col-md-12">

@ -35,12 +35,13 @@
<!-- 의견 제출 요지 --> <!-- 의견 제출 요지 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label> <label for="opnnSbmsnGist--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">의견제출 요지</label>
<input type="text" class="form-control w-80" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" data-maxlengthb="300" readonly /> <textarea class="form-control w-80" id="opnnSbmsnGist--${pageName}" name="opnnSbmsnGist" data-map="OPNN_SBMSN_GIST" rows="2" data-maxlengthb="300" readonly>
</textarea>
</div> </div>
<!-- 담당자 검토 의견 --> <!-- 담당자 검토 의견 -->
<div class="col-md-12"> <div class="col-md-12">
<label for="picRvwOpnn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">검토 의견</label> <label for="picRvwOpnn--${pageName}" class="w-px-120 bg-lighter pe-2 col-form-label text-sm-end">검토 의견</label>
<textarea class="form-control w-80" id="picRvwOpnn--${pageName}" name="picRvwOpnn" data-map="PIC_RVW_OPNN" rows="3" data-maxlengthb="1000"> <textarea class="form-control w-80" id="picRvwOpnn--${pageName}" name="picRvwOpnn" data-map="PIC_RVW_OPNN" rows="5" data-maxlengthb="1000">
</textarea> </textarea>
</div> </div>
<!-- 통보 구분 코드 --> <!-- 통보 구분 코드 -->
@ -180,7 +181,7 @@
initDatepicker("frmEdit--${pageName}"); initDatepicker("frmEdit--${pageName}");
$("#ansYmd--${pageName}").datepicker("setDate", new Date()); $("#ansYmd--${pageName}").datepicker("setDate", new Date());
$("#ansTm--${pageName}").val(new Date().toTimeString().split(' ')[0]); // "09:51:35 GMT+0900 (한국 표준시)"의 형식에서 공백을 기준으로 잘라 시간 부분만 가져와줍니다. $("#ansTm--${pageName}").val(new Date().toTimeString().split(" ")[0]); // "09:51:35 GMT+0900 (한국 표준시)"의 형식에서 공백을 기준으로 잘라 시간 부분만 가져와줍니다.
} }
// 이벤트 설정 // 이벤트 설정
@ -245,6 +246,14 @@
// Dataset 셋팅 - 단건일 경우 setData // Dataset 셋팅 - 단건일 경우 setData
${pageName}Control.setData([${opnnSbmsnInfo}]); ${pageName}Control.setData([${opnnSbmsnInfo}]);
// 날짜, 시간
if ($("#ansYmd--${pageName}").val() == "") {
$("#ansYmd--${pageName}").datepicker("setDate", new Date());
}
if ($("#ansTm--${pageName}").val() == "") {
$("#ansTm--${pageName}").val(new Date().toTimeString().split(" ")[0]); // "09:51:35 GMT+0900 (한국 표준시)"의 형식에서 공백을 기준으로 잘라 시간 부분만 가져와줍니다.
}
}); });
// #sourceURL=excl01020-info.jsp // #sourceURL=excl01020-info.jsp

@ -407,7 +407,6 @@
let formData = formFields.get(); let formData = formFields.get();
formData.sggCd = "41480"; // 시군구 코드 임시 formData.sggCd = "41480"; // 시군구 코드 임시
formData.fetchSize = 30; // 한번에 30건씩 조회
return formData; return formData;
} }
@ -423,6 +422,7 @@
if (!pageNumber) pageNumber = 1; if (!pageNumber) pageNumber = 1;
${pageName}Control.query = fnGetParams${pageName}(); // 검색조건 ${pageName}Control.query = fnGetParams${pageName}(); // 검색조건
${pageName}Control.query.fetchSize = FETCH_XS; // 한번에 조회되는 건수 - 30건
${pageName}Control.load(pageNumber); ${pageName}Control.load(pageNumber);
} }

Loading…
Cancel
Save