diff --git a/src/main/java/go/kr/project/biz/minwon/dayanswer/service/impl/DayAnswerServiceImpl.java b/src/main/java/go/kr/project/biz/minwon/dayanswer/service/impl/DayAnswerServiceImpl.java index d3d67ec..ff39bd4 100644 --- a/src/main/java/go/kr/project/biz/minwon/dayanswer/service/impl/DayAnswerServiceImpl.java +++ b/src/main/java/go/kr/project/biz/minwon/dayanswer/service/impl/DayAnswerServiceImpl.java @@ -3,6 +3,7 @@ package go.kr.project.biz.minwon.dayanswer.service.impl; import go.kr.project.biz.minwon.dayanswer.mapper.DayAnswerMapper; import go.kr.project.biz.minwon.dayanswer.model.DayAnswerDto; import go.kr.project.biz.minwon.dayanswer.service.DayAnswerService; +import go.kr.project.vo.code.AsStateEnum; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.poi.ss.usermodel.Cell; @@ -29,51 +30,14 @@ public class DayAnswerServiceImpl extends EgovAbstractServiceImpl implements Day @Override public List selectAllDayAnswer(DayAnswerDto.Request.Search dto) { -//log.info("검색 DTO = page={}, perPage={}, startIndex={}, tabState={}, keyword={}", -// dto.getPage(), dto.getPerPage(), dto.getStartIndex(), -// dto.getTabState(), dto.getSearchKeyword()); -//log.info("totalCount = {}", dto.getTotalCount()); -// -// // 1. page / perPage 기본값 처리 -// Integer page = dto.getPage(); -// Integer perPage = dto.getPerPage(); -// -// if (page == null || page <= 0) { -// page = 1; -// } -// if (perPage == null || perPage <= 0) { -// perPage = 30; // PagingVO 기본값과 맞추기 -// } -// -// dto.setPage(page); -// dto.setPerPage(perPage); -// -// // 2. 전체 건수 조회 -// int totalCount = dayAnswerMapper.selectAllDayAnswerCount(dto); -// dto.setTotalCount(totalCount); -// -// // 3. startIndex / endIndex 계산 -// int startIndex = (page - 1) * perPage; -// dto.setStartIndex(startIndex); -// dto.setEndIndex(startIndex + perPage); -// -// // 4. 전체 페이지 수 계산 -// int totalPages = totalCount > 0 -// ? (int) Math.ceil((double) totalCount / perPage) -// : 0; -// dto.setTotalPages(totalPages); -// -//log.info("검색 DTO = page={}, perPage={}, startIndex={}, tabState={}, keyword={}", -// dto.getPage(), dto.getPerPage(), dto.getStartIndex(), -// dto.getTabState(), dto.getSearchKeyword()); -//log.info("totalCount = {}", dto.getTotalCount()); - - // 5. 실제 목록 조회 - List list = dayAnswerMapper.selectAllDayAnswer(dto); - - log.info("selectAllDayAnswer 결과 건수 = {}", list.size()); - - return list; + + List list = dayAnswerMapper.selectAllDayAnswer(dto); + + list.forEach(item -> { + item.setAsState(AsStateEnum.getDescByCode(item.getAsState())); + }); + + return list; } diff --git a/src/main/java/go/kr/project/biz/search/caution/controller/CautionController.java b/src/main/java/go/kr/project/biz/search/caution/controller/CautionController.java new file mode 100644 index 0000000..041aff0 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/caution/controller/CautionController.java @@ -0,0 +1,40 @@ +package go.kr.project.biz.search.caution.controller; + +import egovframework.constant.TilesConstants; +import egovframework.util.ApiResponseUtil; +import go.kr.project.biz.search.caution.model.CautionDto; +import go.kr.project.biz.search.caution.service.CautionService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.List; + +@Controller +@Slf4j +@RequiredArgsConstructor +public class CautionController { + + private final CautionService cautionService; + + @GetMapping("/search/caution/caution.do") + + public String cautionPageReturn() { + return "biz/search/caution" + TilesConstants.BASE; + } + + @PostMapping("/search/caution/caution-select.ajax") + public ResponseEntity list(@ModelAttribute CautionDto.Request.Search dto) { + + dto.setTotalCount(0); + dto.setPagingYn("N"); + + List result = cautionService.selectAllSearch(dto); + + return ApiResponseUtil.successWithGrid(result,dto); + } +} diff --git a/src/main/java/go/kr/project/biz/search/caution/mapper/CautionMapper.java b/src/main/java/go/kr/project/biz/search/caution/mapper/CautionMapper.java new file mode 100644 index 0000000..25af756 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/caution/mapper/CautionMapper.java @@ -0,0 +1,12 @@ +package go.kr.project.biz.search.caution.mapper; + +import go.kr.project.biz.search.caution.model.CautionDto; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface CautionMapper { + + List selectAllSearch(CautionDto.Request.Search dto); +} diff --git a/src/main/java/go/kr/project/biz/search/caution/model/CautionDto.java b/src/main/java/go/kr/project/biz/search/caution/model/CautionDto.java new file mode 100644 index 0000000..1f25688 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/caution/model/CautionDto.java @@ -0,0 +1,73 @@ +package go.kr.project.biz.search.caution.model; + +import go.kr.project.system.common.model.PagingVO; +import lombok.Getter; +import lombok.Setter; + +public class CautionDto { + public static class Request { + + @Getter + @Setter + public static class Search extends PagingVO { + + + private String searchCondition; + private String searchCondition1; + private String searchCondition2; + private String searchCondition3; + private String searchCondition4; + private String searchKeyword; + private String searchStartDt; + private String searchEndDt; + private String searchCarno; + private String searchName; + private String searchJno; + private String searchUser; + private String searchTel; + private String searchBbsno; + private String searchPos; + private String searchAddr; + private String searchTime1; + private String searchTime2; + private String worker; + + + } + } + public static class Response { + @Getter + @Setter + public static class cpMain { + + private String mmIngb; + private String mmDate; + private String mmCarno; + private String omJno; + private String omName; + private String mmKeum2; + private String mmImageGb; + private String mmImageCnt; + private String mmCarcheck; + private String mmState; + private String mmCode; + private String asUser; + private String asJsno; + private String asJsdate; + private String asBbsNo; + private String ccCause; + private String ccDate; + private String ccEtc; + + + } + @Getter + @Setter + public static class Violation { + + private String vlCode; + private String vlId; + + } + } +} diff --git a/src/main/java/go/kr/project/biz/search/caution/service/CautionService.java b/src/main/java/go/kr/project/biz/search/caution/service/CautionService.java new file mode 100644 index 0000000..d4e442c --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/caution/service/CautionService.java @@ -0,0 +1,10 @@ +package go.kr.project.biz.search.caution.service; + +import go.kr.project.biz.search.caution.model.CautionDto; + +import java.util.List; + +public interface CautionService { + + List selectAllSearch(CautionDto.Request.Search dto); +} diff --git a/src/main/java/go/kr/project/biz/search/caution/service/impl/CautionServiceImpl.java b/src/main/java/go/kr/project/biz/search/caution/service/impl/CautionServiceImpl.java new file mode 100644 index 0000000..b626ab6 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/caution/service/impl/CautionServiceImpl.java @@ -0,0 +1,30 @@ +package go.kr.project.biz.search.caution.service.impl; + +import go.kr.project.biz.search.caution.mapper.CautionMapper; +import go.kr.project.biz.search.caution.model.CautionDto; +import go.kr.project.biz.search.caution.service.CautionService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +@Slf4j +public class CautionServiceImpl extends EgovAbstractServiceImpl implements CautionService { + + private final CautionMapper cautionMapper; + + @Override + public List selectAllSearch(CautionDto.Request.Search dto) { + + List list = cautionMapper.selectAllSearch(dto); + + return list; + + } + + +} diff --git a/src/main/java/go/kr/project/biz/search/filtersearch/controller/FilterSearchController.java b/src/main/java/go/kr/project/biz/search/filtersearch/controller/FilterSearchController.java new file mode 100644 index 0000000..d677dd2 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/filtersearch/controller/FilterSearchController.java @@ -0,0 +1,42 @@ +package go.kr.project.biz.search.filtersearch.controller; + +import egovframework.constant.TilesConstants; +import egovframework.util.ApiResponseUtil; +import go.kr.project.biz.search.filtersearch.model.FilterSearchDto; +import go.kr.project.biz.search.filtersearch.service.FilterSearchService; +import go.kr.project.biz.search.model.SearchDto; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.List; + +@Controller +@Slf4j +@RequiredArgsConstructor +public class FilterSearchController { + + private final FilterSearchService filterSearchService; + + @GetMapping("/search/filtersearch/filtersearch.do") + + public String searchPageReturn() { + return "biz/search/filtersearch" + TilesConstants.BASE; + } + @PostMapping("/search/filtersearch/filtersearch-select.ajax") + public ResponseEntity list(@ModelAttribute FilterSearchDto.Request.Search dto) { + + dto.setTotalCount(0); + dto.setPagingYn("N"); + + List result = filterSearchService.selectAllSearch(dto); + + return ApiResponseUtil.successWithGrid(result,dto); + } + + +} diff --git a/src/main/java/go/kr/project/biz/search/filtersearch/mapper/FilterSearchMapper.java b/src/main/java/go/kr/project/biz/search/filtersearch/mapper/FilterSearchMapper.java new file mode 100644 index 0000000..ada26c1 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/filtersearch/mapper/FilterSearchMapper.java @@ -0,0 +1,12 @@ +package go.kr.project.biz.search.filtersearch.mapper; + +import go.kr.project.biz.search.filtersearch.model.FilterSearchDto; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface FilterSearchMapper { + + List selectAllSearch(FilterSearchDto.Request.Search dto); +} diff --git a/src/main/java/go/kr/project/biz/search/filtersearch/model/FilterSearchDto.java b/src/main/java/go/kr/project/biz/search/filtersearch/model/FilterSearchDto.java new file mode 100644 index 0000000..edcd376 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/filtersearch/model/FilterSearchDto.java @@ -0,0 +1,73 @@ +package go.kr.project.biz.search.filtersearch.model; + +import go.kr.project.system.common.model.PagingVO; +import lombok.Getter; +import lombok.Setter; + +public class FilterSearchDto { + public static class Request { + + @Getter + @Setter + public static class Search extends PagingVO { + + + private String searchCondition; + private String searchCondition1; + private String searchCondition2; + private String searchCondition3; + private String searchCondition4; + private String searchKeyword; + private String searchStartDt; + private String searchEndDt; + private String searchCarno; + private String searchName; + private String searchJno; + private String searchUser; + private String searchTel; + private String searchBbsno; + private String searchPos; + private String searchAddr; + private String searchTime1; + private String searchTime2; + private String worker; + + + } + } + public static class Response { + @Getter + @Setter + public static class cpMain { + + private String mmIngb; + private String mmDate; + private String mmCarno; + private String omJno; + private String omName; + private String mmKeum2; + private String mmImageGb; + private String mmImageCnt; + private String mmCarcheck; + private String mmState; + private String mmCode; + private String asUser; + private String asJsno; + private String asJsdate; + private String asBbsNo; + private String ccCause; + private String ccDate; + private String ccEtc; + + + } + @Getter + @Setter + public static class Violation { + + private String vlCode; + private String vlId; + + } + } +} diff --git a/src/main/java/go/kr/project/biz/search/filtersearch/service/FilterSearchService.java b/src/main/java/go/kr/project/biz/search/filtersearch/service/FilterSearchService.java new file mode 100644 index 0000000..b16e583 --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/filtersearch/service/FilterSearchService.java @@ -0,0 +1,9 @@ +package go.kr.project.biz.search.filtersearch.service; + +import go.kr.project.biz.search.filtersearch.model.FilterSearchDto; + +import java.util.List; + +public interface FilterSearchService { + List selectAllSearch(FilterSearchDto.Request.Search dto); +} diff --git a/src/main/java/go/kr/project/biz/search/filtersearch/service/impl/FilterSearchServiceImpl.java b/src/main/java/go/kr/project/biz/search/filtersearch/service/impl/FilterSearchServiceImpl.java new file mode 100644 index 0000000..6aec9ce --- /dev/null +++ b/src/main/java/go/kr/project/biz/search/filtersearch/service/impl/FilterSearchServiceImpl.java @@ -0,0 +1,38 @@ +package go.kr.project.biz.search.filtersearch.service.impl; + +import go.kr.project.biz.search.filtersearch.mapper.FilterSearchMapper; +import go.kr.project.biz.search.filtersearch.model.FilterSearchDto; +import go.kr.project.biz.search.filtersearch.service.FilterSearchService; +import go.kr.project.vo.code.MmIngbEnum; +import go.kr.project.vo.code.MmStateEnum; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +@Slf4j +public class FilterSearchServiceImpl extends EgovAbstractServiceImpl implements FilterSearchService { + + private final FilterSearchMapper filterSearchMapper; + + @Override + public List selectAllSearch(FilterSearchDto.Request.Search dto) { + + List list = filterSearchMapper.selectAllSearch(dto); + + // Enum Desc 변환 + list.forEach(item -> { + item.setMmIngb(MmIngbEnum.getDescByCode(item.getMmIngb())); + item.setMmState(MmStateEnum.getDescByCode(item.getMmState())); + }); + + if (dto.getSearchCondition1() != null && !dto.getSearchCondition1().isEmpty()) { + MmStateEnum.getCodeByDesc(dto.getSearchCondition1()); + } + return list; + } +} diff --git a/src/main/java/go/kr/project/biz/search/model/SearchDto.java b/src/main/java/go/kr/project/biz/search/model/SearchDto.java index e8dcebe..3767fb0 100644 --- a/src/main/java/go/kr/project/biz/search/model/SearchDto.java +++ b/src/main/java/go/kr/project/biz/search/model/SearchDto.java @@ -35,7 +35,9 @@ public class SearchDto { private String mmImageGb; private String mmImageCnt; private String mmCarcheck; + private String mmState; private String mmCode; + } } } diff --git a/src/main/java/go/kr/project/biz/search/service/impl/SearchServiceImpl.java b/src/main/java/go/kr/project/biz/search/service/impl/SearchServiceImpl.java index 6ec6457..b28aa62 100644 --- a/src/main/java/go/kr/project/biz/search/service/impl/SearchServiceImpl.java +++ b/src/main/java/go/kr/project/biz/search/service/impl/SearchServiceImpl.java @@ -3,6 +3,9 @@ package go.kr.project.biz.search.service.impl; import go.kr.project.biz.search.mapper.SearchMapper; import go.kr.project.biz.search.model.SearchDto; import go.kr.project.biz.search.service.SearchService; +import go.kr.project.vo.code.MmDlgbEnum; +import go.kr.project.vo.code.MmIngbEnum; +import go.kr.project.vo.code.MmStateEnum; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl; @@ -22,6 +25,14 @@ public class SearchServiceImpl extends EgovAbstractServiceImpl implements Search List list = searchMapper.selectAllSearch(dto); + // Enum Desc 변환 + list.forEach(item -> { + item.setMmIngb(MmIngbEnum.getDescByCode(item.getMmIngb())); + item.setMmState(MmStateEnum.getDescByCode(item.getMmState())); + }); + + + return list; } diff --git a/src/main/resources/mybatis/mapper/biz/search/CautionMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/search/CautionMapper_maria.xml new file mode 100644 index 0000000..fbe969c --- /dev/null +++ b/src/main/resources/mybatis/mapper/biz/search/CautionMapper_maria.xml @@ -0,0 +1,126 @@ + + + + + + + diff --git a/src/main/resources/mybatis/mapper/biz/search/FilterSearchMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/search/FilterSearchMapper_maria.xml new file mode 100644 index 0000000..2e13317 --- /dev/null +++ b/src/main/resources/mybatis/mapper/biz/search/FilterSearchMapper_maria.xml @@ -0,0 +1,126 @@ + + + + + + + diff --git a/src/main/resources/mybatis/mapper/biz/search/SearchMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/search/SearchMapper_maria.xml index b663765..9037239 100644 --- a/src/main/resources/mybatis/mapper/biz/search/SearchMapper_maria.xml +++ b/src/main/resources/mybatis/mapper/biz/search/SearchMapper_maria.xml @@ -23,7 +23,7 @@ FROM CP_MAIN M LEFT OUTER JOIN CP_ANSWER A ON M.MM_CODE = AS_MMCODE LEFT OUTER JOIN CP_CANCEL C ON M.MM_CODE=CC_MMCODE - JOIN CP_OWNER O ON M.MM_OMCODE=O.OM_CODE + LEFT OUTER JOIN CP_OWNER O ON M.MM_OMCODE=O.OM_CODE diff --git a/src/main/webapp/WEB-INF/views/biz/minwon/dayanswer/dayanswer.jsp b/src/main/webapp/WEB-INF/views/biz/minwon/dayanswer/dayanswer.jsp index 5598b2c..271f6e3 100644 --- a/src/main/webapp/WEB-INF/views/biz/minwon/dayanswer/dayanswer.jsp +++ b/src/main/webapp/WEB-INF/views/biz/minwon/dayanswer/dayanswer.jsp @@ -17,7 +17,7 @@
  • 검색구분
  • ~ + +
  • +
  • + +
  • +
  • + +
  • + +
      +
    • + + / Pages +
    • +
    + + +
    +
    +
    +
    +
    + + +
    + +
    +
    연도별 합계
    +
    +
    + + +
    +
    연도별 단속수단
    +
    +
    + + +
    +
    위반유형별
    +
    +
    +
    + + +
    +
    +
    상세 통계
    +
    +
    +
    +
    +
    +
    +
    +
    + + diff --git a/src/main/webapp/WEB-INF/views/biz/search/filtersearch.jsp b/src/main/webapp/WEB-INF/views/biz/search/filtersearch.jsp new file mode 100644 index 0000000..666caa5 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/biz/search/filtersearch.jsp @@ -0,0 +1,493 @@ +<%-- + Created by IntelliJ IDEA. + User: moong + Date: 2025-11-25 + Time: 오후 5:13 + To change this template use File | Settings | File Templates. +--%> +<%@ page contentType="text/html;charset=UTF-8" language="java" %> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + +
    +
    +
    +
    +
    + +
    +
    +
    + +
    +
    + +
      +
    • 위반일
    • +
    • + ~ + +
    • + +
    • 위반시간
    • +
    • + + +
    • + +
    • 위반내용
    • +
    • + +
    • + +
    • 처리상태
    • +
    • + +
    • + +
    • 등록구분
    • +
    • + +
    • + +
    • 자료출처
    • +
    • + +
    • + +
    • 법정동
    • +
    • + +
    • +
    + +
      +
    • + 차량번호 + +
    • + +
    • + 소유자성명 + +
    • + +
    • + 주민번호 + +
    • + +
    • + 신고자 + +
    • + +
    • + 신고자 전화번호 + +
    • + +
    • + 목록번호 + +
    • + +
    • + 위반장소 + +
    • + +
    • + 상세주소 + +
    • + +
    • +   + +
    • +
    + +
      +
    • + + + / Pages + +
    • +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    + + + + diff --git a/src/main/webapp/WEB-INF/views/biz/search/search.jsp b/src/main/webapp/WEB-INF/views/biz/search/search.jsp index f73d3b3..d0a0d7c 100644 --- a/src/main/webapp/WEB-INF/views/biz/search/search.jsp +++ b/src/main/webapp/WEB-INF/views/biz/search/search.jsp @@ -23,7 +23,7 @@
  • 검색구분