From 8f3265e63643a61b587838d9a341dbb94d3ead2a Mon Sep 17 00:00:00 2001 From: myname Date: Tue, 12 Dec 2023 15:17:20 +0900 Subject: [PATCH] =?UTF-8?q?2023-12-12=2015:17=20QR=20=EC=84=A4=EB=AC=B8=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/ScholInfoController.java | 70 ++ .../eduEnd/web/EduEndTngrController.java | 102 ++- src/main/webapp/WEB-INF/decorators.xml | 2 +- .../popup/advPsblTmQnttyCalendarPopup.jsp | 5 +- .../exprnClsrmInfo/popup/calendarPopList.jsp | 3 +- .../exprnClsrmInfo/popup/qustnrPopList.jsp | 1 + .../popup/qustnrPrintPopList.jsp | 527 +++++++++++++ .../tngrVisitEdu/eduEnd/eduEndDetail.jsp | 47 +- .../web/ve/comm/eduEndQustnrNoLoginDetail.jsp | 746 +++++++++++++++--- .../usr/datapicker/duet-date-picker.entry.js | 2 +- .../duet-date-picker.system.entry.js | 2 +- 11 files changed, 1392 insertions(+), 115 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/qustnrPrintPopList.jsp diff --git a/src/main/java/kcc/ve/aplct/cpyrgExprnClsrm/exprnClsrmAplct/web/ScholInfoController.java b/src/main/java/kcc/ve/aplct/cpyrgExprnClsrm/exprnClsrmAplct/web/ScholInfoController.java index 42ad2d5c..5b94666b 100644 --- a/src/main/java/kcc/ve/aplct/cpyrgExprnClsrm/exprnClsrmAplct/web/ScholInfoController.java +++ b/src/main/java/kcc/ve/aplct/cpyrgExprnClsrm/exprnClsrmAplct/web/ScholInfoController.java @@ -356,6 +356,76 @@ public class ScholInfoController { return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/qustnrPopList"; } + /** + * 설문 출력 팝업 리스트 + */ + @RequestMapping("popup/qustnrPrintPopList.do") + public String qustnrPrintPopList( + @ModelAttribute("vEEduChasiVO") VEEduChasiVO vEEduChasiVO + , QustnrRespondInfoVO qustnrRespondInfoVO + , ModelMap model + , HttpServletRequest request + ) throws Exception { + + String s_action = request.getParameter("action"); //insert or select + System.out.println("s_action"); + System.out.println("qustnrPrintPopList"); + System.out.println(vEEduChasiVO.getSiteIdCd()); + System.out.println(s_action); + System.out.println(vEEduChasiVO.getQustnrTmplatId()); + System.out.println(vEEduChasiVO.getQestnrId()); + System.out.println(vEEduChasiVO.getQustnrRespondId()); + + System.out.println(qustnrRespondInfoVO.getQustnrTmplatId()); + System.out.println(qustnrRespondInfoVO.getQestnrId()); + System.out.println(qustnrRespondInfoVO.getQustnrRespondId()); + + //차시 정보 + try { + vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10); //10-청소년 강사, 20-성인강사 VE0001 + + VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO); + ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm())); + + ChasiInfo.setStrtTm(ChasiInfo.getStrtTm().substring(0,2)+":"+ChasiInfo.getStrtTm().substring(2,4)); + ChasiInfo.setEndTm(ChasiInfo.getEndTm().substring(0,2)+":"+ChasiInfo.getEndTm().substring(2,4)); + + model.addAttribute("chasiInfo", ChasiInfo); + + }catch(Exception ex) { + System.out.println("Exception vEEduAplctOnlnService.updateBulk"); + } + + //참석 답변 정보 + try { + List chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList202312(qustnrRespondInfoVO); + model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent()); + model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant()); + model.addAttribute("chasiSrvyList", chasiSrvyList); + }catch(Exception ex) { + System.out.println("Exception vEEduAplctOnlnService.updateBulk"); + } + + //설문 참여 정보 + /* + try { + model = qustnrCommonUtil._qustnrQesItm( + model + , VeConstants.LCTR_DIV_CD_10 //청소년 -10, 성인-20, ...VE0012 + , "10" //10-기본설문, 20-신청자설문, 30-강사설문 VEA012 + , "QTMPLA_0000000000001" + , vEALettnQestnrMIXService + , egovQustnrRespondInfoService + ); + + }catch(Exception ex) { + ex.printStackTrace(); + } + */ + + return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/qustnrPrintPopList"; + } + ////////////////////////////////////////////////////////////////////////////////////////////////////////////// // // diff --git a/src/main/java/kcc/ve/aplct/tngrVisitEdu/eduEnd/web/EduEndTngrController.java b/src/main/java/kcc/ve/aplct/tngrVisitEdu/eduEnd/web/EduEndTngrController.java index 03419720..fa2df8fc 100644 --- a/src/main/java/kcc/ve/aplct/tngrVisitEdu/eduEnd/web/EduEndTngrController.java +++ b/src/main/java/kcc/ve/aplct/tngrVisitEdu/eduEnd/web/EduEndTngrController.java @@ -712,6 +712,64 @@ public class EduEndTngrController { return modelAndView; } + /** + * 교육설문 등록 - 청소년, 성인 공통 - qr을 통한 개별 등록 + */ + @RequestMapping(value="/insertNewSrvyInfoEAAjax.do") + public ModelAndView insertNewSrvyInfoEAAjax( HttpServletRequest request + , ModelMap model + , VEEduAplctVO veEduAplctVO + , QustnrRespondInfoVO qustnrRespondInfoVO) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + try { + + System.out.println("qustnrRespondInfoVO"); + System.out.println(qustnrRespondInfoVO); + System.out.println(qustnrRespondInfoVO); + + //String + + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); + if (loginVO == null) { + modelAndView.addObject("result", "fail"); + modelAndView.addObject("msg", "로그인 해주세요."); + return modelAndView; + } + + // 설문 참석자, 응답자, 결과 저장 + QustnrRespondManageVO qustnrRespondManageVO = new QustnrRespondManageVO(); + qustnrRespondManageVO.setEduAplctOrd(veEduAplctVO.getEduAplctOrd()); + qustnrRespondManageVO.setEduChasiOrd(veEduAplctVO.getEduChasiOrd()); + qustnrRespondManageVO.setQestnrId(qustnrRespondInfoVO.getQestnrId()); + qustnrRespondManageVO.setQestnrParticipant(qustnrRespondInfoVO.getQestnrParticipant()); + qustnrRespondManageVO.setQestnrRespondent(qustnrRespondInfoVO.getQestnrRespondent()); + qustnrRespondManageVO.setFrstRegisterId(loginVO.getId()); + qustnrRespondManageVO.setLastUpdusrId(loginVO.getId()); + qustnrRespondManageVO.setQestnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId()); + + egovQustnrRespondManageService.insertQustnrRespondManage(qustnrRespondManageVO); + // 설문 문항 결과 등록 + for(int i=0; i < qustnrRespondInfoVO.getResultList().size(); i++) { + System.out.println("qustnrRespondInfoVO.getResultList().get(i).getQustnrQesitmId()"); + System.out.println(qustnrRespondInfoVO.getResultList().get(i).getQustnrQesitmId()); + qustnrRespondInfoVO.getResultList().get(i).setQustnrTmplatId(qustnrRespondInfoVO.getQustnrTmplatId()); + qustnrRespondInfoVO.getResultList().get(i).setQustnrQesitmId(qustnrRespondInfoVO.getQustnrQesitmId()); + + qustnrRespondInfoVO.getResultList().get(i).setRespondId(loginVO.getId()); + qustnrRespondInfoVO.getResultList().get(i).setFrstRegisterId(loginVO.getId()); + qustnrRespondInfoVO.getResultList().get(i).setLastUpdusrId(loginVO.getId()); + qustnrRespondInfoVO.getResultList().get(i).setEduAplctOrd(veEduAplctVO.getEduAplctOrd()); + qustnrRespondInfoVO.getResultList().get(i).setEduChasiOrd(veEduAplctVO.getEduChasiOrd()); + egovQustnrRespondInfoService.insertSrvyInfo(qustnrRespondInfoVO.getResultList().get(i)); + } + }catch(Exception ex) { + System.out.println("Exception vEEduAplctOnlnService.updateBulk"); + } + modelAndView.addObject("result", "success"); + return modelAndView; + } + /** * 교육설문조사 등록 로직 */ @@ -1018,10 +1076,13 @@ public class EduEndTngrController { @RequestMapping("eduEndQustnrNoLoginDetail.do") public String eduEndQustnrNoLoginDetail( - ModelMap model + @ModelAttribute("vEEduChasiVO") VEEduChasiVO vEEduChasiVO + , @ModelAttribute("qustnrRespondInfoVO") QustnrRespondInfoVO qustnrRespondInfoVO + , ModelMap model , HttpServletRequest request ) throws Exception { + /* //설문 정보 try { model = qustnrCommonUtil._qustnrQesItm( @@ -1036,7 +1097,44 @@ public class EduEndTngrController { }catch(Exception ex) { ex.printStackTrace(); } - + */ + + String s_action = request.getParameter("action"); //insert or select + System.out.println("s_action"); + System.out.println(s_action); + System.out.println(vEEduChasiVO.getQustnrTmplatId()); + System.out.println(vEEduChasiVO.getQestnrId()); + System.out.println(vEEduChasiVO.getQustnrRespondId()); + + System.out.println(qustnrRespondInfoVO.getQustnrTmplatId()); + System.out.println(qustnrRespondInfoVO.getQestnrId()); + System.out.println(qustnrRespondInfoVO.getQustnrRespondId()); + //차시 정보 + try { + vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_10); //10-청소년 강사, 20-성인강사 VE0001 + + VEEduChasiVO ChasiInfo = vEEduMIXService.selectChasiInfo(vEEduChasiVO); + ChasiInfo.setInstrNm(egovCryptoUtil.decrypt(ChasiInfo.getInstrNm())); + + ChasiInfo.setStrtTm(ChasiInfo.getStrtTm().substring(0,2)+":"+ChasiInfo.getStrtTm().substring(2,4)); + ChasiInfo.setEndTm(ChasiInfo.getEndTm().substring(0,2)+":"+ChasiInfo.getEndTm().substring(2,4)); + + model.addAttribute("chasiInfo", ChasiInfo); + + }catch(Exception ex) { + System.out.println("Exception vEEduAplctOnlnService.updateBulk"); + } + + //참석 답변 정보 + try { + List chasiSrvyList = egovQustnrRespondInfoService.selectChasiSrvyList202312(qustnrRespondInfoVO); + model.addAttribute("qestnrRespondent", chasiSrvyList.get(0).getQestnrRespondent()); + model.addAttribute("qestnrParticipant", chasiSrvyList.get(0).getQestnrParticipant()); + model.addAttribute("chasiSrvyList", chasiSrvyList); + }catch(Exception ex) { + System.out.println("Exception vEEduAplctOnlnService.updateBulk"); + } + return "/web/ve/comm/eduEndQustnrNoLoginDetail"; } diff --git a/src/main/webapp/WEB-INF/decorators.xml b/src/main/webapp/WEB-INF/decorators.xml index 3172d650..9036cd8f 100644 --- a/src/main/webapp/WEB-INF/decorators.xml +++ b/src/main/webapp/WEB-INF/decorators.xml @@ -17,7 +17,7 @@ /web/survey/jsontest.do /web/ve/aplct/tngrVisitEdu/lctrSrvy/lctrSrvyReg.do */web/ve/**/*Popup* - */eduEndQustnrNoLoginDetail.do + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/popup/advPsblTmQnttyCalendarPopup.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/popup/advPsblTmQnttyCalendarPopup.jsp index 7561101c..b5293452 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/popup/advPsblTmQnttyCalendarPopup.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/popup/advPsblTmQnttyCalendarPopup.jsp @@ -73,9 +73,10 @@ var calendar; listMonth: '일정' }, headerToolbar: { - left: 'prevYear nextYear today', + //left: 'prevYear nextYear today', + left: 'today', center: 'prev title next', - right: ' ' + right: 'today' //right: 'dayGridMonth,listMonth' }, eventSources: [ diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/calendarPopList.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/calendarPopList.jsp index a79b1ff0..1b8d608e 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/calendarPopList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/calendarPopList.jsp @@ -349,8 +349,7 @@
-

