From 54669eda30b46dcb735aba8a40f1483e7b226f12 Mon Sep 17 00:00:00 2001 From: hylee Date: Tue, 21 Nov 2023 18:28:42 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B4=80=EB=A6=AC=EC=9E=90/=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=9E=90=20=EA=B8=B0=EC=86=8C=EC=9C=A0=EC=98=88=20=EA=B5=90?= =?UTF-8?q?=EC=9C=A1=EB=AC=B8=EC=9D=98=20=EA=B8=B0=EB=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../trgtMng/web/CndtnTrgtMngController.java | 137 ++++++++- .../web/FndthPrcsInfoMngController.java | 3 +- .../sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml | 2 +- .../sqlmap/ve/prcs/VEPrcs_SQL_Tibero.xml | 1 + .../cndtnSspnIdtmt/cndtnEduQnaMngDetail.jsp | 197 +++++++++++++ .../cndtnSspnIdtmt/cndtnEduQnaMngList.jsp | 260 ++++++++++++++++++ .../fndthEnhanceTrn/fndthEduQnaMngDetail.jsp | 4 +- 7 files changed, 599 insertions(+), 5 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList.jsp diff --git a/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/trgtMng/web/CndtnTrgtMngController.java b/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/trgtMng/web/CndtnTrgtMngController.java index 37019c33..352a9e41 100644 --- a/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/trgtMng/web/CndtnTrgtMngController.java +++ b/src/main/java/kcc/ve/oprtn/cndtnSspnIdtmt/trgtMng/web/CndtnTrgtMngController.java @@ -19,6 +19,7 @@ import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; +import org.springframework.web.servlet.mvc.support.RedirectAttributes; import egovframework.rte.fdl.idgnr.EgovIdGnrService; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; @@ -33,7 +34,9 @@ import kcc.com.cmm.util.StringUtil; import kcc.com.utl.user.service.CheckFileUtil; import kcc.com.utl.user.service.CheckLoginUtil; import kcc.let.uat.uia.service.SsoLoginVO; +import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService; @@ -110,6 +113,10 @@ public class CndtnTrgtMngController { @Resource(name = "EgovCmmUseService") private EgovCmmUseService egovCmmUseService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; /* @@ -772,6 +779,135 @@ public class CndtnTrgtMngController { return "oprtn/cndtnSspnIdtmt/trgtMngMdfy"; } + + @RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList.do") + public String cndtnEduQnaMngList( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + , ModelMap model + ) throws Exception { + + //로그인 처리==================================== + //로그인 정보 가져오기 + + String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model); + if (!"".equals(s_oprtnLoginCheckNInfo)) return s_oprtnLoginCheckNInfo; + + //로그인 처리==================================== + + //1.pageing step1 + PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO); + + //임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함 + //paginationInfo.setRecordCountPerPage(10000); + + //2. pageing step2 + vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo); + + //기반강화 조회 + vEPrcsDetailVO.setLctrDivCd("60"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + +// if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchKeyword())){ +// String selectCondition = "AND a.PRCS_NM LIKE CONCAT ('%', '" +vEPrcsDetailVO.getSearchKeyword() + "', '%')"; +// vEPrcsDetailVO.setSelectPagingListQuery(selectCondition); +// } + + List vEPrcsDetailVOList = vEPrcsService.selectQnaPagingList(vEPrcsDetailVO); + + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); + + + model.addAttribute("paginationInfo", paginationInfo); + + // 사용자 이름 디코딩 + vEPrcsDetailVOList.stream().forEach(t->t.setMberNm(egovCryptoUtil.decrypt(t.getMberNm()))); + + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("list", vEPrcsDetailVOList); + + + return "oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList"; +// return "oprtn/fndthEnhanceTrn/fndthEduQnaMngList"; + } + + /** + * @methodName : cndtnEduQnaMngDetail + * @author : 이호영 + * @date : 2023.11.21 + * @description : + * @param vEPrcsDetailVO + * @param model + * @param redirectAttributes + * @param session + * @param request + * @return + * @throws Exception + */ + @RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail.do") + public String cndtnEduQnaMngDetail( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + + , ModelMap model + , RedirectAttributes redirectAttributes + , HttpSession session + , HttpServletRequest request + ) throws Exception { + + //로그인 처리==================================== + //로그인 정보 가져오기 + System.out.println("vEPrcsDetailVO.getPrcsAplctPrdQnaOrd() : "+ vEPrcsDetailVO.getPrcsAplctPrdQnaOrd()); + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 + + //로그인 처리==================================== + + //과정 조회 + VEPrcsDetailVO vEPrcsQnaDetail = vEPrcsService.selectQnaDetail(vEPrcsDetailVO); + vEPrcsQnaDetail.setMberNm(egovCryptoUtil.decrypt(vEPrcsQnaDetail.getMberNm())); + + model.addAttribute("info", vEPrcsQnaDetail); + //세부과정 목록 조회 + + return "oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail"; + } + + @RequestMapping("/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngUpdateAjax.do") + public ModelAndView cndtnEduQnaMngUpdateAjax( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + , ModelMap model + , HttpServletRequest request + ) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 처리==================================== + //로그인 정보 가져오기 + + String s_oprtnLoginCheckNInfo = checkLoginUtil.oprtnCheckNInfo(model); + if (!"".equals(s_oprtnLoginCheckNInfo)) { + modelAndView.addObject("result", "loginFail"); + return modelAndView; + } + + //로그인 처리==================================== + + + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 + + vEPrcsDetailVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id + vEPrcsDetailVO.setQnaAnswerer(loginVO.getUniqId()); //esntl_id + vEPrcsService.qnaUpdate(vEPrcsDetailVO); + + + //세부과정 지우고 다시 생성 + VEPrcsCntntVO vEPrcsCntntVO = new VEPrcsCntntVO(); + vEPrcsCntntVO.setPrcsOrd(vEPrcsDetailVO.getPrcsOrd()); + modelAndView.addObject("result", "success"); + return modelAndView; + } @@ -816,7 +952,6 @@ public class CndtnTrgtMngController { return p_vEPrcsDetailVO; } - //페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기 private PaginationInfo setPagingStep3( List p_vEPrcsDetailVOList diff --git a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java index d82cf32e..2a635a87 100644 --- a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java +++ b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsInfoMng/web/FndthPrcsInfoMngController.java @@ -566,7 +566,8 @@ public class FndthPrcsInfoMngController { LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 - vEPrcsDetailVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id + vEPrcsDetailVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id + vEPrcsDetailVO.setQnaAnswerer(loginVO.getUniqId()); //esntl_id vEPrcsService.qnaUpdate(vEPrcsDetailVO); diff --git a/src/main/resources/egovframework/sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml index fb451928..d6fbbca9 100644 --- a/src/main/resources/egovframework/sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml @@ -1355,7 +1355,7 @@ , QNA_ANSWERER as qnaAnswerer , TO_CHAR(FRST_REGIST_PNTTM, 'YYYY-MM-DD') as frstRegistPnttm , FRST_REGISTER_ID as frstRegisterId - , TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD') as frstRegistPnttm + , TO_CHAR(LAST_UPDT_PNTTM, 'YYYY-MM-DD') as lastUpdtPnttm , LAST_UPDUSR_ID as lastUpdusrId FROM VEA_PRCS_APLCT_PRD_QNA diff --git a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Tibero.xml index 0c28a661..5f7252bb 100644 --- a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcs_SQL_Tibero.xml @@ -419,6 +419,7 @@ UPDATE VEA_PRCS_APLCT_PRD_QNA SET QNA_ANSWER_CN = #qnaAnswerCn# + , QNA_ANSWERER = #qnaAnswerer# , LAST_UPDUSR_ID = #lastUpdusrId# , LAST_UPDT_PNTTM = SYSDATE WHERE PRCS_APLCT_PRD_QNA_ORD = #prcsAplctPrdQnaOrd# diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail.jsp new file mode 100644 index 00000000..ec18aa04 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngDetail.jsp @@ -0,0 +1,197 @@ + +<%@ page language="java" contentType="text/html; charset=utf-8" + pageEncoding="utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> +<% + /** + * @Class Name : fndthEduPrcsMngDetail.jsp + * @Description : 기반강화연수 상세화면 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.16 조용준 최초 생성 + * @author 조용주 + * @since 2021.12.16 + * @version 1.0 + * @see + * + */ +%> + + +교육과정관리 + + + + + +
+
+ + + +
+
+ + +
+

교육문의상세

+
    +
  • +
  • +

    조건부기소유예관리

    +
  • +
  • 교육문의상세
  • +
+
+ + +
+ +
+

교육문의상세

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
질문자ID + +
질문자 이름 + +
질문내용 + +
답변상태 + + + 미완료 + + + 완료 + + +
답변일시 + + + - + + + + + +
+
+ + +
+

답변

+
+
+ + + + + + + + + + +
+

내용

+
+
+ + +
+
+
+ + + +
+
+
+
+
+
+ +
+
+
+
+
+
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList.jsp new file mode 100644 index 00000000..222a670f --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/cndtnSspnIdtmt/cndtnEduQnaMngList.jsp @@ -0,0 +1,260 @@ + +<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> + +<% + /** + * @Class Name : fndthEduQnaMngList.jsp + * @Description : 기반강화연수 과정관리 목록 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2023.11.17 이호영 최초 생성 + * @author 조용준 + * @since 2021.12.14 + * @version 1.0 + * @see + * + */ +%> + + + + + + 교육문의 + + +
+ + +
+ + + " /> + " /> + + + +
+
+ + +
+

교육문의목록

+
    +
  • +
  • +

    조건부기소유예관리

    +
  • +
  • 교육문의목록
  • +
+
+ + +
+
+

교육 문의 관리

+
+ +
+
+
+ + +
+ +
+ ~ +
+ +
+ + + +
+
+
+ +
+

건의 접수가 검색되었습니다.

+
+ + <%----%> +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
질문자ID질문자이름질문내용답변상태질문일시답변일시
+ + ');" style="cursor:pointer;"> + + ');" style="cursor:pointer;"> + + + + + 미완료 + + + 완료 + + + + + + + + - + + + + + +
+
+ + + +
+ +
+
+
+
+
+
+
+
+
+ +
+
+
+ + + +
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduQnaMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduQnaMngDetail.jsp index 753c086e..aacb3ce0 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduQnaMngDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduQnaMngDetail.jsp @@ -139,11 +139,11 @@ 답변일시 - + - - +