From be6c3ac6cce740fb4fd483819647a78767b8e216 Mon Sep 17 00:00:00 2001 From: jiwoo Date: Fri, 17 Nov 2023 12:35:28 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9D=B4=EC=A7=80=EC=9A=B0=20-=20=EC=84=B1?= =?UTF-8?q?=EC=9D=B8=20=EA=B5=90=EC=9C=A1=20=EA=B0=95=EC=82=AC=EC=B0=B8?= =?UTF-8?q?=EC=84=9D=ED=99=95=EC=9D=B8=EC=84=9C,=20=EA=B2=B0=EA=B3=BC?= =?UTF-8?q?=EB=B3=B4=EA=B3=A0=20=EC=97=85=EB=A1=9C=EB=93=9C=20=EB=B0=8F=20?= =?UTF-8?q?=EA=B4=80=EB=A6=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cmm/service/EgovFileMngService.java | 4 + .../service/impl/EgovFileMngServiceImpl.java | 18 +++ .../com/cmm/service/impl/FileManageDAO.java | 5 + .../com/cmm/web/EgovFileMngController.java | 65 +++++++++++ .../service/impl/InnorixFileServiceImpl.java | 2 + .../ve/aplct/comweb/CommonWebController.java | 2 + .../eduInfo/service/VEEduAplctVO.java | 23 ++++ .../eduInfo/service/VEEduChasiVO.java | 10 ++ .../let/cmm/fms/EgovFile_SQL_Tibero.xml | 10 ++ .../sqlmap/ve/edu/VEEduAplct_SQL_Tibero.xml | 4 + .../sqlmap/ve/edu/VEEdu_MIX_SQL_Tibero.xml | 1 + .../jsp/cmm/fms/selectEduAplctFile.jsp | 104 ++++++++++++++++++ .../oprtn/adultVisitEdu/eduRsltMngDetail.jsp | 11 +- .../adultVisitEdu/eduEnd/eduEndDetail.jsp | 10 +- .../aplct/adultVisitEdu/eduEnd/eduEndList.jsp | 2 +- .../WEB-INF/jsp/web/ve/comm/fileUploadPop.jsp | 3 + .../endInfo/instrEduEndDetail.jsp | 7 -- 17 files changed, 264 insertions(+), 17 deletions(-) create mode 100644 src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp diff --git a/src/main/java/kcc/com/cmm/service/EgovFileMngService.java b/src/main/java/kcc/com/cmm/service/EgovFileMngService.java index b30eca91..e041d96e 100644 --- a/src/main/java/kcc/com/cmm/service/EgovFileMngService.java +++ b/src/main/java/kcc/com/cmm/service/EgovFileMngService.java @@ -3,6 +3,8 @@ package kcc.com.cmm.service; import java.util.List; import java.util.Map; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; + /** * @Class Name : EgovFileMngService.java * @Description : 파일정보의 관리를 위한 서비스 인터페이스 @@ -127,4 +129,6 @@ public interface EgovFileMngService { public void deleteFmsFileInf(FileVO fileVO) throws Exception; public void updateFileName(FileVO fileVO) throws Exception; + + public void deleteOffeduFile(FileVO fvo, VEEduAplctVO vEEduAplctVO) throws Exception; } diff --git a/src/main/java/kcc/com/cmm/service/impl/EgovFileMngServiceImpl.java b/src/main/java/kcc/com/cmm/service/impl/EgovFileMngServiceImpl.java index ccc95d2b..6f9f984f 100644 --- a/src/main/java/kcc/com/cmm/service/impl/EgovFileMngServiceImpl.java +++ b/src/main/java/kcc/com/cmm/service/impl/EgovFileMngServiceImpl.java @@ -12,6 +12,8 @@ import org.springframework.stereotype.Service; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.FileVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; +import kcc.ve.instr.tngrVisitEdu.rprtInfo.service.VEEduRprtVO; /** * @Class Name : EgovFileMngServiceImpl.java @@ -196,4 +198,20 @@ public class EgovFileMngServiceImpl extends EgovAbstractServiceImpl implements E public void updateFileName(FileVO fileVO) throws Exception { fileMngDAO.updateFileName(fileVO); } + + @Override + public void deleteOffeduFile(FileVO fileVO, VEEduAplctVO vEEduAplctVO) throws Exception { + + //결과 보고 첨부파일 ID 삭제 처리 + fileMngDAO.updateOffeduFileNull(vEEduAplctVO); + + //파일 삭제처리 + FileVO returnFileVO = new FileVO(); + returnFileVO = fileMngDAO.selectFileInf(fileVO); + if(returnFileVO !=null) { + File delFile = new File(returnFileVO.getFileStreCours()+returnFileVO.getStreFileNm()); + delFile.delete(); + } + fileMngDAO.deleteFileInf(fileVO); //DB삭제 + } } diff --git a/src/main/java/kcc/com/cmm/service/impl/FileManageDAO.java b/src/main/java/kcc/com/cmm/service/impl/FileManageDAO.java index cc5779ce..2bf60300 100644 --- a/src/main/java/kcc/com/cmm/service/impl/FileManageDAO.java +++ b/src/main/java/kcc/com/cmm/service/impl/FileManageDAO.java @@ -6,6 +6,7 @@ import java.util.List; import org.springframework.stereotype.Repository; import kcc.com.cmm.service.FileVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; /** * @Class Name : EgovFileMngDAO.java @@ -198,4 +199,8 @@ public class FileManageDAO extends EgovComAbstractDAO { public void updateFileName(FileVO vo) throws Exception { insert("FileManageDAO.updateFileName", vo); } + + public int updateOffeduFileNull(VEEduAplctVO vEEduAplctVO) throws Exception { + return update("FileManageDAO.updateOffeduFileNull", vEEduAplctVO); + } } diff --git a/src/main/java/kcc/com/cmm/web/EgovFileMngController.java b/src/main/java/kcc/com/cmm/web/EgovFileMngController.java index 67246c8e..54c0740c 100644 --- a/src/main/java/kcc/com/cmm/web/EgovFileMngController.java +++ b/src/main/java/kcc/com/cmm/web/EgovFileMngController.java @@ -12,10 +12,15 @@ import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.servlet.ModelAndView; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import kcc.com.cmm.LoginVO; import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.FileVO; +import kcc.com.uss.ion.fms.service.FmsFileVO; +import kcc.com.utl.user.service.CheckLoginUtil; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; /** * 파일 조회, 삭제, 다운로드 처리를 위한 컨트롤러 클래스 @@ -40,6 +45,9 @@ public class EgovFileMngController { @Resource(name = "EgovFileMngService") private EgovFileMngService fileService; + //로그인 체크 util + @Resource(name = "checkLoginUtil") + private CheckLoginUtil checkLoginUtil; /** * 첨부파일에 대한 목록을 조회한다. * @@ -410,4 +418,61 @@ public class EgovFileMngController { return "cmm/fms/selectForNmChgFile"; } + + /** + * ve_edu_aplct 첨부파일 목록 - 타입별로 첨부파일 삭제 및 데이터 null 처리를 위한 + * + * @param fileVO + * @param commandMap + * @param model + * @return + * @throws Exception + */ + @RequestMapping("/cmm/fms/selectOffeduFile.do") + public String selectEduAplctFile(@ModelAttribute("searchVO") FileVO fileVO, @RequestParam Map commandMap, ModelMap model) throws Exception { + String atchFileId = (String) commandMap.get("param_atchFileId"); + String type = (String) commandMap.get("type"); + String deleteFlag = (String) commandMap.get("deleteFlag"); + String dateFlag = (String) commandMap.get("dateFlag"); + String table = (String) commandMap.get("table"); + String eduAplctOrd = (String) commandMap.get("eduAplctOrd"); + + fileVO.setAtchFileId(atchFileId); + List result = fileService.selectFileInfs(fileVO); + model.addAttribute("fileList", result); + model.addAttribute("fileListCnt", result.size()); + model.addAttribute("atchFileId", atchFileId); + model.addAttribute("type", type); + model.addAttribute("deleteFlag", deleteFlag); + model.addAttribute("dateFlag", dateFlag); + model.addAttribute("table", table); + model.addAttribute("eduAplctOrd", eduAplctOrd); + + return "cmm/fms/selectEduAplctFile"; + } + + /* 교육신청관리 첨부파일 삭제 */ + @RequestMapping(value = "/cmm/fms/offedufileDeleteAjax.do") + public ModelAndView fmsfileDeleteAjax( + FmsFileVO fmsFileVO, + @ModelAttribute("fileVO") FileVO fileVO, + VEEduAplctVO vEEduAplctVO + ) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + + vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId()); + try { + fileService.deleteOffeduFile(fileVO, vEEduAplctVO); + modelAndView.addObject("result", "success"); + }catch (Exception e) { + modelAndView.addObject("result", "fail"); + System.out.println("Exception Occured!!!"); + return modelAndView; + } + return modelAndView; + } } diff --git a/src/main/java/kcc/kccadr/cmm/innorix/service/impl/InnorixFileServiceImpl.java b/src/main/java/kcc/kccadr/cmm/innorix/service/impl/InnorixFileServiceImpl.java index 97d78cc6..15a10b27 100644 --- a/src/main/java/kcc/kccadr/cmm/innorix/service/impl/InnorixFileServiceImpl.java +++ b/src/main/java/kcc/kccadr/cmm/innorix/service/impl/InnorixFileServiceImpl.java @@ -223,6 +223,8 @@ public class InnorixFileServiceImpl extends EgovAbstractServiceImpl implements I vEEduAplctVO.setAttendAtchFileId(atchFileId); //강사 참석 확인서 첨부파일 } else if("PHT".equals(fileType)) { vEEduAplctVO.setPhtAtchFileId(atchFileId); //교육사진 첨부파일 + } else if("RSLT".equals(fileType)) { + vEEduAplctVO.setRsltAtchFileId(atchFileId); //결과보고 첨부파일 } diff --git a/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java b/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java index c81bf46f..1a07565d 100644 --- a/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java +++ b/src/main/java/kcc/ve/aplct/comweb/CommonWebController.java @@ -200,6 +200,8 @@ public class CommonWebController { fileVO.setAtchFileId(vEEduAplctVO.getAttendAtchFileId()); } else if("PHT".equals(fileType)) { fileVO.setAtchFileId(vEEduAplctVO.getPhtAtchFileId()); + } else if("RSLT".equals(fileType)) { + fileVO.setAtchFileId(vEEduAplctVO.getRsltAtchFileId()); } List result = fileService.selectFileInfs(fileVO); 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 262f24e1..c37489a7 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 @@ -99,6 +99,7 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { private String broadroomEdu; //방송실교육 여부 private String rndsOrd; //회차순번(해당 신청이 속하는 회차 고유 순번) + private String rsltAtchFileId; //결과보고첨부파일아이디 @@ -324,6 +325,9 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { private String lastYear; //불성실여부 작년 + private String type; //첨부파일 삭제 종류 + private String table; //첨부파일 삭제 테이블 + public String getPrcsAplctPrdOrd() { return prcsAplctPrdOrd; @@ -1708,6 +1712,25 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable { public void setTrgtId(String trgtId) { this.trgtId = trgtId; } + public String getRsltAtchFileId() { + return rsltAtchFileId; + } + public void setRsltAtchFileId(String rsltAtchFileId) { + this.rsltAtchFileId = rsltAtchFileId; + } + + public String getType() { + return type; + } + public void setType(String type) { + this.type = type; + } + public String getTable() { + return table; + } + public void setTable(String table) { + this.table = table; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduChasiVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduChasiVO.java index c0666930..269e930b 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduChasiVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/eduInfo/service/VEEduChasiVO.java @@ -105,6 +105,9 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable { private String onewayDstnc; private String acmdtAprvlCd; + + private String rsltAtchFileId; //ve_edu_aplct 결과보고 첨부파일아이디 + public String getQustnrRespondId() { return qustnrRespondId; } @@ -569,4 +572,11 @@ public class VEEduChasiVO extends ComDefaultVO implements Serializable { public void setMemoCn(String memoCn) { this.memoCn = memoCn; } + public String getRsltAtchFileId() { + return rsltAtchFileId; + } + public void setRsltAtchFileId(String rsltAtchFileId) { + this.rsltAtchFileId = rsltAtchFileId; + } + } diff --git a/src/main/resources/egovframework/sqlmap/let/cmm/fms/EgovFile_SQL_Tibero.xml b/src/main/resources/egovframework/sqlmap/let/cmm/fms/EgovFile_SQL_Tibero.xml index 5993735f..f665a043 100644 --- a/src/main/resources/egovframework/sqlmap/let/cmm/fms/EgovFile_SQL_Tibero.xml +++ b/src/main/resources/egovframework/sqlmap/let/cmm/fms/EgovFile_SQL_Tibero.xml @@ -5,6 +5,7 @@ + @@ -243,4 +244,13 @@ AND ATCH_FILE_ID = #atchFileId# AND FILE_SN = #fileSn# + + + UPDATE + $table$ + SET + $type$ = null + WHERE 1=1 + AND edu_aplct_ord = #eduAplctOrd# + 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 7ed0b236..1e2bd2e4 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 @@ -159,6 +159,7 @@ A.BROADROOM_EDU AS broadroomEdu , A.RNDS_ORD AS rndsOrd , A.APLCT_CN AS aplctCn + , A.RSLT_ATCH_FILE_ID AS rsltAtchFileId @@ -855,6 +856,9 @@ , PHT_ATCH_FILE_ID = #phtAtchFileId# + + , RSLT_ATCH_FILE_ID = #rsltAtchFileId# + , IS_WAIT = #isWait# 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 47ee38d5..db4b2a6b 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 @@ -3637,6 +3637,7 @@ , G.sbmt_yn AS acmdtSbmtYn , G.aprvl_cd AS acmdtAprvlCd , H.oneway_dstnc AS onewayDstnc + , A.rslt_atch_file_id AS rsltAtchFileId FROM VE_EDU_APLCT A , VE_EDU_CHASI B diff --git a/src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp b/src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp new file mode 100644 index 00000000..38bd2da5 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/cmm/fms/selectEduAplctFile.jsp @@ -0,0 +1,104 @@ +<%@ 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="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<% + +/** + * @Class Name : selectScholSealInfs.jsp + * @Description : 파일 목록화면 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ---------- ------ --------------------------- + * @ 2009.03.26 이삼섭 최초 생성 + * @ 2011.07.20 옥찬우 Tag id속성 추가( Line : 68 ) + * + * @author 공통서비스 개발팀 이삼섭 + * @since 2009.03.26 + * @version 1.0 + * @see + * + */ +%> + + + + + + + + + + + + + + + + + ','')" class="file_download_a" title="다운로드" style="display:inline-block;"> + + + + () + + + + ',''); return false;" alt="첨부파일"> + +
+
+ + + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/eduRsltMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/eduRsltMngDetail.jsp index 20287fa3..0b3d97f5 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/eduRsltMngDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/adultVisitEdu/eduRsltMngDetail.jsp @@ -314,11 +314,14 @@ -

