From 14260c93e2d6cadf3eb01195660508b15e336ac5 Mon Sep 17 00:00:00 2001 From: myname Date: Fri, 19 Jan 2024 15:17:59 +0900 Subject: [PATCH] =?UTF-8?q?2024-01-19=2015:17=20=EC=B2=AD=EC=86=8C?= =?UTF-8?q?=EB=85=84=20=EA=B0=95=EC=82=AC=EB=A7=8C=EC=A1=B1=EB=8F=84=20?= =?UTF-8?q?=EB=8B=A4=EC=9A=B4=EB=A1=9C=EB=93=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/VEEduSatisfactionExcelVO.java | 65 +++ .../eduInfo/service/VEEduAplctVO.java | 8 + .../eduInfo/service/VEEduMIXService.java | 2 + .../eduInfo/service/impl/VEEduMIXDAO.java | 6 + .../service/impl/VEEduMIXServiceImpl.java | 5 + .../web/EduRsltMngTngrController.java | 61 +++ .../sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml | 445 ++++++++++++++++++ .../qustnr/VEALettnQestnrMIX_SQL_Tibero.xml | 4 +- .../jsp/oprtn/tngrVisitEdu/eduRsltMngList.jsp | 8 +- 9 files changed, 601 insertions(+), 3 deletions(-) diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEEduSatisfactionExcelVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEEduSatisfactionExcelVO.java index 4b2f47b8..9c93969e 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEEduSatisfactionExcelVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/asgnmInfo/service/VEEduSatisfactionExcelVO.java @@ -23,6 +23,15 @@ public class VEEduSatisfactionExcelVO { private String qestnSn8; //항목8 private String srt; //정렬순서 + + private String qestnSn; //정렬순서 + private String qestnCn; //정렬순서 + private String verySatisfied; //정렬순서 + private String satisfied; //정렬순서 + private String neither; //정렬순서 + private String disSatisfied; //정렬순서 + private String veryDisSatisfied; //정렬순서 + public String getEduHopeDt() { return eduHopeDt; @@ -151,5 +160,61 @@ public class VEEduSatisfactionExcelVO { public void setSrt(String srt) { this.srt = srt; } + + public String getQestnSn() { + return qestnSn; + } + + public void setQestnSn(String qestnSn) { + this.qestnSn = qestnSn; + } + + public String getQestnCn() { + return qestnCn; + } + + public void setQestnCn(String qestnCn) { + this.qestnCn = qestnCn; + } + + public String getVerySatisfied() { + return verySatisfied; + } + + public void setVerySatisfied(String verySatisfied) { + this.verySatisfied = verySatisfied; + } + + public String getSatisfied() { + return satisfied; + } + + public void setSatisfied(String satisfied) { + this.satisfied = satisfied; + } + + public String getNeither() { + return neither; + } + + public void setNeither(String neither) { + this.neither = neither; + } + + public String getDisSatisfied() { + return disSatisfied; + } + + public void setDisSatisfied(String disSatisfied) { + this.disSatisfied = disSatisfied; + } + + public String getVeryDisSatisfied() { + return veryDisSatisfied; + } + + public void setVeryDisSatisfied(String veryDisSatisfied) { + this.veryDisSatisfied = veryDisSatisfied; + } } 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 d7b53884..b4a9f6cc 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 @@ -165,6 +165,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { private List eduAplctOrdList; //교육신청순번 private List sspnIdtmtTrgtOrdList; //교육신청순번 + private String siteIdCd; //10-학생, 20-선생, 30-강사 + public int getChasi() { return chasi; } @@ -2058,6 +2060,12 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { public void setMberId(String mberId) { this.mberId = mberId; } + public String getSiteIdCd() { + return siteIdCd; + } + public void setSiteIdCd(String siteIdCd) { + this.siteIdCd = siteIdCd; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java index dbd6d80b..3f254ffa 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduMIXService.java @@ -69,6 +69,8 @@ public interface VEEduMIXService { List selectSatisfactionExcelList(VEEduAplctVO vEEduAplctVO) throws Exception; + List selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception; + List selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception; void insertExprnClsrmEndInfo(VEEduAplctVO vEEduAplctVO) throws Exception; diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java index bbc60ff8..7aa3f93c 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXDAO.java @@ -173,6 +173,12 @@ public class VEEduMIXDAO extends EgovAbstractDAO { return tlist; } + public List selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception { + @SuppressWarnings("unchecked") + List tlist = (List) list("VEEduMIXDAO.selectSatisfaction202401ExcelList", vEEduAplctVO); + return tlist; + } + public List selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception { @SuppressWarnings("unchecked") List tlist = (List) list("VEEduMIXDAO.selectOprtnExcelList", vEEduAplctVO); diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java index aa558bc2..8155522a 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/impl/VEEduMIXServiceImpl.java @@ -146,6 +146,11 @@ public class VEEduMIXServiceImpl implements VEEduMIXService { return vEEduMIXDAO.selectSatisfactionExcelList(vEEduAplctVO); } + @Override + public List selectSatisfaction202401ExcelList(VEEduAplctVO vEEduAplctVO) throws Exception { + return vEEduMIXDAO.selectSatisfaction202401ExcelList(vEEduAplctVO); + } + @Override public List selectOprtnExcelList(VEEduAplctVO vEEduAplctVO) throws Exception { return vEEduMIXDAO.selectOprtnExcelList(vEEduAplctVO); diff --git a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduRsltMng/web/EduRsltMngTngrController.java b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduRsltMng/web/EduRsltMngTngrController.java index b61d3347..cbbdb08a 100644 --- a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduRsltMng/web/EduRsltMngTngrController.java +++ b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduRsltMng/web/EduRsltMngTngrController.java @@ -1671,6 +1671,67 @@ public class EduRsltMngTngrController { return modelAndView; } + //강사만족도 excel download + @SuppressWarnings("rawtypes") + @RequestMapping(value = "eduRsltSatisfaction202401ExcelDownLoad.do") + public ModelAndView eduRsltSatisfaction202401ExcelDownLoad(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO, ModelMap model) throws Exception { + + try { + // 요청, 반려건 + vEEduAplctVO.setSearchNotStatusArr(new String[]{"60"}); + // 청소년 + vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10); + vEEduAplctVO.setMode(VeConstants.MODE_EXCEL); + vEEduAplctVO.setSiteId("10"); + vEEduAplctVO.setSiteIdCd("10"); + vEEduAplctVO.setInstrDiv("10"); + List list = vEEduMIXService.selectSatisfaction202401ExcelList(vEEduAplctVO); + + // 복호화 + list = egovCryptoUtil.decryptVEEduSatisfactionExcelVOList(list); + + System.out.println("out-list-2"); + + + List excelData = new ArrayList<>(); + excelData.addAll(list); + + + // 세팅값 + String title = "청소년 찾아가는 저작권 교육 강사만족도"; + int[] width = { + 4000, 4000, 4000, 4000, 4000 + , 4000, 4000, 4000, 4000, 4000 + }; // 너비 + + //33개 항목 + String[] header = { + "교육일자", "학교명", "강사명", "순번", "질문" + , "매우만족", "만족", "보통", "불만족", "매우불만족" + }; + + String[] order = { + "EduHopeDt", "ScholInsttNm", "InstrNm", "QestnSn", "QestnCn" + , "VerySatisfied", "Satisfied", "Neither", "DisSatisfied", "VeryDisSatisfied" + }; + + // 호출 + SXSSFWorkbook workbook = ExcelUtil.makeSimpleFruitExcelWorkbook(excelData , header, order, width, title); + model.addAttribute("locale", Locale.KOREA); + model.addAttribute("workbook", workbook); + model.addAttribute("workbookName", title); + + }catch(Exception ep) { + ep.getStackTrace(); + } + + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("excelDownloadView"); + modelAndView.addObject(model); + return modelAndView; + } + /** * 교육설문 삭제 - 청소년, 성인 공통 - 사용자 개인별 만족도 등록자 삭제 */ 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 7ccec155..a12c4928 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 @@ -6518,6 +6518,451 @@ VALUES + + + UPDATE ve_edu_rslt_rprt diff --git a/src/main/resources/egovframework/sqlmap/ve/qustnr/VEALettnQestnrMIX_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/ve/qustnr/VEALettnQestnrMIX_SQL_Tibero.xml index 8c624f34..640e86f0 100644 --- a/src/main/resources/egovframework/sqlmap/ve/qustnr/VEALettnQestnrMIX_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/ve/qustnr/VEALettnQestnrMIX_SQL_Tibero.xml @@ -213,8 +213,8 @@ d.QUSTNR_TMPLAT_ID =e.QUSTNR_TMPLAT_ID AND d.QESTNR_ID =e.QESTNR_ID AND d.QUSTNR_RESPOND_ID =e.QUSTNR_RESPOND_ID - AND d.EDU_APLCT_ORD = d.EDU_APLCT_ORD - AND d.EDU_CHASI_ORD = d.EDU_CHASI_ORD + AND d.EDU_APLCT_ORD = e.EDU_APLCT_ORD + AND d.EDU_CHASI_ORD = e.EDU_CHASI_ORD ) LEFT OUTER JOIN ( diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/eduRsltMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/eduRsltMngList.jsp index f4b30536..f6e87882 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/eduRsltMngList.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/tngrVisitEdu/eduRsltMngList.jsp @@ -279,6 +279,12 @@ listForm.submit(); } + function fncSatisfaction202401ExcelDownLoad(){ + var listForm = document.listForm ; + listForm.action = ""; + listForm.submit(); + } + //숙박영수증 첨부파일 일괄 다운로드(zip) - 파일ID 다름, SN 동일 : type A function fnAcmdtFileZipDownload(){ var frm = document.listForm; @@ -546,7 +552,7 @@
- + (*교육일자 조건만 지원)