교육신청가능일자현황

- /${scholInfoVO.rndsOrd }/ +

교육신청가능일자현황

+
+ + + + + + +
+ +
+
diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndDetail.jsp index ab888874..b6a0435d 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndDetail.jsp @@ -105,7 +105,7 @@ paramObj = { "eduAplctOrd" : id ,"eduChasiOrd" : chId - ,"site_id_cd" : p_site_id_cd + ,"siteIdCd" : p_site_id_cd ,"action" : p_action @@ -123,6 +123,39 @@ , "scholPop" ); } + + //설문 팝업 + function fncQustnrPrintList( + id //aplctOrd + , chId //chasiOrd + , p_site_id_cd //10,20,30 + , p_action //select, insert + , p_qustnrTmplatId //select, insert + , p_qestnrId //select, insert + , p_qustnrRespondId //select, insert + ) { + + paramObj = { + "eduAplctOrd" : id + ,"eduChasiOrd" : chId + ,"siteIdCd" : p_site_id_cd + + ,"action" : p_action + + ,"qustnrTmplatId" : p_qustnrTmplatId + ,"qestnrId" : p_qestnrId + ,"qustnrRespondId" : p_qustnrRespondId + }; + + commonPopLayeropen( + "${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/qustnrPrintPopList.do" + , 800 + , 700 + , paramObj + , "Y" + , "scholPrintPop" + ); + } function selectChasiStatus(id, chId, p_site_id_cd, action){ $.ajax({ @@ -131,7 +164,7 @@ ,data: { "eduAplctOrd" : id ,"eduChasiOrd" : chId - ,"site_id_cd" : p_site_id_cd + ,"siteIdCd" : p_site_id_cd } ,dataType:'json' ,success:function(returnData){ @@ -621,6 +654,11 @@ url += "/web/ve/aplct/tngrVisitEdu/eduEnd/eduEndQustnrNoLoginDetail.do"; makeCode(url); + + console.log("url===="); + console.log(url); + console.log("url===="); + });
@@ -1114,6 +1152,11 @@ onclick="fncQustnrList('${list.eduAplctOrd}','${list.eduChasiOrd}','10','insert' ,'${list.qustnrTmplatId}','${list.qestnrId10}','${list.qustnrRespondId10}' )" title="팝업 열림">설문등록 + + 해당설문없음 diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/comm/eduEndQustnrNoLoginDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/comm/eduEndQustnrNoLoginDetail.jsp index 0d93e56b..f07b5e3f 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/comm/eduEndQustnrNoLoginDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/comm/eduEndQustnrNoLoginDetail.jsp @@ -1,88 +1,586 @@ -<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> -<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%-- + + Class Name : eduEndDetail.jsp + Description : 교육완료상세 + Modification Information + + 수정일 수정자 수정내용 + ------- -------- --------------------------- + 2021.12.02 조용준 내용 + + author : 조용준 + since : 2021.12.02 + +--%> +<%@ page contentType="text/html; charset=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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> -<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> -<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> +<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + + +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%> -<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> - - - - - - - - 완료상세<<< 한국저작권위원회 저작권교육 시스템 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + function fncGoList(){ + var listForm = document.listForm ; + listForm.action = ""; + listForm.submit(); + } - + //설문 팝업 + function fncQustnrList( + id //aplctOrd + , chId //chasiOrd + , p_site_id_cd //10,20,30 + , p_action //select, insert + , p_qustnrTmplatId //select, insert + , p_qestnrId //select, insert + , p_qustnrRespondId //select, insert + ) { + + paramObj = { + "eduAplctOrd" : id + ,"eduChasiOrd" : chId + ,"siteIdCd" : p_site_id_cd + ,"action" : p_action - -
-
- -
+ ,"qustnrTmplatId" : p_qustnrTmplatId + ,"qestnrId" : p_qestnrId + ,"qustnrRespondId" : p_qustnrRespondId + }; + + commonPopLayeropen( + "${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/scholInfo/popup/qustnrPopList.do" + , 800 + , 700 + , paramObj + , "Y" + , "scholPop" + ); + } - -
+ //설문 팝업 + function fncQustnrPrintList( + id //aplctOrd + , chId //chasiOrd + , p_site_id_cd //10,20,30 + , p_action //select, insert + , p_qustnrTmplatId //select, insert + , p_qestnrId //select, insert + , p_qustnrRespondId //select, insert + ) { + + paramObj = { + "eduAplctOrd" : id + ,"eduChasiOrd" : chId + ,"siteIdCd" : p_site_id_cd -
- - - - - -
- - -
-
- - \ No newline at end of file diff --git a/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.entry.js b/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.entry.js index f1897c0b..bf5c9ede 100644 --- a/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.entry.js +++ b/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.entry.js @@ -476,7 +476,7 @@ const k = ({ l = n(this.max), u = null != s && s.getMonth() === d && s.getFullYear() === r, c = null != l && l.getMonth() === d && l.getFullYear() === r, - h = s ? s.getFullYear() : o - 10, + h = s ? s.getFullYear() : o - 70, p = l ? l.getFullYear() : o + 10; return t(i, null, t("div", { class: "duet-date" diff --git a/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.system.entry.js b/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.system.entry.js index 3f38ad80..eb34a50c 100644 --- a/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.system.entry.js +++ b/src/main/webapp/visitEdu/usr/datapicker/duet-date-picker.system.entry.js @@ -830,7 +830,7 @@ System.register(["./index-7f002a21.system.js"], (function (e) { var u = l(this.max); var c = s != null && s.getMonth() === n && s.getFullYear() === d; var h = u != null && u.getMonth() === n && u.getFullYear() === d; - var p = s ? s.getFullYear() : r - 10; + var p = s ? s.getFullYear() : r - 70; var f = u ? u.getFullYear() : r + 10; return t(i, null, t("div", { class: "duet-date"