diff --git a/src/main/java/kcc/com/cmm/util/KoreanRegionEnum.java b/src/main/java/kcc/com/cmm/util/KoreanRegionEnum.java new file mode 100644 index 00000000..37e3efa7 --- /dev/null +++ b/src/main/java/kcc/com/cmm/util/KoreanRegionEnum.java @@ -0,0 +1,67 @@ +package kcc.com.cmm.util; + +/** + * + * @author : 이호영 + * @fileName : KoreanRegionEnum.java + * @date : 2024.01.02 + * @description : VEA017 지역 이랑 코드 맞춰야함 + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2024.01.02 이호영 최초 생성 + * + * + * + */ +public enum KoreanRegionEnum { + GANGWON("10", "강원도", "강원"), + GYEONGGI("20", "경기도", "경기"), + GYEONGSANGNAM("30", "경상남도", "경남"), + GYEONGSANGBUK("40", "경상북도", "경북"), + GWANGJU("50", "광주광역시", "광주"), + DAEGU("60", "대구광역시", "대구"), + DAEJEON("70", "대전광역시", "대전"), + BUSAN("80", "부산광역시", "부산"), + SEOUL("90", "서울특별시", "서울"), + SEJONG("100", "세종특별자치시", "세종"), + ULSAN("110", "울산광역시", "울산"), + INCHEON("120", "인천광역시", "인천"), + JEOLLANAM("130", "전라남도", "전남"), + JEOLLABUK("140", "전라북도", "전북"), + JEJU("150", "제주특별자치도", "제주"), + CHUNGCHEONGNAM("160", "충청남도", "충남"), + CHUNGCHEONGBUK("170", "충청북도", "충북"); + + private final String order; + private final String fullName; + private final String shortName; + + KoreanRegionEnum(String order, String fullName, String shortName) { + this.order = order; + this.fullName = fullName; + this.shortName = shortName; + } + + public static KoreanRegionEnum fromOrder(String order) { + for (KoreanRegionEnum region : values()) { + if (region.getOrder().equals(order)) { + return region; + } + } + throw new IllegalArgumentException("No enum constant with order: " + order); + } + + public String getOrder() { + return order; + } + public String getFullName() { + return fullName; + } + public String getShortName() { + return shortName; + } + + + +} diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEInstrAsgnmVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEInstrAsgnmVO.java index a635d415..e588931d 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEInstrAsgnmVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEInstrAsgnmVO.java @@ -161,6 +161,8 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable { private String cmmNotifyOrd; //평균점수 + private String selectRsdneQuery; // 지역쿼리 + public String getMemoCn() { @@ -799,5 +801,11 @@ public class VEInstrAsgnmVO extends ComDefaultVO implements Serializable { public void setCmmNotifyOrd(String cmmNotifyOrd) { this.cmmNotifyOrd = cmmNotifyOrd; } + public String getSelectRsdneQuery() { + return selectRsdneQuery; + } + public void setSelectRsdneQuery(String selectRsdneQuery) { + this.selectRsdneQuery = selectRsdneQuery; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduAplctVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduAplctVO.java index 1d59a21c..0fa4044c 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduAplctVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduAplctVO.java @@ -315,6 +315,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { ////////////////paging/////////////// private String selectPagingListQuery; + private String selectRsdneQuery; + private String searchRsdne; private String orderByQuery; //운영신청 목록 셀렉트박스 검색구분자 @@ -374,6 +376,18 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { public void setSelectPagingListQuery(String selectPagingListQuery) { this.selectPagingListQuery = selectPagingListQuery; } + public String getSelectRsdneQuery() { + return selectRsdneQuery; + } + public void setSelectRsdneQuery(String selectRsdneQuery) { + this.selectRsdneQuery = selectRsdneQuery; + } + public String getSearchRsdne() { + return searchRsdne; + } + public void setSearchRsdne(String searchRsdne) { + this.searchRsdne = searchRsdne; + } public String getOrderByQuery() { return orderByQuery; } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/instrInfo/service/VEInstrDetailVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/instrInfo/service/VEInstrDetailVO.java index 8b9f9278..5a8841ad 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/instrInfo/service/VEInstrDetailVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/instrInfo/service/VEInstrDetailVO.java @@ -27,6 +27,8 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable { private String lastUpdtPnttm; // 수정일시 private String lastUpdusrId; // 수정자 + private String searchRsdne; // 수정자 + private String checkTopSum; private String weekCnt; private List userIdList = new ArrayList(); @@ -299,6 +301,12 @@ public class VEInstrDetailVO extends ComDefaultVO implements Serializable { public void setLastUpdusrId(String lastUpdusrId) { this.lastUpdusrId = lastUpdusrId; } + public String getSearchRsdne() { + return searchRsdne; + } + public void setSearchRsdne(String searchRsdne) { + this.searchRsdne = searchRsdne; + } public String getInstrDiv() { return instrDiv; } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsAplctPrdService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsAplctPrdService.java index 8e8e72ef..103decff 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsAplctPrdService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsAplctPrdService.java @@ -68,4 +68,6 @@ public interface VEPrcsAplctPrdService { List selectOneDayBeforeTrainingStartDate(VEPrcsDetailVO vEPrcsDetailVO); + List selectCfnPagingList4Fndth(VEPrcsDetailVO vEPrcsDetailVO) throws Exception; + } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdDAO.java index 97f2030b..f8b2a562 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdDAO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdDAO.java @@ -79,6 +79,11 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO { return tlist; } + public List selectCfnPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception { + List tlist = (List) list("VEPrcsAplctPrdDAO.selectCfnPagingList4Fndth", paramVO); + return tlist; + } + public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception { return (VEPrcsDetailVO) select("VEPrcsAplctPrdDAO.selectDetailNewOne", paramVO); } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java index b3456fdc..28ef593f 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java @@ -71,6 +71,11 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService { return vEPrcsAplctPrdDAO.selectPagingList4Fndth(paramVO); } + + public List selectCfnPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception{ + return vEPrcsAplctPrdDAO.selectCfnPagingList4Fndth(paramVO); + } + //R public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception { return vEPrcsAplctPrdDAO.selectDetailNewOne(paramVO); diff --git a/src/main/java/kcc/ve/oprtn/adultVisitEdu/eduCnfrmMng/web/EduCnfrmMngAdultController.java b/src/main/java/kcc/ve/oprtn/adultVisitEdu/eduCnfrmMng/web/EduCnfrmMngAdultController.java index 9731a7f6..7eafb8e0 100644 --- a/src/main/java/kcc/ve/oprtn/adultVisitEdu/eduCnfrmMng/web/EduCnfrmMngAdultController.java +++ b/src/main/java/kcc/ve/oprtn/adultVisitEdu/eduCnfrmMng/web/EduCnfrmMngAdultController.java @@ -17,6 +17,8 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; +import com.epapyrus.common.util.StringUtils; + import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import kcc.com.cmm.ComDefaultCodeVO; import kcc.com.cmm.LoginVO; @@ -24,6 +26,7 @@ import kcc.com.cmm.service.EgovCmmUseService; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.EgovFileMngUtil; import kcc.com.cmm.spring.data.util.ExcelUtil; +import kcc.com.cmm.util.KoreanRegionEnum; import kcc.com.utl.user.service.CheckLoginUtil; import kcc.kccadr.cmm.CmmUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil; @@ -170,12 +173,21 @@ public class EduCnfrmMngAdultController { vEEduAplctVO.setLctrDivCd("20"); //성인강의 vEEduAplctVO.setAprvlCd("60"); //확정코드 + // 지역검색 + /* if(StringUtils.isNotEmpty(vEEduAplctVO.getSearchRsdne())) + { + // KoreanRegionEnum Class 참고 + // VEA017 코드 번호만 넘기면 경상남도, 경남과 같은 값을 return함 + // return "AND rsdne like '%' || '"+fullName+"' || '%' OR rsdne like '%' || '"+shortName+"' || '%' "; + vEEduAplctVO.setSelectRsdneQuery(this.getRsdneQueryStr(vEEduAplctVO.getSearchRsdne())); + }*/ + if(!"".equals(vEEduAplctVO.getSearchInstrNm())) { vEEduAplctVO.setSearchInstrNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchInstrNm())); } - System.out.println("vEEduAplctVO.getAprvlCd()"); - System.out.println(vEEduAplctVO.getAprvlCd()); + System.out.println("vEEduAplctVO.getSearchRsdne()"); + System.out.println(vEEduAplctVO.getSearchRsdne()); List vEEduAplctVOList = vEEduMIXService.selectTngrRsltPagingList(vEEduAplctVO); VEEduAplctVO vo = new VEEduAplctVO(); @@ -193,11 +205,21 @@ public class EduCnfrmMngAdultController { //대상 리스트, 페이징 정보 전달 model.addAttribute("list", vEEduAplctVOList); - + return "oprtn/adultVisitEdu/eduCnfrmMngList"; } + private String getRsdneQueryStr(String searchRsdne) { + KoreanRegionEnum region = KoreanRegionEnum.fromOrder(searchRsdne); + + String fullName = region.getFullName(); + String shortName = region.getShortName(); + +// return String.format("AND rsdne like '%' || '%s'|| '%' OR rsdne like '%' || '%s'|| '%' ", fullName, shortName); + return "AND (rsdne like '"+fullName+"' || '%' OR rsdne like '"+shortName+"' || '%' )"; + } + /** * 교육배치관리 상세 화면 */ @@ -310,11 +332,17 @@ public class EduCnfrmMngAdultController { //String s_userCheckNInfo = checkLoginUtil.userCheckNInfo(model, request); //if (!"".equals(s_userCheckNInfo)) return s_userCheckNInfo; + + System.out.println("vEEduAplctVO.getSearchRsdne() : "+vEEduAplctVO.getSearchRsdne()); + + String searchRsdne = vEEduAplctVO.getSearchRsdne(); //로그인 처리==================================== //0.step0 //해당 처시 정보 가져오기 (온라인 오프라인 여부 및 신청내용 확인) vEEduAplctVO = vEEduAplctService.selectDetailChasi(vEEduAplctVO); + + System.out.println(vEEduAplctVO.getEduSlctCd()); //10-온라인, 20-오프라인 System.out.println(vEEduAplctVO.getAplctCn()); //신청내용 System.out.println(vEInstrAsgnmVO.getInstrNm()); //검색강사 @@ -324,6 +352,9 @@ public class EduCnfrmMngAdultController { String[] a_rr = null; + + + System.out.println("vEEduAplctVO.getAplctCn()"); //신청내용 @@ -355,7 +386,15 @@ public class EduCnfrmMngAdultController { } - + + // 지역검색 + if(StringUtils.isNotEmpty(searchRsdne)) + { + // KoreanRegionEnum Class 참고 + // VEA017 코드 번호만 넘기면 경상남도, 경남과 같은 값을 return함 + // return "AND rsdne like '%' || '"+fullName+"' || '%' OR rsdne like '%' || '"+shortName+"' || '%' "; + vEInstrAsgnmVO.setSelectRsdneQuery(this.getRsdneQueryStr(searchRsdne)); + } vEInstrAsgnmVO.setYr(vEEduAplctVO.getEduHopeDt().substring(0,4)); vEInstrAsgnmVO.setSearchQuery(s_searchQuery); List selectVEInstrAsgnmVOList = vEAsgnmMIX2023Service.selectInstrAsgnmList_202311_adult(vEInstrAsgnmVO); diff --git a/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/web/CndtnPrcsInfoMngController.java b/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/web/CndtnPrcsInfoMngController.java index 4566fcc1..41bb9b55 100644 --- a/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/web/CndtnPrcsInfoMngController.java +++ b/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/web/CndtnPrcsInfoMngController.java @@ -1676,7 +1676,7 @@ public class CndtnPrcsInfoMngController { //vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모 } - List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO); + List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectCfnPagingList4Fndth(vEPrcsDetailVO); //3.pageing step3 paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); diff --git a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java index 00922c00..df0cfedf 100644 --- a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java +++ b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java @@ -310,7 +310,7 @@ public class FndthPrcsAplctPrdMngController { //vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모 } - List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO); + List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectCfnPagingList4Fndth(vEPrcsDetailVO); //3.pageing step3 paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); diff --git a/src/main/resources/egovframework/sqlmap/ve/asgnm/VEAsgnm_MIX_2023_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/asgnm/VEAsgnm_MIX_2023_SQL_Tibero.xml index 7e8635ca..f94b357a 100644 --- a/src/main/resources/egovframework/sqlmap/ve/asgnm/VEAsgnm_MIX_2023_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/asgnm/VEAsgnm_MIX_2023_SQL_Tibero.xml @@ -938,6 +938,9 @@ ) WHERE 1 =1 + + $selectRsdneQuery$ + AND b.user_id =a.user_id AND b.use_yn ='Y' AND b.INSTR_DIV ='20' diff --git a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml index 0a22b43c..9523f457 100644 --- a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml @@ -2605,6 +2605,7 @@ AND b.edu_chasi_ord = i.edu_chasi_ord GROUP BY i.edu_aplct_ord , i.edu_chasi_ord ),0) AS rowNo + , e.rsdne as rsdne FROM ve_edu_aplct a , ve_edu_chasi b @@ -2682,7 +2683,7 @@ $selectPagingListQuery$ - + AND d.asgnm_aprvl_cd is null @@ -2732,6 +2733,11 @@ $checkListQuery$ + + + $selectRsdneQuery$ + + AND AA.CNT = ]]> 1 diff --git a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Tibero.xml index ff8da47b..b418434e 100644 --- a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Tibero.xml @@ -403,6 +403,78 @@ + ORDER BY 1 + + + , a.prcs_aplct_prd_ord desc + + + , $orderByQuery$ + + + + /* + LIMIT recordCountPerPage OFFSET firstIndex + */ + OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY; + + + + + - -
@@ -585,8 +583,24 @@
+ +
+<%-- +
+
+

지역검색

+
+
+ + + +
+
--%> diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/popup/instrAsgnmPopup.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/popup/instrAsgnmPopup.jsp index 941857a6..3e5b719b 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/popup/instrAsgnmPopup.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/popup/instrAsgnmPopup.jsp @@ -132,6 +132,10 @@

강사검색

+ <%-- <%-- selectedText="${vEEduAplctVO.rsdne}" defaultValue='' --%> <%-- defaultText='전체' --%> diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctCfnMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctCfnMngList.jsp index 1d1f8b20..06a8fda6 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctCfnMngList.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctCfnMngList.jsp @@ -252,7 +252,7 @@ 교육구분코드 과정명 교육기간 - 신청자/정원 + 승인자/정원 상태 강사배정