From 6d006ec6b941cee6f7942a45b10bf9da8e73cd2a Mon Sep 17 00:00:00 2001 From: xhoon Date: Thu, 23 Oct 2025 15:50:34 +0900 Subject: [PATCH 1/5] feat : test --- .../controller/IndivRegController.java | 26 ++++++++++++++ .../model/MinwonIndivRegConfigVO.java | 34 +++++++++++++++++++ .../model/MinwonIndivRegSearchVO.java | 21 ++++++++++++ .../login/controller/LoginController.java | 7 ++-- src/main/resources/application-local.yml | 2 +- 5 files changed, 86 insertions(+), 4 deletions(-) create mode 100644 src/main/java/go/kr/project/biz/minwon/indivreg/controller/IndivRegController.java create mode 100644 src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegConfigVO.java create mode 100644 src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegSearchVO.java diff --git a/src/main/java/go/kr/project/biz/minwon/indivreg/controller/IndivRegController.java b/src/main/java/go/kr/project/biz/minwon/indivreg/controller/IndivRegController.java new file mode 100644 index 0000000..30d1898 --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/indivreg/controller/IndivRegController.java @@ -0,0 +1,26 @@ +package go.kr.project.biz.minwon.indivreg.controller; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +@Slf4j +@Controller +@RequestMapping("/minwon/indivreg/{sggCd}") +@RequiredArgsConstructor +@Tag(name = "민원자료 개별 등록", description = "민원 신고 기관 개별 요청") +public class IndivRegController { + /** + * 개별 등록 목록 데이터 조회 (AJAX) + * @param sggCd 시군구코드 + * @return 응답 데이터 + */ + +} diff --git a/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegConfigVO.java b/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegConfigVO.java new file mode 100644 index 0000000..80fe3f1 --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegConfigVO.java @@ -0,0 +1,34 @@ +package go.kr.project.biz.minwon.indivreg.model; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@ToString +public class MinwonIndivRegConfigVO { + + private String sggCd; + + private String aplyDt; + + private String regSe; + + private String rcptYmd; + + private String listNo; + + private String crdnId; + + private Integer regUser; + + private String regDt; + + // 사용자 이름 (JOIN 시 사용) + private String flnm; +} diff --git a/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegSearchVO.java b/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegSearchVO.java new file mode 100644 index 0000000..319915b --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/indivreg/model/MinwonIndivRegSearchVO.java @@ -0,0 +1,21 @@ +package go.kr.project.biz.minwon.indivreg.model; + +import go.kr.project.system.common.model.PagingVO; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.ToString; + +@EqualsAndHashCode(callSuper = true) +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@ToString +public class MinwonIndivRegSearchVO extends PagingVO { + + // 민원 개별 등록 요청 조회 + private String sggCd; +} diff --git a/src/main/java/go/kr/project/system/login/controller/LoginController.java b/src/main/java/go/kr/project/system/login/controller/LoginController.java index 8d2c1e2..8986140 100644 --- a/src/main/java/go/kr/project/system/login/controller/LoginController.java +++ b/src/main/java/go/kr/project/system/login/controller/LoginController.java @@ -118,7 +118,7 @@ public class LoginController { /** * 로그인 처리 (AJAX) * 공통 응답 형식(ApiResponse)을 사용하여 응답합니다. - * + * * @param userAcnt 사용자 계정 * @param passwd 비밀번호 * @param saveId 아이디 저장 여부 @@ -214,6 +214,7 @@ public class LoginController { * @param request HTTP 요청 객체 * @param response HTTP 응답 객체 * @return 로그아웃 후 리다이렉트 페이지 + * d;lfkjas;dfjasl;dfj;l */ @Operation(summary = "로그아웃 처리", description = "사용자 로그아웃을 처리하고 로그인 페이지로 리다이렉트합니다.") @ApiResponses(value = { @@ -240,7 +241,7 @@ public class LoginController { /** * 로그아웃 처리 (AJAX) * 공통 응답 형식(ApiResponse)을 사용하여 응답합니다. - * + * * @param request HTTP 요청 객체 * @param response HTTP 응답 객체 * @return 로그아웃 결과와 성공 상태를 담은 ResponseEntity 객체 @@ -267,7 +268,7 @@ public class LoginController { /** * 계정 잠금 해제 * 공통 응답 형식(ApiResponse)을 사용하여 응답합니다. - * + * * @param userId 사용자 ID * @return 잠금 해제 결과와 성공 상태를 담은 ResponseEntity 객체 */ diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml index b1333df..6b8e0a4 100644 --- a/src/main/resources/application-local.yml +++ b/src/main/resources/application-local.yml @@ -15,7 +15,7 @@ spring: username: root password: xit5811807 hikari: - maximum-pool-size: 10 + maximum-pool-size: 104 minimum-idle: 5 connection-timeout: 30000 idle-timeout: 600000 From fdab55778d7237c4a0dfb54087b31a6c2643699d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B3=A0=EB=9D=BD=EC=B6=98?= Date: Tue, 25 Nov 2025 17:22:21 +0900 Subject: [PATCH 2/5] =?UTF-8?q?feat=20:=20=EB=AF=BC=EC=9B=90=EC=A0=91?= =?UTF-8?q?=EC=88=98=20=EB=8C=80=EA=B8=B0=EC=9E=90=EB=A3=8C=20=EC=9E=91?= =?UTF-8?q?=EC=97=85=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../biz/minwon/init/dto/SampleDto.java | 3 +- .../wait/controller/MinwonWaitController.java | 50 +++ .../biz/minwon/wait/dto/MinwonWaitDto.java | 35 ++ .../minwon/wait/mapper/MinwonWaitMapper.java | 13 + .../MinwonWaitQueryDsRepository.java | 178 ++++++++++ .../wait/service/MinwonWaitService.java | 13 + .../service/impl/MinwonWaitServiceImpl.java | 37 +++ .../biz/minwon/MinwonWaitMapper_maria.xml | 50 +++ .../WEB-INF/views/biz/minwon/wait/wait.jsp | 313 ++++++++++++++++++ 9 files changed, 691 insertions(+), 1 deletion(-) create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/repository/MinwonWaitQueryDsRepository.java create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java create mode 100644 src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml create mode 100644 src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp diff --git a/src/main/java/go/kr/project/biz/minwon/init/dto/SampleDto.java b/src/main/java/go/kr/project/biz/minwon/init/dto/SampleDto.java index 95075f6..31bd082 100644 --- a/src/main/java/go/kr/project/biz/minwon/init/dto/SampleDto.java +++ b/src/main/java/go/kr/project/biz/minwon/init/dto/SampleDto.java @@ -3,7 +3,8 @@ package go.kr.project.biz.minwon.init.dto; import lombok.Getter; import lombok.Setter; -public class SampleDto { +public class +SampleDto { // 요즘 트렌드에 맞춰 이너클레스를 사용한다. // Request(파라미터를 받을 형식 객체) 와 Response(응답해줄 형식 객체)로 나눠서 관리한다. diff --git a/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java b/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java new file mode 100644 index 0000000..2566647 --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java @@ -0,0 +1,50 @@ +package go.kr.project.biz.minwon.wait.controller; + + +import egovframework.constant.TilesConstants; +import go.kr.project.biz.minwon.wait.dto.MinwonWaitDto; +import go.kr.project.biz.minwon.wait.service.MinwonWaitService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.responses.ApiResponses; +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.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +@Controller +@Slf4j +@RequiredArgsConstructor + +public class MinwonWaitController { + + private final MinwonWaitService minwonWaitService; + + /** + * 민원접수 대기자료 목록 페이지 + * @return 뷰 경로 + */ + @GetMapping("/minwon/wait/wait.do") + @Operation(summary = "민원접수 대기자료", description="민원접수 대기자료 목록 페이지를 조회합니다.") + @ApiResponses({ + @ApiResponse(responseCode = "200", description = "조회 성공") + }) + public String minwonWaitView(){ + + return "biz/minwon/wait/wait" + TilesConstants.BASE; + } + + @PostMapping("/minwon/wait/minwonwait-myBatis.ajax") + public ResponseEntity minwonwaitAjaxMybatis(@RequestBody MinwonWaitDto.Request.Search waitDto, String searchKeyword) { + + List result = minwonWaitService.findminwonwaitMybatis(waitDto); + + return ResponseEntity.ok(result); + } + +} diff --git a/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java b/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java new file mode 100644 index 0000000..09c3076 --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java @@ -0,0 +1,35 @@ +package go.kr.project.biz.minwon.wait.dto; + + +import lombok.Getter; +import lombok.Setter; + +public class MinwonWaitDto { + public static class Request { + + @Getter + @Setter + public static class Search { + private String mmRegse; + } + + } + + public static class Response { + @Getter + @Setter + public static class cpMainAnswerCancel{ + private String mmCode; + private String mmDlgb; + private String asBbsNo; + private String mmSgnm; + private String mmSgtel; + private String mmDate; + private String asLimitDt; + private String mmIndt; + private String asJsno; + private String mmCarno; + private String ccCause; + } + } +} diff --git a/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java b/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java new file mode 100644 index 0000000..6c12abc --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java @@ -0,0 +1,13 @@ +package go.kr.project.biz.minwon.wait.mapper; + +import go.kr.project.biz.minwon.wait.dto.MinwonWaitDto; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface MinwonWaitMapper { + List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto); + + List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword); +} diff --git a/src/main/java/go/kr/project/biz/minwon/wait/repository/MinwonWaitQueryDsRepository.java b/src/main/java/go/kr/project/biz/minwon/wait/repository/MinwonWaitQueryDsRepository.java new file mode 100644 index 0000000..eeb8fbe --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/repository/MinwonWaitQueryDsRepository.java @@ -0,0 +1,178 @@ +//package go.kr.project.biz.minwon.wait.repository; +// +//import com.querydsl.core.types.Projections; +//import com.querydsl.jpa.impl.JPAQueryFactory; +//import lombok.RequiredArgsConstructor; +//import org.springframework.stereotype.Repository; +// +//import java.util.List; +// +//import static go.kr.project.domain.entity.QCpAnswer.cpAnswer; +//import static go.kr.project.domain.entity.QCpMain.cpMain; +// +//@Repository +//@RequiredArgsConstructor +//public class MinwonWaitQueryDsRepository { +// +// private final JPAQueryFactory queryFactory; +// +// public List findWaitAnswers(MinwonWaitDto.Request.SearchMinwonWaitList dto) { +// +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// //cpAnswer.asState.eq("01") +// cpMain.mmState.eq("01"), +// cpAnswer.asState.eq("0") +// ) +// .fetch(); +// return result; +// } +// +// public List findWaitAnswersSearch(MinwonWaitDto.Request.SearchMinwonWaitList dto, String searchCondition, String searchKeyword, String searchStartDt, String searchEndDt) { +// +// if (searchCondition.equals("jsdate")) { +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// cpMain.mmState.eq("01"), +//// cpAnswer.asState.eq("0"), +// cpAnswer.asJsdate.between(searchStartDt, searchEndDt) +// ) +// .fetch(); +// return result; +// +// } else if (searchCondition.equals("jsno")) { +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// cpMain.mmState.eq("01"), +//// cpAnswer.asState.eq("0"), +// cpAnswer.asJsno.like("%" + searchKeyword + "%") +// ) +// .fetch(); +// return result; +// +// } else if (searchCondition.equals("iimitdt")) { +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// cpMain.mmState.eq("01"), +//// cpAnswer.asState.eq("0"), +// cpAnswer.asLimitDt.between(searchStartDt, searchEndDt) +// ) +// .fetch(); +// return result; +// +// } else { +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// cpMain.mmState.eq("01"), +//// cpAnswer.asState.eq("0") +// cpAnswer.asJsno.like("%" +searchKeyword + "%") +// ) +// .fetch(); +// return result; +// } +// +// +///* +// List result = queryFactory +// .select( +// Projections.fields( +// MinwonWaitDto.Response.WaitAnswers.class, +// cpAnswer.asJsdate, +// cpAnswer.asJsno, +// cpAnswer.asJsnoM, +// cpAnswer.asState, +// cpAnswer.asPostCd, +// cpAnswer.asLimitDt, +// cpAnswer.asPostDt, +// cpMain.mmCarno +// ) +// ) +// .from(cpMain) +// .innerJoin(cpAnswer).on(cpMain.mmCode.eq(cpAnswer.asMmcode)) +// .where( +// cpMain.mmState.eq("01"), +//// cpAnswer.asState.eq("0"), +// cpAnswer.asJsno.like("%" + searchKeyword + "%") +// ) +// .fetch(); +// return result; +// +// */ +// +// } +//} diff --git a/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java b/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java new file mode 100644 index 0000000..39b040c --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java @@ -0,0 +1,13 @@ +package go.kr.project.biz.minwon.wait.service; + + +import go.kr.project.biz.minwon.wait.dto.MinwonWaitDto; + +import java.util.List; + +public interface MinwonWaitService { + + List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto); + + List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword); +} diff --git a/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java b/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java new file mode 100644 index 0000000..ec61381 --- /dev/null +++ b/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java @@ -0,0 +1,37 @@ +package go.kr.project.biz.minwon.wait.service.impl; + + +import go.kr.project.biz.minwon.wait.dto.MinwonWaitDto; +import go.kr.project.biz.minwon.wait.mapper.MinwonWaitMapper; +import go.kr.project.biz.minwon.wait.service.MinwonWaitService; +import go.kr.project.domain.repo.cp.CpAnswerRepository; +import go.kr.project.domain.repo.cp.CpMainRepository; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@Slf4j +@RequiredArgsConstructor +public class MinwonWaitServiceImpl implements MinwonWaitService { + + private final CpMainRepository cpMainRepository; + private final CpAnswerRepository cpAnswerRepository; +// private final MinwonWaitQueryDsRepository minwonWaitQueryDsRepository; + private final MinwonWaitMapper minwonWaitMapper; + + @Override + public List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto) { + List result = minwonWaitMapper.findminwonwaitMybatis(waitDto); + return result; + } + + @Override + public List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword) { + List result = minwonWaitMapper.findminwonwaitSearchMybatis(waitDto, searchKeyword); + return result; + } + +} diff --git a/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml new file mode 100644 index 0000000..15ccf2a --- /dev/null +++ b/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp b/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp new file mode 100644 index 0000000..d91c964 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp @@ -0,0 +1,313 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + +
+
+
+
+
+ +
+
+
+
+
+
    +
  • 검색구분
  • +
  • + +
  • +
  • 검색어
  • +
  • +
  • 담당자지정
  • +
  • +
  • 사용여부
  • +
  • + +
  • +
  • 접수일자 지정
  • +
  • + ~ + +
  • +
  • + +
  • +
+
    +
  • + + / Pages +
  • +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + From 0cfd177f5c092f2a91a904694f14795432440cf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B3=A0=EB=9D=BD=EC=B6=98?= Date: Thu, 27 Nov 2025 17:33:43 +0900 Subject: [PATCH 3/5] =?UTF-8?q?feat=20:=201.=20=EB=AF=BC=EC=9B=90=EC=A0=91?= =?UTF-8?q?=EC=88=98=20=EB=8C=80=EA=B8=B0=EC=9E=90=EB=A3=8C=20=EC=9E=91?= =?UTF-8?q?=EC=97=85=EC=A4=91=202.=20AsIngbEnum=20code=20Type=20Int=20->?= =?UTF-8?q?=20String?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/MinwonInitServiceImpl.java | 3 +- .../wait/controller/MinwonWaitController.java | 14 +- .../biz/minwon/wait/dto/MinwonWaitDto.java | 8 +- .../minwon/wait/mapper/MinwonWaitMapper.java | 2 - .../wait/service/MinwonWaitService.java | 2 - .../service/impl/MinwonWaitServiceImpl.java | 15 +- .../go/kr/project/vo/code/AsIngbEnum.java | 20 +- .../biz/minwon/MinwonWaitMapper_maria.xml | 60 ++-- .../WEB-INF/views/biz/minwon/wait/wait.jsp | 305 +++++++++--------- 9 files changed, 211 insertions(+), 218 deletions(-) diff --git a/src/main/java/go/kr/project/biz/minwon/init/service/impl/MinwonInitServiceImpl.java b/src/main/java/go/kr/project/biz/minwon/init/service/impl/MinwonInitServiceImpl.java index baa236a..865579d 100644 --- a/src/main/java/go/kr/project/biz/minwon/init/service/impl/MinwonInitServiceImpl.java +++ b/src/main/java/go/kr/project/biz/minwon/init/service/impl/MinwonInitServiceImpl.java @@ -18,8 +18,6 @@ import java.util.stream.Collectors; @RequiredArgsConstructor public class MinwonInitServiceImpl implements MinwonInitService { - private final CpMainRepository cpMainRepository; - private final CpAnswerRepository cpAnswerRepository; private final MinwonInitQueryDslRepository minwonInitQueryDslRepository; @Override @@ -30,6 +28,7 @@ public class MinwonInitServiceImpl implements MinwonInitService { // Enum Desc 변환 result.forEach(item -> { item.setMmDlgb(MmDlgbEnum.getDescByCode(item.getMmDlgb())); + //item. (MmDlgbEnum.getDescByCode(item.getMmDlgb())); }); diff --git a/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java b/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java index 2566647..910dcea 100644 --- a/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java +++ b/src/main/java/go/kr/project/biz/minwon/wait/controller/MinwonWaitController.java @@ -2,6 +2,7 @@ package go.kr.project.biz.minwon.wait.controller; import egovframework.constant.TilesConstants; +import egovframework.util.ApiResponseUtil; import go.kr.project.biz.minwon.wait.dto.MinwonWaitDto; import go.kr.project.biz.minwon.wait.service.MinwonWaitService; import io.swagger.v3.oas.annotations.Operation; @@ -12,6 +13,7 @@ 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 org.springframework.web.bind.annotation.RequestBody; @@ -40,11 +42,17 @@ public class MinwonWaitController { } @PostMapping("/minwon/wait/minwonwait-myBatis.ajax") - public ResponseEntity minwonwaitAjaxMybatis(@RequestBody MinwonWaitDto.Request.Search waitDto, String searchKeyword) { + public ResponseEntity minwonwaitAjaxMybatis(@ModelAttribute MinwonWaitDto.Request.Search waitDto, String searchKeyword) { + // 총 게시물 수 조회 + int totalCount = 0; + waitDto.setTotalCount(totalCount); - List result = minwonWaitService.findminwonwaitMybatis(waitDto); + // 페이징 처리를 위한 설정 + waitDto.setPagingYn("N"); - return ResponseEntity.ok(result); + List result = minwonWaitService.findminwonwaitSearchMybatis(waitDto, searchKeyword); + + return ApiResponseUtil.successWithGrid(result, waitDto); } } diff --git a/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java b/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java index 09c3076..c83d09a 100644 --- a/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java +++ b/src/main/java/go/kr/project/biz/minwon/wait/dto/MinwonWaitDto.java @@ -1,6 +1,7 @@ package go.kr.project.biz.minwon.wait.dto; +import go.kr.project.system.common.model.PagingVO; import lombok.Getter; import lombok.Setter; @@ -9,8 +10,8 @@ public class MinwonWaitDto { @Getter @Setter - public static class Search { - private String mmRegse; + public static class Search extends PagingVO { + private String mmDlgb; } } @@ -30,6 +31,9 @@ public class MinwonWaitDto { private String asJsno; private String mmCarno; private String ccCause; + private String asIngb; + private String mmText; + private String asText; } } } diff --git a/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java b/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java index 6c12abc..4ac0e25 100644 --- a/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java +++ b/src/main/java/go/kr/project/biz/minwon/wait/mapper/MinwonWaitMapper.java @@ -7,7 +7,5 @@ import java.util.List; @Mapper public interface MinwonWaitMapper { - List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto); - List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword); } diff --git a/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java b/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java index 39b040c..591134b 100644 --- a/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java +++ b/src/main/java/go/kr/project/biz/minwon/wait/service/MinwonWaitService.java @@ -7,7 +7,5 @@ import java.util.List; public interface MinwonWaitService { - List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto); - List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword); } diff --git a/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java b/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java index ec61381..50b9434 100644 --- a/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java +++ b/src/main/java/go/kr/project/biz/minwon/wait/service/impl/MinwonWaitServiceImpl.java @@ -6,6 +6,8 @@ import go.kr.project.biz.minwon.wait.mapper.MinwonWaitMapper; import go.kr.project.biz.minwon.wait.service.MinwonWaitService; import go.kr.project.domain.repo.cp.CpAnswerRepository; import go.kr.project.domain.repo.cp.CpMainRepository; +import go.kr.project.vo.code.AsIngbEnum; +import go.kr.project.vo.code.MmDlgbEnum; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -22,15 +24,16 @@ public class MinwonWaitServiceImpl implements MinwonWaitService { // private final MinwonWaitQueryDsRepository minwonWaitQueryDsRepository; private final MinwonWaitMapper minwonWaitMapper; - @Override - public List findminwonwaitMybatis(MinwonWaitDto.Request.Search waitDto) { - List result = minwonWaitMapper.findminwonwaitMybatis(waitDto); - return result; - } - @Override public List findminwonwaitSearchMybatis(MinwonWaitDto.Request.Search waitDto, String searchKeyword) { List result = minwonWaitMapper.findminwonwaitSearchMybatis(waitDto, searchKeyword); + + result.forEach(item -> { + item.setMmDlgb(MmDlgbEnum.getDescByCode(item.getMmDlgb())); + item.setAsIngb(AsIngbEnum.getDescByCode(item.getAsIngb())); + }); + + return result; } diff --git a/src/main/java/go/kr/project/vo/code/AsIngbEnum.java b/src/main/java/go/kr/project/vo/code/AsIngbEnum.java index e21d36e..8bb1968 100644 --- a/src/main/java/go/kr/project/vo/code/AsIngbEnum.java +++ b/src/main/java/go/kr/project/vo/code/AsIngbEnum.java @@ -8,21 +8,21 @@ import java.util.Map; @Getter public enum AsIngbEnum { // APP(110, "생활불편신고"), // 안전신문고(120)으로 통합됨. - SMG_SEAL(120, "안전신문고"), - POLICE(130, "경찰청"), - SMG(183, "국민신문고"), - ETC(181, "기타"); + SMG_SEAL("120", "안전신문고"), + POLICE("130", "경찰청"), + SMG("183", "국민신문고"), + ETC("181", "기타"); - private int code; + private String code; private String desc; - AsIngbEnum(int code, String desc) { + AsIngbEnum(String code, String desc) { this.code = code; this.desc = desc; } - private static final Map CODE_MAP = new HashMap<>(); + private static final Map CODE_MAP = new HashMap<>(); private static final Map DESC_MAP = new HashMap<>(); static { @@ -33,19 +33,19 @@ public enum AsIngbEnum { } // code → desc - public static String getDescByCode(int code) { + public static String getDescByCode(String code) { AsIngbEnum e = CODE_MAP.get(code); return e != null ? e.desc : null; } // desc → code - public static Integer getCodeByDesc(String desc) { + public static String getCodeByDesc(String desc) { AsIngbEnum e = DESC_MAP.get(desc); return e != null ? e.code : null; } // code → enum - public static AsIngbEnum fromCode(int code) { + public static AsIngbEnum fromCode(String code) { return CODE_MAP.get(code); } diff --git a/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml index 15ccf2a..51f5626 100644 --- a/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml +++ b/src/main/resources/mybatis/mapper/biz/minwon/MinwonWaitMapper_maria.xml @@ -5,45 +5,33 @@ - - diff --git a/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp b/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp index d91c964..0ef3fc3 100644 --- a/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp +++ b/src/main/webapp/WEB-INF/views/biz/minwon/wait/wait.jsp @@ -7,39 +7,31 @@
-
+
+
    +    +    +
+
    -
  • 검색구분
  • -
  • - -
  • -
  • 검색어
  • -
  • -
  • 담당자지정
  • -
  • -
  • 사용여부
  • +
  • 등록구분
  • - + + + + + + + +
  • -
  • 접수일자 지정
  • -
  • - ~ - -
  • @@ -47,8 +39,8 @@
    • / Pages @@ -68,76 +60,99 @@
+ From a1b44b7116c6e9ac15c8ccd99498b9e396694cf8 Mon Sep 17 00:00:00 2001 From: moong Date: Thu, 27 Nov 2025 17:41:08 +0900 Subject: [PATCH 4/5] =?UTF-8?q?feat=20:=20=EC=A1=B0=ED=9A=8C=ED=86=B5?= =?UTF-8?q?=EA=B3=84=20=EC=A1=B0=EA=B1=B4=EA=B2=80=EC=83=89=20=EA=B2=BD?= =?UTF-8?q?=EA=B3=A0=ED=86=B5=EA=B3=84=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DayAnswerServiceImpl.java | 54 +- .../caution/controller/CautionController.java | 40 ++ .../search/caution/mapper/CautionMapper.java | 12 + .../biz/search/caution/model/CautionDto.java | 73 +++ .../caution/service/CautionService.java | 10 + .../service/impl/CautionServiceImpl.java | 30 ++ .../controller/FilterSearchController.java | 42 ++ .../mapper/FilterSearchMapper.java | 12 + .../filtersearch/model/FilterSearchDto.java | 73 +++ .../service/FilterSearchService.java | 9 + .../service/impl/FilterSearchServiceImpl.java | 38 ++ .../project/biz/search/model/SearchDto.java | 2 + .../service/impl/SearchServiceImpl.java | 11 + .../mapper/biz/search/CautionMapper_maria.xml | 126 +++++ .../biz/search/FilterSearchMapper_maria.xml | 126 +++++ .../mapper/biz/search/SearchMapper_maria.xml | 2 +- .../views/biz/minwon/dayanswer/dayanswer.jsp | 4 +- .../WEB-INF/views/biz/search/caution.jsp | 419 +++++++++++++++ .../WEB-INF/views/biz/search/filtersearch.jsp | 493 ++++++++++++++++++ .../WEB-INF/views/biz/search/search.jsp | 17 +- 20 files changed, 1530 insertions(+), 63 deletions(-) create mode 100644 src/main/java/go/kr/project/biz/search/caution/controller/CautionController.java create mode 100644 src/main/java/go/kr/project/biz/search/caution/mapper/CautionMapper.java create mode 100644 src/main/java/go/kr/project/biz/search/caution/model/CautionDto.java create mode 100644 src/main/java/go/kr/project/biz/search/caution/service/CautionService.java create mode 100644 src/main/java/go/kr/project/biz/search/caution/service/impl/CautionServiceImpl.java create mode 100644 src/main/java/go/kr/project/biz/search/filtersearch/controller/FilterSearchController.java create mode 100644 src/main/java/go/kr/project/biz/search/filtersearch/mapper/FilterSearchMapper.java create mode 100644 src/main/java/go/kr/project/biz/search/filtersearch/model/FilterSearchDto.java create mode 100644 src/main/java/go/kr/project/biz/search/filtersearch/service/FilterSearchService.java create mode 100644 src/main/java/go/kr/project/biz/search/filtersearch/service/impl/FilterSearchServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/biz/search/CautionMapper_maria.xml create mode 100644 src/main/resources/mybatis/mapper/biz/search/FilterSearchMapper_maria.xml create mode 100644 src/main/webapp/WEB-INF/views/biz/search/caution.jsp create mode 100644 src/main/webapp/WEB-INF/views/biz/search/filtersearch.jsp 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 @@
  • 검색구분
  • + select * + from CP_SEALL_ONE + inner join CP_USER on (SO_USER=UM_CODE) + WHERE 1=1 + + + + AND SO_JSDATE LIKE CONCAT('%', #{searchKeyword}, '%') + + + AND SO_BBS_NO LIKE CONCAT('%', #{searchKeyword}, '%') + + + AND UM_NAME LIKE CONCAT('%', #{searchKeyword}, '%') + + + AND ( + SO_JSDATE LIKE CONCAT('%', #{searchKeyword}, '%') + OR SO_BBS_NO LIKE CONCAT('%', #{searchKeyword}, '%') + OR UM_NAME LIKE CONCAT('%', #{searchKeyword}, '%') + ) + + + + ORDER BY SO_SGGCODE, SO_JSDATE, SO_BBS_NO + + + + INSERT INTO CP_SEALL_ONE ( + SO_SGGCODE, SO_IN_GB, SO_IN_DT, SO_JSDATE, SO_BBS_NO, SO_STATE, SO_USER + ) VALUES ( + #{soSggcode}, #{soInGb}, #{soInDt}, #{soJsdate}, #{soBbsNo}, #{soState}, #{soUser}, #{soMMcode}, #{soPutDt} + ) + + + + diff --git a/src/main/resources/mybatis/mapper/biz/totalInfo/TotalInfoMapper_maria.xml b/src/main/resources/mybatis/mapper/biz/totalInfo/TotalInfoMapper_maria.xml index 6d6cc8f..5f59451 100644 --- a/src/main/resources/mybatis/mapper/biz/totalInfo/TotalInfoMapper_maria.xml +++ b/src/main/resources/mybatis/mapper/biz/totalInfo/TotalInfoMapper_maria.xml @@ -10,7 +10,7 @@ UPDATE cp_main SET - MM_LAWGB = ${mmLawgb} + MM_LAWGB = ${mmLawgb}, MM_SGTEL = ${mmSgtel}, MM_SGPOS = ${mmSgpos}, MM_KEUM1 = ${mmKeum1} @@ -21,7 +21,7 @@ + parameterType="go.kr.project.biz.totalInfo.model.TotalInfoDto$Request$Edit">2 UPDATE cp_answer SET @@ -88,4 +88,4 @@ - \ No newline at end of file + diff --git a/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivreg.jsp b/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivreg.jsp new file mode 100644 index 0000000..cc09c0a --- /dev/null +++ b/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivreg.jsp @@ -0,0 +1,364 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + +
    +
    +
    +
    +
    + + + +
    +
    +
    + +
    +
    +
      +
    • 검색구분
    • +
    • + +
    • +
    • 검색어
    • +
    • +
    • 담당자지정
    • +
    • +
    • 사용여부
    • +
    • + +
    • +
    • 접수일자 지정
    • +
    • + ~ + +
    • +
    • + +
    • +
    +
      +
    • + + / Pages +
    • +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + diff --git a/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivregform.jsp b/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivregform.jsp new file mode 100644 index 0000000..1e7a730 --- /dev/null +++ b/src/main/webapp/WEB-INF/views/biz/minwon/indivreg/indivregform.jsp @@ -0,0 +1,124 @@ +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> + + +" /> + + + + + +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + + +
    *접수일자 + +
    *목록번호 + +
    +
    +
    +
    +
    +
    +
    + + +<%----%> + diff --git a/src/main/webapp/resources/css/style.css b/src/main/webapp/resources/css/style.css index 43f78ca..b82ffda 100644 --- a/src/main/webapp/resources/css/style.css +++ b/src/main/webapp/resources/css/style.css @@ -9638,7 +9638,7 @@ a.text-dark:hover, a.text-dark:focus { .table, .markdown-result table { border-collapse: collapse !important; } - + .table td, .markdown-result table td, .table th, .markdown-result table th { background-color: #fff !important; diff --git a/src/main/webapp/resources/css/style_new.css b/src/main/webapp/resources/css/style_new.css index 3c7b18b..b4fed6c 100644 --- a/src/main/webapp/resources/css/style_new.css +++ b/src/main/webapp/resources/css/style_new.css @@ -411,12 +411,12 @@ ol { padding: 5px; } .box_title>li.rig .input { - width: 120px; + width: 120px; height: 25px; padding: 2px 5px; } .box_title>li.rig .input.calender { - width: 120px; + width: 120px; height: 25px; background-size: auto 15px; } @@ -1744,7 +1744,7 @@ label { } .gs_flow:nth-child(1):after { - content: "3F"; + content: "3F"; } .gs_flow:nth-child(2):after { @@ -3416,7 +3416,7 @@ label { overflow-y: auto; overflow-x: hidden; } -.scroll_toptable table { +.scroll_toptable table { table-layout: fixed; } @@ -4408,4 +4408,4 @@ label { border-radius: 3px; cursor: pointer; transition: all 0.2s; -} \ No newline at end of file +}