|
|
|
|
@ -91,7 +91,6 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
*
|
|
|
|
|
* @param paramVO 검색 조건을 담은 VO 객체
|
|
|
|
|
* @return 단속 목록과 성공 상태를 담은 ResponseEntity 객체
|
|
|
|
|
* @throws Exception 조회 중 발생할 수 있는 예외
|
|
|
|
|
*/
|
|
|
|
|
@Operation(summary = "단속 목록 조회 (AJAX)", description = "단속 목록을 조회하고 JSON 형식으로 반환합니다.")
|
|
|
|
|
@ApiResponses(value = {
|
|
|
|
|
@ -122,7 +121,7 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
* @param model 모델 객체
|
|
|
|
|
* @return 단속 등록/수정 팝업 화면
|
|
|
|
|
*/
|
|
|
|
|
@GetMapping("/popup.do")
|
|
|
|
|
@GetMapping("/crdnRegistPopup.do")
|
|
|
|
|
@Operation(summary = "단속 등록/수정 팝업", description = "단속 등록/수정/조회 팝업 화면을 제공합니다.")
|
|
|
|
|
public ModelAndView popup(
|
|
|
|
|
@Parameter(description = "단속 연도") @RequestParam(required = false) String crdnYr,
|
|
|
|
|
@ -130,32 +129,26 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@Parameter(description = "화면 모드 (C:등록, U:수정, V:보기)") @RequestParam String mode,
|
|
|
|
|
Model model) {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
log.debug("단속 팝업 화면 요청 - 모드: {}, 단속연도: {}, 단속번호: {}", mode, crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
ModelAndView mav = new ModelAndView("crdn/crndRegistAndView/main/crdnRegistPopup" + TilesConstants.POPUP);
|
|
|
|
|
mav.addObject("mode", mode);
|
|
|
|
|
log.debug("단속 팝업 화면 요청 - 모드: {}, 단속연도: {}, 단속번호: {}", mode, crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
ModelAndView mav = new ModelAndView("crdn/crndRegistAndView/main/crdnRegistPopup" + TilesConstants.POPUP);
|
|
|
|
|
mav.addObject("mode", mode);
|
|
|
|
|
|
|
|
|
|
// 수정/조회 모드인 경우 기존 데이터 조회
|
|
|
|
|
if (("U".equals(mode) || "V".equals(mode)) && crdnYr != null && crdnNo != null) {
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
|
|
|
|
|
// 수정/조회 모드인 경우 기존 데이터 조회
|
|
|
|
|
if (("U".equals(mode) || "V".equals(mode)) && crdnYr != null && crdnNo != null) {
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO data = service.selectOne(paramVO);
|
|
|
|
|
if (data != null) {
|
|
|
|
|
mav.addObject("data", data);
|
|
|
|
|
} else {
|
|
|
|
|
throw new MessageException("해당 단속 정보를 찾을 수 없습니다.");
|
|
|
|
|
}
|
|
|
|
|
CrdnRegistAndViewVO data = service.selectOne(paramVO);
|
|
|
|
|
if (data != null) {
|
|
|
|
|
mav.addObject("data", data);
|
|
|
|
|
} else {
|
|
|
|
|
throw new MessageException("해당 단속 정보를 찾을 수 없습니다.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return mav;
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("단속 팝업 화면 제공 중 오류 발생", e);
|
|
|
|
|
throw new MessageException("팝업 화면을 불러오는 중 오류가 발생했습니다.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return mav;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@ -174,36 +167,30 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@Parameter(description = "단속 번호") @RequestParam String crdnNo,
|
|
|
|
|
Model model) {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
log.debug("단속 상세보기 페이지 요청 - 단속연도: {}, 단속번호: {}", crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
// 파라미터를 모델에 추가하여 JSP에서 사용할 수 있도록 함
|
|
|
|
|
model.addAttribute("crdnYr", crdnYr);
|
|
|
|
|
model.addAttribute("crdnNo", crdnNo);
|
|
|
|
|
|
|
|
|
|
// 상세보기에 필요한 공통코드 조회 (list 메서드와 동일)
|
|
|
|
|
// 지역구분 코드 조회
|
|
|
|
|
CmmnCodeSearchVO rgnSeCdSearchVO = CmmnCodeSearchVO.builder()
|
|
|
|
|
.searchCdGroupId("RGN_SE_CD")
|
|
|
|
|
.sortColumn("SORT_ORDR")
|
|
|
|
|
.sortAscending(true)
|
|
|
|
|
.build();
|
|
|
|
|
model.addAttribute("regionList", commonCodeService.selectCodeDetailList(rgnSeCdSearchVO));
|
|
|
|
|
log.debug("단속 상세보기 페이지 요청 - 단속연도: {}, 단속번호: {}", crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
// 파라미터를 모델에 추가하여 JSP에서 사용할 수 있도록 함
|
|
|
|
|
model.addAttribute("crdnYr", crdnYr);
|
|
|
|
|
model.addAttribute("crdnNo", crdnNo);
|
|
|
|
|
|
|
|
|
|
// 상세보기에 필요한 공통코드 조회 (list 메서드와 동일)
|
|
|
|
|
// 지역구분 코드 조회
|
|
|
|
|
CmmnCodeSearchVO rgnSeCdSearchVO = CmmnCodeSearchVO.builder()
|
|
|
|
|
.searchCdGroupId("RGN_SE_CD")
|
|
|
|
|
.sortColumn("SORT_ORDR")
|
|
|
|
|
.sortAscending(true)
|
|
|
|
|
.build();
|
|
|
|
|
model.addAttribute("regionList", commonCodeService.selectCodeDetailList(rgnSeCdSearchVO));
|
|
|
|
|
|
|
|
|
|
// 적발방법 코드 조회
|
|
|
|
|
CmmnCodeSearchVO dsclMthdCdSearchVO = CmmnCodeSearchVO.builder()
|
|
|
|
|
.searchCdGroupId("DSCL_MTHD_CD")
|
|
|
|
|
.sortColumn("CD_NM")
|
|
|
|
|
.sortAscending(true)
|
|
|
|
|
.build();
|
|
|
|
|
model.addAttribute("dsclMthdCdList", commonCodeService.selectCodeDetailList(dsclMthdCdSearchVO));
|
|
|
|
|
|
|
|
|
|
return "crdn/crndRegistAndView/main/detailView" + TilesConstants.BASE;
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("단속 상세보기 페이지 제공 중 오류 발생", e);
|
|
|
|
|
throw new MessageException("상세보기 페이지를 불러오는 중 오류가 발생했습니다.");
|
|
|
|
|
}
|
|
|
|
|
// 적발방법 코드 조회
|
|
|
|
|
CmmnCodeSearchVO dsclMthdCdSearchVO = CmmnCodeSearchVO.builder()
|
|
|
|
|
.searchCdGroupId("DSCL_MTHD_CD")
|
|
|
|
|
.sortColumn("CD_NM")
|
|
|
|
|
.sortAscending(true)
|
|
|
|
|
.build();
|
|
|
|
|
model.addAttribute("dsclMthdCdList", commonCodeService.selectCodeDetailList(dsclMthdCdSearchVO));
|
|
|
|
|
|
|
|
|
|
return "crdn/crndRegistAndView/main/detailView" + TilesConstants.BASE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
@ -211,7 +198,6 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
*
|
|
|
|
|
* @param paramVO 등록할 단속 정보를 담은 VO 객체
|
|
|
|
|
* @return 등록 결과와 성공 상태를 담은 ResponseEntity 객체
|
|
|
|
|
* @throws Exception 등록 중 발생할 수 있는 예외
|
|
|
|
|
*/
|
|
|
|
|
@Operation(summary = "단속 등록", description = "새로운 단속 정보를 등록합니다.")
|
|
|
|
|
@ApiResponses(value = {
|
|
|
|
|
@ -220,18 +206,8 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@ApiResponse(description = "오류로 인한 실패")
|
|
|
|
|
})
|
|
|
|
|
@PostMapping("/insert.ajax")
|
|
|
|
|
public ResponseEntity<?> insert(@ModelAttribute CrdnRegistAndViewVO paramVO) throws Exception {
|
|
|
|
|
// 등록자 정보 설정
|
|
|
|
|
paramVO.setRgtr(SessionUtil.getUserId());
|
|
|
|
|
|
|
|
|
|
// 시군구 코드 설정 (세션의 조직 코드 사용)
|
|
|
|
|
paramVO.setSggCd(SessionUtil.getSessionVO().getUser().getOrgCd());
|
|
|
|
|
|
|
|
|
|
// 단속 처리 상태 코드 초기값 설정 (10: 단속)
|
|
|
|
|
paramVO.setCrdnPrcsSttsCd(CrdnPrcsSttsConstants.CRDN_PRCS_STTS_CD_10_CRDN);
|
|
|
|
|
|
|
|
|
|
// 단속 처리 일자는 null로 설정 (기본적으로 null)
|
|
|
|
|
paramVO.setCrdnPrcsYmd(null);
|
|
|
|
|
public ResponseEntity<?> insert(@ModelAttribute CrdnRegistAndViewVO paramVO) {
|
|
|
|
|
log.debug("단속 정보 등록 요청 - 단속연도: {}, 단속번호: {}", paramVO.getCrdnYr(), paramVO.getCrdnNo());
|
|
|
|
|
|
|
|
|
|
int result = service.insert(paramVO);
|
|
|
|
|
|
|
|
|
|
@ -247,7 +223,6 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
*
|
|
|
|
|
* @param paramVO 수정할 단속 정보를 담은 VO 객체
|
|
|
|
|
* @return 수정 결과와 성공 상태를 담은 ResponseEntity 객체
|
|
|
|
|
* @throws Exception 수정 중 발생할 수 있는 예외
|
|
|
|
|
*/
|
|
|
|
|
@Operation(summary = "단속 수정", description = "기존 단속 정보를 수정합니다.")
|
|
|
|
|
@ApiResponses(value = {
|
|
|
|
|
@ -256,7 +231,9 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@ApiResponse(description = "오류로 인한 실패")
|
|
|
|
|
})
|
|
|
|
|
@PostMapping("/update.ajax")
|
|
|
|
|
public ResponseEntity<?> update(@ModelAttribute CrdnRegistAndViewVO paramVO) throws Exception {
|
|
|
|
|
public ResponseEntity<?> update(@ModelAttribute CrdnRegistAndViewVO paramVO) {
|
|
|
|
|
log.debug("단속 정보 수정 요청 - 단속연도: {}, 단속번호: {}", paramVO.getCrdnYr(), paramVO.getCrdnNo());
|
|
|
|
|
|
|
|
|
|
int result = service.update(paramVO);
|
|
|
|
|
|
|
|
|
|
if (result > 0) {
|
|
|
|
|
@ -272,7 +249,6 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
* @param crdnYr 단속 연도
|
|
|
|
|
* @param crdnNo 단속 번호
|
|
|
|
|
* @return 삭제 결과와 성공 상태를 담은 ResponseEntity 객체
|
|
|
|
|
* @throws Exception 삭제 중 발생할 수 있는 예외
|
|
|
|
|
*/
|
|
|
|
|
@Operation(summary = "단속 삭제", description = "단속 정보를 삭제(논리삭제)합니다.")
|
|
|
|
|
@ApiResponses(value = {
|
|
|
|
|
@ -281,7 +257,9 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@ApiResponse(description = "오류로 인한 실패")
|
|
|
|
|
})
|
|
|
|
|
@PostMapping("/delete.ajax")
|
|
|
|
|
public ResponseEntity<?> delete(@RequestParam String crdnYr, @RequestParam String crdnNo) throws Exception {
|
|
|
|
|
public ResponseEntity<?> delete(@RequestParam String crdnYr, @RequestParam String crdnNo) {
|
|
|
|
|
log.debug("단속 정보 삭제 요청 - 단속연도: {}, 단속번호: {}", crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
@ -308,24 +286,18 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
@Parameter(description = "단속 연도") @RequestParam String crdnYr,
|
|
|
|
|
@Parameter(description = "단속 번호") @RequestParam String crdnNo) {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
log.debug("단속 상세 조회 요청 - 단속연도: {}, 단속번호: {}", crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO result = service.selectOne(paramVO);
|
|
|
|
|
|
|
|
|
|
if (result != null) {
|
|
|
|
|
return ApiResponseUtil.success(result, "단속 정보 조회가 완료되었습니다.");
|
|
|
|
|
} else {
|
|
|
|
|
return ApiResponseUtil.error("해당 단속 정보를 찾을 수 없습니다.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("단속 상세 조회 중 오류 발생", e);
|
|
|
|
|
return ApiResponseUtil.error("단속 정보 조회 중 오류가 발생했습니다.");
|
|
|
|
|
log.debug("단속 상세 조회 요청 - 단속연도: {}, 단속번호: {}", crdnYr, crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO result = service.selectOne(paramVO);
|
|
|
|
|
|
|
|
|
|
if (result != null) {
|
|
|
|
|
return ApiResponseUtil.success(result, "단속 정보 조회가 완료되었습니다.");
|
|
|
|
|
} else {
|
|
|
|
|
return ApiResponseUtil.error("해당 단속 정보를 찾을 수 없습니다.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -348,27 +320,21 @@ public class CrdnRegistAndViewController {
|
|
|
|
|
public ResponseEntity<?> updateStatus(
|
|
|
|
|
@Parameter(description = "단속 연도") @RequestParam String crdnYr,
|
|
|
|
|
@Parameter(description = "단속 번호") @RequestParam String crdnNo,
|
|
|
|
|
@Parameter(description = "처리 상태 코드") @RequestParam String crdnPrcsSttsCd) throws Exception {
|
|
|
|
|
@Parameter(description = "처리 상태 코드") @RequestParam String crdnPrcsSttsCd) {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
log.debug("단속 상태 업데이트 요청 - 단속연도: {}, 단속번호: {}, 상태코드: {}", crdnYr, crdnNo, crdnPrcsSttsCd);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
paramVO.setCrdnPrcsSttsCd(crdnPrcsSttsCd);
|
|
|
|
|
|
|
|
|
|
int result = service.updateStatus(paramVO);
|
|
|
|
|
|
|
|
|
|
if (result > 0) {
|
|
|
|
|
return ApiResponseUtil.success("단속 상태가 성공적으로 업데이트되었습니다.");
|
|
|
|
|
} else {
|
|
|
|
|
return ApiResponseUtil.error("단속 상태 업데이트에 실패했습니다.");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("단속 상태 업데이트 중 오류 발생", e);
|
|
|
|
|
return ApiResponseUtil.error("단속 상태 업데이트 중 오류가 발생했습니다.");
|
|
|
|
|
log.debug("단속 상태 업데이트 요청 - 단속연도: {}, 단속번호: {}, 상태코드: {}", crdnYr, crdnNo, crdnPrcsSttsCd);
|
|
|
|
|
|
|
|
|
|
CrdnRegistAndViewVO paramVO = new CrdnRegistAndViewVO();
|
|
|
|
|
paramVO.setCrdnYr(crdnYr);
|
|
|
|
|
paramVO.setCrdnNo(crdnNo);
|
|
|
|
|
paramVO.setCrdnPrcsSttsCd(crdnPrcsSttsCd);
|
|
|
|
|
|
|
|
|
|
int result = service.updateStatus(paramVO);
|
|
|
|
|
|
|
|
|
|
if (result > 0) {
|
|
|
|
|
return ApiResponseUtil.success("단속 상태가 성공적으로 업데이트되었습니다.");
|
|
|
|
|
} else {
|
|
|
|
|
return ApiResponseUtil.error("단속 상태 업데이트에 실패했습니다.");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|