교육사진파일

+

결과보고

- - - + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndDetail.jsp index d22c9d6f..af8383d6 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndDetail.jsp @@ -1031,18 +1031,18 @@ -

교육 사진

+

결과보고

- + - + - + - + diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndList.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndList.jsp index ed1f1aaf..74617a84 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndList.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/aplct/adultVisitEdu/eduEnd/eduEndList.jsp @@ -165,7 +165,7 @@ ', '');"> - + 제출 diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/comm/fileUploadPop.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/comm/fileUploadPop.jsp index f2201782..4007137e 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/comm/fileUploadPop.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/comm/fileUploadPop.jsp @@ -233,6 +233,8 @@ setMsg = "강사 참석 확인서"; } else if (type == 'PHT') { setMsg = "교육사진"; + } else if (type == 'RSLT') { + setMsg = "결과보고"; } var url = ""; @@ -278,6 +280,7 @@ 계획서 강사 참석 확인서 교육 사진 + 결과보고 업로드

diff --git a/src/main/webapp/WEB-INF/jsp/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail.jsp b/src/main/webapp/WEB-INF/jsp/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail.jsp index f0c40cc8..fb79327e 100644 --- a/src/main/webapp/WEB-INF/jsp/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/ve/instr/adultVisitEdu/endInfo/instrEduEndDetail.jsp @@ -305,13 +305,6 @@ $( document ).ready(function() {
- - -

교육 사진

- - - -