From c7131e3d51538ca859c84eca5ccd00f48c13aae6 Mon Sep 17 00:00:00 2001 From: myname Date: Mon, 21 Aug 2023 17:12:41 +0900 Subject: [PATCH] =?UTF-8?q?2023-08-21=2017:12=20=EA=B8=B0=EB=B0=98?= =?UTF-8?q?=EA=B0=95=ED=99=94=20=EB=B0=8F=20=EA=B8=B0=EC=88=98=EC=9C=A0?= =?UTF-8?q?=EC=98=88=20=EA=B4=80=EB=A6=AC=EC=9E=90=20=EC=9E=91=EC=97=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/VEPrcsAplctPrdService.java | 9 +- .../prcsInfo/service/VEPrcsDetailVO.java | 57 +- .../prcsInfo/service/VEPrcsService.java | 2 + .../service/impl/VEPrcsAplctPrdDAO.java | 15 + .../impl/VEPrcsAplctPrdServiceImpl.java | 12 + .../web/FndthPrcsAplctMngController.java | 393 +++++++++ .../web/FndthPrcsAplctPrdMngController.java | 547 ++++++++++++ .../web/FndthPrcsInfoMngController.java | 2 +- .../service/EduAplctMngTngrService.java | 5 + .../impl/EduAplctMngTngrServiceImpl.java | 175 ++++ .../spring/com/context-idgen.xml | 21 +- .../sqlmap/ve/edu/VEEdu_MIX_SQL_Cubrid.xml | 8 + .../ve/prcs/VEPrcsAplctPrd_SQL_Cubrid.xml | 191 +++- .../fndthEduPrcsAplctMngDetail.jsp | 699 +++++++++++++++ .../fndthEduPrcsAplctMngList.jsp | 464 ++++++++++ .../fndthEduPrcsAplctPrdMngDetail.jsp | 210 +++++ .../fndthEduPrcsAplctPrdMngList.jsp | 317 +++++++ .../fndthEduPrcsAplctPrdMngMdfy.jsp | 272 ++++++ .../fndthEduPrcsAplctPrdMngReg.jsp | 262 ++++++ .../fndthEnhanceTrn/fndthEduPrcsAplctReg.jsp | 834 ++++++++++++++++++ .../fndthEnhanceTrn/fndthEduPrcsMngList.jsp | 5 +- 21 files changed, 4490 insertions(+), 10 deletions(-) create mode 100644 src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctMng/web/FndthPrcsAplctMngController.java create mode 100644 src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg.jsp create mode 100644 src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg.jsp 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 029f2ae0..ab4a3354 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 @@ -18,12 +18,19 @@ public interface VEPrcsAplctPrdService { //L List selectList(VEPrcsDetailVO paramVO) throws Exception; - + + + List selectList4Fndth(VEPrcsDetailVO paramVO) throws Exception; //Page List List selectPagingList(VEPrcsDetailVO paramVO) throws Exception; + //기반강화, 기소유예 + List selectPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception; + //R VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception; + + VEPrcsDetailVO selectDetailNewOne4Fndth(VEPrcsDetailVO paramVO) throws Exception; } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java index 8ba19651..9771f976 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsDetailVO.java @@ -61,7 +61,7 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable { private String prcsChoice; private String eduStrtDt; - private String eduEndDt; + private String eduEndDt; private String eduPrsnl; private String chrgMjr; @@ -96,6 +96,19 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable { private String oprtnFileId; + + private String eduStrtPnttm; + + private String eduDdlnPnttm; + + private String deadLineDt; + private String eduPartCd; + + private String nos; + private String ddlnCd; + + private String nosCnt1; //신청인 + public String getPrcsOrd() { return prcsOrd; } @@ -468,4 +481,46 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable { public void setPrcsKind(String prcsKind) { this.prcsKind = prcsKind; } + public String getEduStrtPnttm() { + return eduStrtPnttm; + } + public void setEduStrtPnttm(String eduStrtPnttm) { + this.eduStrtPnttm = eduStrtPnttm; + } + public String getEduDdlnPnttm() { + return eduDdlnPnttm; + } + public void setEduDdlnPnttm(String eduDdlnPnttm) { + this.eduDdlnPnttm = eduDdlnPnttm; + } + public String getDeadLineDt() { + return deadLineDt; + } + public void setDeadLineDt(String deadLineDt) { + this.deadLineDt = deadLineDt; + } + public String getEduPartCd() { + return eduPartCd; + } + public void setEduPartCd(String eduPartCd) { + this.eduPartCd = eduPartCd; + } + public String getNos() { + return nos; + } + public void setNos(String nos) { + this.nos = nos; + } + public String getDdlnCd() { + return ddlnCd; + } + public void setDdlnCd(String ddlnCd) { + this.ddlnCd = ddlnCd; + } + public String getNosCnt1() { + return nosCnt1; + } + public void setNosCnt1(String nosCnt1) { + this.nosCnt1 = nosCnt1; + } } diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsService.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsService.java index 194558d6..f6dbaee0 100644 --- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsService.java +++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/VEPrcsService.java @@ -19,6 +19,8 @@ public interface VEPrcsService { //L List selectList(VEPrcsDetailVO paramVO) throws Exception; + //List selectList4Fndth(VEPrcsDetailVO paramVO) throws Exception; + List selectTngrPrcsList(VEPrcsDetailVO paramVO) throws Exception; //Page List 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 c67dca3b..b959fe8b 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 @@ -55,6 +55,12 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO { return tlist; } + public List selectList4Fndth(VEPrcsDetailVO paramVO) throws Exception { + List tlist = (List) list("VEPrcsAplctPrdDAO.selectList4Fndth", paramVO); + return tlist; + } + + /** * L - Page * @param addrVO @@ -66,8 +72,17 @@ public class VEPrcsAplctPrdDAO extends EgovAbstractDAO { return tlist; } + public List selectPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception { + List tlist = (List) list("VEPrcsAplctPrdDAO.selectPagingList4Fndth", paramVO); + return tlist; + } + public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception { return (VEPrcsDetailVO) select("VEPrcsAplctPrdDAO.selectDetailNewOne", paramVO); + } + + public VEPrcsDetailVO selectDetailNewOne4Fndth(VEPrcsDetailVO paramVO) throws Exception { + return (VEPrcsDetailVO) select("VEPrcsAplctPrdDAO.selectDetailNewOne4Fndth", 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 f43261f5..f084e417 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 @@ -43,14 +43,26 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService { public List selectList(VEPrcsDetailVO paramVO) throws Exception{ return vEPrcsAplctPrdDAO.selectList(paramVO); } + + public List selectList4Fndth(VEPrcsDetailVO paramVO) throws Exception{ + return vEPrcsAplctPrdDAO.selectList4Fndth(paramVO); + } //paging List public List selectPagingList(VEPrcsDetailVO paramVO) throws Exception{ return vEPrcsAplctPrdDAO.selectPagingList(paramVO); } + public List selectPagingList4Fndth(VEPrcsDetailVO paramVO) throws Exception{ + return vEPrcsAplctPrdDAO.selectPagingList4Fndth(paramVO); + } + //R public VEPrcsDetailVO selectDetailNewOne(VEPrcsDetailVO paramVO) throws Exception { return vEPrcsAplctPrdDAO.selectDetailNewOne(paramVO); } + + public VEPrcsDetailVO selectDetailNewOne4Fndth(VEPrcsDetailVO paramVO) throws Exception { + return vEPrcsAplctPrdDAO.selectDetailNewOne4Fndth(paramVO); + } } diff --git a/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctMng/web/FndthPrcsAplctMngController.java b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctMng/web/FndthPrcsAplctMngController.java new file mode 100644 index 00000000..14505cf8 --- /dev/null +++ b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctMng/web/FndthPrcsAplctMngController.java @@ -0,0 +1,393 @@ +package kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctMng.web; + +import java.time.LocalDate; +import java.util.List; +import java.util.Properties; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +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 egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; +import kcc.com.cmm.LoginVO; +import kcc.com.cmm.service.EgovCmmUseService; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.util.IpUtil; +import kcc.com.cmm.util.StringUtil; +import kcc.com.utl.user.service.CheckLoginUtil; +import kcc.kccadr.sch.service.SchduleManageService; +import kcc.let.uss.ion.cnt.service.EgovCntManageService; +import kcc.let.uss.umt.service.EgovMberManageService; +import kcc.let.utl.fcc.service.EgovCryptoUtil; +import kcc.ve.cmm.VeConstants; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService; +import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiService; +import kcc.ve.oprtn.asgnmnoti.service.VEAsgnmNotiVO; +import kcc.ve.oprtn.tngrVisitEdu.eduAplctMng.service.EduAplctMngTngrService; + +/** + * 교육신청관리(관리자-청소년찾아가는저작권교육) + * 교육신청관리에 관한 controller 클래스를 정의한다. + * @author 조용준 + * @since 2021.12.16 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일      수정자           수정내용
+ *  -------    --------    ---------------------------
+ *   2021.12.16  조용준          최초 생성
+ *
+ * 
+ */ + +@Controller +public class FndthPrcsAplctMngController { + + private static final Logger LOGGER = LoggerFactory.getLogger(FndthPrcsAplctMngController.class); + + //로그인 체크 util + @Resource(name = "checkLoginUtil") + private CheckLoginUtil checkLoginUtil; + + //과정 관리 + @Resource(name = "vEPrcsService") + private VEPrcsService vEPrcsService; + + //기반연수 과정 관리 + @Resource(name = "vEPrcsAplctPrdService") + private VEPrcsAplctPrdService vEPrcsAplctPrdService; + + + + //신청과정 관리 + @Resource(name = "vEEduMIXService") + private VEEduMIXService vEEduMIXService; + + //교육신청 + @Resource(name = "vEEduAplctService") + private VEEduAplctService vEEduAplctService; + + //교육과정신청 + @Resource(name = "vEPrcsMIXService") + private VEPrcsMIXService vEPrcsMIXService; + + //차시 + @Resource(name = "vEEduChasiService") + private VEEduChasiService vVEEduChasiService; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + // global 프로퍼티 + @Resource(name="globalSettings") + protected Properties propertiesService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + @Resource(name = "eduAplctMngTngrService") + private EduAplctMngTngrService eduAplctMngTngrService; + + @Resource(name = "EgovCmmUseService") + private EgovCmmUseService egovCmmUseService; + + //NOTI 서비스 + @Resource(name="vEAsgnmNotiService") + private VEAsgnmNotiService vEAsgnmNotiService; + + @Resource(name = "schduleManageService") + private SchduleManageService schduleManageService; + + @Resource(name = "egovCntManageService") + private EgovCntManageService egovCntManageService; + + /** mberManageService */ + @Resource(name = "mberManageService") + private EgovMberManageService mberManageService; + + /** + * 기반강화연수 과정 신청 관리 목록 화면 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList.do") + public String fndthEduPrcsAplctMngList( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , HttpSession session, ModelMap model ) throws Exception { + + LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + + //년도 + if(StringUtils.isBlank(vEEduAplctVO.getSearchYear())){ + //vEEduAplctVO.setSearchYear(String.valueOf(LocalDate.now().getYear())); + } + + //월 + if(StringUtils.isBlank(vEEduAplctVO.getSearchMonth())){ + vEEduAplctVO.setSearchMonth(String.valueOf(LocalDate.now().getMonthValue())); + } + if(!"".equals(vEEduAplctVO.getSearchChrgNm())) { + vEEduAplctVO.setSearchChrgNm(egovCryptoUtil.encrypt(vEEduAplctVO.getSearchChrgNm())); + } + + // 요청, 반려건 + //vEEduAplctVO.setSearchNotStatusArr(new String[]{"60"}); + // 청소년 + vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + //1.pageing step1 + PaginationInfo paginationInfo = this.setPagingStep1(vEEduAplctVO); + + //정렬 + if("".equals(vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + vEEduAplctVO.setOrderByQuery("A.SBMT_PNTTM DESC"); + }else{ + vEEduAplctVO.setOrderByQuery(vEEduAplctVO.getSearchSortCnd() + " " +vEEduAplctVO.getSearchSortOrd()); + } + + System.out.println("vEEduAplctVO.getOrderByQuery() :: "+ vEEduAplctVO.getOrderByQuery()); + + //2. pageing step2 + vEEduAplctVO = this.setPagingStep2Sub(vEEduAplctVO, paginationInfo); + vEEduAplctVO.setNotiUserId(user.getUniqId()); + vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString()); + + + /* + * 리스트 검색에서 교육일자 시작/종료일 입력 없이 검색시 + * 기존 searchEndDt where 조건에 1=2로 되어있어서 리스트 검색이 안되던 것을 + * 저작위 요청사항으로 1=1로 변경하여 날짜 입력이 안되어도 검색이 되도록 수정함 + * 2023-04-28 우영두 + * + * */ + List vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO); + vEEduAplctVOList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduAplctVOList); + vEEduAplctVO.setSearchChrgNm(egovCryptoUtil.decrypt(vEEduAplctVO.getSearchChrgNm())); + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEEduAplctVOList, paginationInfo); + model.addAttribute("paginationInfo", paginationInfo); + //대상 리스트, 페이징 정보 전달 + model.addAttribute("list", vEEduAplctVOList); + return "oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList"; + } + + /** + * 기반강화연수 신청 등록 화면 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg.do") + public String fndthEduPrcsAplctReg( @ModelAttribute("modelVO") VEEduAplctVO vEEduAplctVO , ModelMap model ) throws Exception { + + vEEduAplctVO.setMode(VeConstants.MODE_CRT); + //온라인차시 리스트 + vEEduAplctVO.setUseYn("Y"); + vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + + //사용자 교육신청 과정 리스트 + VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO(); + vEPrcsDetailVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); + vEPrcsDetailVO.setUseYn("Y"); + vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectList4Fndth(vEPrcsDetailVO); + model.addAttribute("listPrcsAplct", vEPrcsDetailVOList); + + return "oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg"; + + } + + /** + * 기반강화연수 신청서 등록 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctRegAjax.do") + public ModelAndView fndthEduPrcsAplctRegAjax(@ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request , final MultipartHttpServletRequest multiRequest ) throws Exception { + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 처리==================================== + //로그인 정보 가져오기 + //MberManageVO mberManageVO = mberManageService.selectMber4AdminReg(vEEduAplctVO.getEmail()); + vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + boolean flag = eduAplctMngTngrService.fndthEduAplctRegProcess(vEEduAplctVO, request, multiRequest, modelAndView); + + if(!flag){ + modelAndView.addObject("result", "fail"); + return modelAndView; + } + modelAndView.addObject("VO", vEEduAplctVO); + modelAndView.addObject("result", "success"); + return modelAndView; + } + + /** + * 기반강화연수 신청 수정 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMdfyAjax.do") + public ModelAndView fndthEduPrcsAplctMdfyAjax( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request , final MultipartHttpServletRequest multiRequest ) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + System.out.println("eduAplctMdfyProcessAdmin"); + + vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + boolean flag = eduAplctMngTngrService.fndthEduAplctMdfyProcessAdmin(vEEduAplctVO, request, multiRequest, modelAndView); + if(!flag){ + modelAndView.addObject("result", "faii"); + return modelAndView; + } + modelAndView.addObject("VO", vEEduAplctVO); + modelAndView.addObject("result", "success"); + return modelAndView; + + } + + /** + * 기반강화연수 신청관리 상세 화면 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail.do") + public String eduAplctMngDetail( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request, HttpSession session ) throws Exception { + + LoginVO user = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + + //기본데이터 불러오기 + vEEduAplctVO = vEEduAplctService.selectDetail(vEEduAplctVO); + //데이터 복호화 - VO 단위로 만들어서 사용 + vEEduAplctVO = egovCryptoUtil.decryptVEEduAplctVOInfo(vEEduAplctVO); + model.addAttribute("info", vEEduAplctVO); + + + //사용자 교육신청 과정 리스트 + VEPrcsDetailVO vEPrcsDetailVO = new VEPrcsDetailVO(); + vEPrcsDetailVO.setUseYn("Y"); + vEPrcsDetailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_50); + List vEPrcsDetailVOList = vEPrcsService.selectTngrPrcsList(vEPrcsDetailVO); + model.addAttribute("list", vEPrcsDetailVOList); + + + //사용자 교육신청 차시 리스트 + VEEduChasiVO vEEduChasiVO = new VEEduChasiVO(); + vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); + vEEduChasiVO.setInstrDiv(VeConstants.LCTR_DIV_CD_50); + List vEEduChasiVOList = vVEEduChasiService.selectList(vEEduChasiVO); + model.addAttribute("chasiList", vEEduChasiVOList); + + model.addAttribute("cryptoUtil",egovCryptoUtil); + + //강의만족도 평가 여부를 위한 차시 리스트 MIX 조회 + VEEduChasiVO vEEduChasiAllVO = new VEEduChasiVO(); + vEEduChasiAllVO.setInstrDiv(VeConstants.LCTR_DIV_CD_50); //청소년 + vEEduChasiAllVO.setAprvlCd("60"); //교육확정코드 + vEEduChasiAllVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); + vEEduChasiAllVO.setPageIndex(0); + List vEEduChasiAllVOList = vEEduMIXService.selectChasiList(vEEduChasiAllVO); + model.addAttribute("chasiAllList", vEEduChasiAllVOList); + + //20220223 우영두 추가 + //강의내역 NOTI 입력 + VEAsgnmNotiVO vEAsgnmNotiVO = new VEAsgnmNotiVO(); + String tblUnitOrd = ""; + if(StringUtil.isNotEmpty(vEEduAplctVO.getEduChasiOrd())) { + tblUnitOrd = vEEduAplctVO.getEduChasiOrd(); + }else { + tblUnitOrd = vEEduAplctVO.getEduAplctOrd(); + } + + vEAsgnmNotiVO.setTblUniqOrd(tblUnitOrd); + vEAsgnmNotiVO.setFrstRegisterId(user.getUniqId()); + vEAsgnmNotiVO.setMenuNo(session.getAttribute("menuNo").toString()); + vEAsgnmNotiVO.setUrlPath(IpUtil.getRequestURI(request)); + + vEAsgnmNotiService.insertAsgnmNotiInfo(vEAsgnmNotiVO); + + System.out.println("session.getAttribute(menuNo).toString()-since20230424"); + System.out.println(session.toString()); + System.out.println(session.getAttribute("menuNo").toString()); + + + return "oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail"; + + } + + ////////////////////////////////////////////////////////////////////////////////////////////////////////////// + // + // + // private function + // + // + + //페이징을 위한 처리 step1 - 페이징 기본 정보 설정 + private PaginationInfo setPagingStep1( + VEEduAplctVO p_vEEduAplctVO + )throws Exception{ + // pageing step1 + PaginationInfo paginationInfo = new PaginationInfo(); + paginationInfo.setCurrentPageNo(p_vEEduAplctVO.getPageIndex()); + paginationInfo.setRecordCountPerPage(p_vEEduAplctVO.getPageUnit()); + paginationInfo.setPageSize(p_vEEduAplctVO.getPageSize()); + + return paginationInfo; + } + + + //페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화 + private VEEduAplctVO setPagingStep2( + VEEduAplctVO p_vEEduAplctVO + , PaginationInfo p_paginationInfo + )throws Exception{ + // pageing step2 + p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex()); + p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex()); + p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage()); + + if("".equals(p_vEEduAplctVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + p_vEEduAplctVO.setSearchSortCnd("prcs_ord"); + p_vEEduAplctVO.setSearchSortOrd("desc"); + } + + return p_vEEduAplctVO; + } + + //페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화 - 기존 prcs_ord 정렬부분 제외 + private VEEduAplctVO setPagingStep2Sub( + VEEduAplctVO p_vEEduAplctVO + , PaginationInfo p_paginationInfo + )throws Exception{ + // pageing step2 + p_vEEduAplctVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex()); + p_vEEduAplctVO.setLastIndex(p_paginationInfo.getLastRecordIndex()); + p_vEEduAplctVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage()); + + return p_vEEduAplctVO; + } + + + //페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기 + private PaginationInfo setPagingStep3( + List p_vEEduAplctVOList + + , PaginationInfo p_paginationInfo + )throws Exception{ + // pageing step3 + int totCnt = 0; + if(p_vEEduAplctVOList.size() > 0) totCnt = p_vEEduAplctVOList.get(0).getTotCnt(); + p_paginationInfo.setTotalRecordCount(totCnt); + + return p_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 new file mode 100644 index 00000000..735a1e16 --- /dev/null +++ b/src/main/java/kcc/ve/oprtn/fndtnEnhanceTrn/prcsAplctPrdMng/web/FndthPrcsAplctPrdMngController.java @@ -0,0 +1,547 @@ +package kcc.ve.oprtn.fndtnEnhanceTrn.prcsAplctPrdMng.web; + +import java.util.List; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +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; +import kcc.com.cmm.LoginVO; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.service.EgovFileMngUtil; +import kcc.com.cmm.util.StringUtil; +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.eduInfo.service.VEEduAplctService; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctVO; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService; +import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduMIXService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsMIXService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsOnlnCntntService; +import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsService; + +/** + * 기반강화연수(관리자) 신청기간관리 + * 기반강화연수에 관한 controller 클래스를 정의한다. + * @author 조용준 + * @since 2023.07.12 + * @version 1.0 + * @see + * + *
+ * << 개정이력(Modification Information) >>
+ *
+ *   수정일      수정자           수정내용
+ *  -------    --------    ---------------------------
+ *   2021.12.16  조용준          최초 생성
+ *
+ * 
+ */ + +@Controller +//@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn") +public class FndthPrcsAplctPrdMngController { + + private static final Logger LOGGER = LoggerFactory.getLogger(FndthPrcsAplctPrdMngController.class); + + //로그인 체크 util + @Resource(name = "checkLoginUtil") + private CheckLoginUtil checkLoginUtil; + + //과정 관리 + @Resource(name = "vEPrcsService") + private VEPrcsService vEPrcsService; + + //과정 관리 + @Resource(name = "vEEduMIXService") + private VEEduMIXService vEEduMIXService; + + //온라인콘텐츠과정 관리 + @Resource(name = "vEPrcsOnlnCntntService") + private VEPrcsOnlnCntntService vEPrcsOnlnCntntService; + + //과정차시 관리 + @Resource(name = "vEPrcsAplctPrdService") + private VEPrcsAplctPrdService vEPrcsAplctPrdService; + + //교육과정순번 + @Resource(name="prcsGnrService") + private EgovIdGnrService prcsGnrService; + + //과정신청기간순번 + @Resource(name="prcsAplctPrdGnrService") + private EgovIdGnrService prcsAplctPrdGnrService; + + //과정온라인콘텐츠순번 + @Resource(name="prcsOnlnGnrService") + private EgovIdGnrService prcsOnlnGnrService; + + //교육신청 + @Resource(name = "vEEduAplctService") + private VEEduAplctService vEEduAplctService; + + //교육과정신청 + @Resource(name = "vEPrcsMIXService") + private VEPrcsMIXService vEPrcsMIXService; + + //차시 + @Resource(name = "vEEduChasiService") + private VEEduChasiService vVEEduChasiService; + + //첨부파일 경로, realPath 설정 + @Resource(name="EgovFileMngUtil") + private EgovFileMngUtil fileUtil; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + //교육과정신청 + @Resource(name = "vEPrcsCmpltDetailService") + private VEPrcsCmpltDetailService vEPrcsCmpltDetailService; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + /* + + // 교육신청 서비스단 + @Resource(name = "AdjReqMgrService") + private AdjReqMgrService adjReqMgrService; + + // eGov 공통코드 + @Resource(name = "EgovCmmUseService") + private EgovCmmUseService cmmUseService; + + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileService; + + // global 프로퍼티 + @Resource(name="globalSettings") + protected Properties propertiesService; + + //첨부파일 경로, realPath 설정 + @Resource(name="EgovFileMngUtil") + private EgovFileMngUtil fileUtil; + + // 첨부파일 정보 + @Resource(name="EgovFileMngService") + private EgovFileMngService fileMngService; + + //암복호화 유틸 + @Resource(name = "egovCryptoUtil") + EgovCryptoUtil egovCryptoUtil; + + + @Resource(name="KccadrMgrUdtService") + private KccadrMgrUdtService kccadrMgrUdtService; + + // 교육신청 서비스단 + @Resource(name = "checkAdrProcessUtil") + private CheckAdrProcessUtil checkAdrProcessUtil; + */ + + /** + * 기반강화연수 과정 신청 기간 관리 목록 화면 + */ + + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList.do") + public String fndthEduPrcsAplctPrdMngList( + @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("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + + if(StringUtil.isNotEmpty(vEPrcsDetailVO.getSearchKeyword())){ + String selectCondition = "AND a.PRCS_NM LIKE CONCAT ('%', '" +vEPrcsDetailVO.getSearchKeyword() + "', '%')"; + vEPrcsDetailVO.setSelectPagingListQuery(selectCondition); + + } + + if(StringUtil.isNotEmpty(vEPrcsDetailVO.getPrcsKind())){ + String[] splited = vEPrcsDetailVO.getPrcsKind().split(","); + vEPrcsDetailVO.setSearchStatusArr(splited); + } + + if(StringUtil.isEmpty(vEPrcsDetailVO.getPrcsDiv())) { + + //vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모 + + } + List vEPrcsDetailVOList = vEPrcsAplctPrdService.selectPagingList4Fndth(vEPrcsDetailVO); + + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); + + + model.addAttribute("paginationInfo", paginationInfo); + + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("list", vEPrcsDetailVOList); + + + return "oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList"; + ///kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do + } + + + /** + * 기반강화연수과정 신청기간 등록 화면 + */ + //@RequestMapping("eduPrcsMngReg.do") + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg.do") + public String fndthEduPrcsAplctPrdMngReg( + @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.setOrderByQuery("a.prcs_nm asc"); + + vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo); + + //기반강화 조회 + vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + + List vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO); + + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); + + //model.addAttribute("paginationInfo", paginationInfo); + + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("listPrcs", vEPrcsDetailVOList); + } + + + + + return "oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg"; + } + + /** + * 기반강화연수과정 신청기간 등록 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngRegAjax.do") + public ModelAndView fndthEduPrcsAplctPrdMngRegAjax( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + , ModelMap model + //, RedirectAttributes redirectAttributes + , 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 로그인 정보 가져오기 + + + String prcsAplctPrdOrd = prcsAplctPrdGnrService.getNextStringId(); // 고유ID + vEPrcsDetailVO.setPrcsAplctPrdOrd(prcsAplctPrdOrd); + vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + //vEPrcsDetailVO.setUseYn("Y"); + vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + vEPrcsAplctPrdService.insert(vEPrcsDetailVO); + + + modelAndView.addObject("result", "success"); + + return modelAndView; + + } + + /** + * 기반강화연수과정 기간 상세화면 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail.do") + public String fndthEduPrcsMngDetail( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + + , ModelMap model + , RedirectAttributes redirectAttributes + , HttpSession session + , HttpServletRequest request + ) throws Exception { + + //로그인 처리==================================== + //로그인 정보 가져오기 + + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 + + //로그인 처리==================================== + + //과정 정보 가져오기 + /* + { + //1.pageing step1 + PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO); + //임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함 + paginationInfo.setRecordCountPerPage(10000); + + //2. pageing step2 + vEPrcsDetailVO.setOrderByQuery("a.prcs_nm asc"); + + vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo); + + //기반강화 조회 + vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + + vEPrcsDetailVO.setPrcsOrd(""); + + List vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO); + + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); + + //model.addAttribute("paginationInfo", paginationInfo); + + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("listPrcs", vEPrcsDetailVOList); + } + */ + + //과정 조회 + VEPrcsDetailVO vEPrcsDetailVODetail = vEPrcsAplctPrdService.selectDetailNewOne4Fndth(vEPrcsDetailVO); + model.addAttribute("info", vEPrcsDetailVODetail); + + //과정 신청자 정보 가져오기 + { + //해당 과정을 제출한 사용자 정보를 가져온다. + VEEduAplctVO paramVO = new VEEduAplctVO(); + paramVO.setPrcsOrd(vEPrcsDetailVO.getPrcsAplctPrdOrd()); + paramVO.setSbmtYn("Y"); + + List vEPrcsDetailVOList = vEEduMIXService.selectList(paramVO); + vEPrcsDetailVOList = egovCryptoUtil.decryptVEEduAplctVOList(vEPrcsDetailVOList); + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("listPrcsAplct", vEPrcsDetailVOList); + } + + return "/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail"; + } + + /** + * 기반강화연수과정 기간 상세수정화면 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy.do") + public String fndthEduPrcsAplctPrdMngMdfy( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + + , ModelMap model + , RedirectAttributes redirectAttributes + , HttpSession session + , HttpServletRequest request + ) throws Exception { + + //로그인 처리==================================== + //로그인 정보 가져오기 + + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 + + //로그인 처리==================================== + + //과정 정보 가져오기 + { + //1.pageing step1 + PaginationInfo paginationInfo = this.setPagingStep1(vEPrcsDetailVO); + //임시로 페이징 처리를 안하기 위해서 RecordCountPerPage 수를 10000 으로 셋팅함 + paginationInfo.setRecordCountPerPage(10000); + + //2. pageing step2 + vEPrcsDetailVO.setOrderByQuery("a.prcs_nm asc"); + + vEPrcsDetailVO = this.setPagingStep2(vEPrcsDetailVO, paginationInfo); + + //기반강화 조회 + vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + + vEPrcsDetailVO.setPrcsOrd(""); + + List vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO); + + //3.pageing step3 + paginationInfo = this.setPagingStep3(vEPrcsDetailVOList, paginationInfo); + + //model.addAttribute("paginationInfo", paginationInfo); + + + //대상 리스트, 페이징 정보 전달 + model.addAttribute("listPrcs", vEPrcsDetailVOList); + } + + //과정 조회 + VEPrcsDetailVO vEPrcsDetailVODetail = vEPrcsAplctPrdService.selectDetailNewOne4Fndth(vEPrcsDetailVO); + model.addAttribute("info", vEPrcsDetailVODetail); + + return "/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy"; + } + + /** + * 기반강화연수과정 신청기간 수정 + */ + @RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfyAjax.do") + public ModelAndView fndthEduPrcsAplctPrdMngMdfyAjax( + @ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO + , ModelMap model + //, RedirectAttributes redirectAttributes + , 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 로그인 정보 가져오기 + + + //String prcsAplctPrdOrd = prcsAplctPrdGnrService.getNextStringId(); // 고유ID + //vEPrcsDetailVO.setPrcsAplctPrdOrd(prcsAplctPrdOrd); + vEPrcsDetailVO.setLctrDivCd("50"); //강의구분코드 VE0011 10-청소년강의, 20-성인강의, 30-체험, 50-기반강화, 60-조건부 + //vEPrcsDetailVO.setUseYn("Y"); + vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + vEPrcsAplctPrdService.update(vEPrcsDetailVO); + + + modelAndView.addObject("result", "success"); + + return modelAndView; + + } + + ////////////////////////////////////////////////////////////////////////////////////////////////////////////// + // + // + // private function + // + // + + //페이징을 위한 처리 step1 - 페이징 기본 정보 설정 + private PaginationInfo setPagingStep1( + VEPrcsDetailVO p_vEPrcsDetailVO + )throws Exception{ + // pageing step1 + PaginationInfo paginationInfo = new PaginationInfo(); + paginationInfo.setCurrentPageNo(p_vEPrcsDetailVO.getPageIndex()); + paginationInfo.setRecordCountPerPage(p_vEPrcsDetailVO.getPageUnit()); + paginationInfo.setPageSize(p_vEPrcsDetailVO.getPageSize()); + + return paginationInfo; + } + + + //페이징을 위한 처리 step2 - 게시물 리스트 수량 설정 및 검색 조건 초기화 + private VEPrcsDetailVO setPagingStep2( + VEPrcsDetailVO p_vEPrcsDetailVO + , PaginationInfo p_paginationInfo + )throws Exception{ + // pageing step2 + p_vEPrcsDetailVO.setFirstIndex(p_paginationInfo.getFirstRecordIndex()); + p_vEPrcsDetailVO.setLastIndex(p_paginationInfo.getLastRecordIndex()); + p_vEPrcsDetailVO.setRecordCountPerPage(p_paginationInfo.getRecordCountPerPage()); + + if("".equals(p_vEPrcsDetailVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + p_vEPrcsDetailVO.setSearchSortCnd("prcs_ord"); + p_vEPrcsDetailVO.setSearchSortOrd("desc"); + } + + return p_vEPrcsDetailVO; + } + + + //페이징을 위한 처리 step3 - 전체 게시물 수량 설정하기 + private PaginationInfo setPagingStep3( + List p_vEPrcsDetailVOList + + , PaginationInfo p_paginationInfo + )throws Exception{ + // pageing step3 + int totCnt = 0; + if(p_vEPrcsDetailVOList.size() > 0) totCnt = p_vEPrcsDetailVOList.get(0).getTotCnt(); + p_paginationInfo.setTotalRecordCount(totCnt); + + return p_paginationInfo; + } +} 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 f3817f8e..a8df489b 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 @@ -186,7 +186,7 @@ public class FndthPrcsInfoMngController { if(StringUtil.isEmpty(vEPrcsDetailVO.getPrcsDiv())) { - vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모 + //vEPrcsDetailVO.setPrcsDiv("10");// 과정구분 VE0015 10-산업종사자, 20-대학생, 30-공무원, 40-일반인, 50-청소년, 60-학부모 } List vEPrcsDetailVOList = vEPrcsService.selectPagingList(vEPrcsDetailVO); diff --git a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/EduAplctMngTngrService.java b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/EduAplctMngTngrService.java index a9dd64a3..14f96a36 100644 --- a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/EduAplctMngTngrService.java +++ b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/EduAplctMngTngrService.java @@ -12,9 +12,14 @@ public interface EduAplctMngTngrService { boolean eduAplctRegProcess(VEEduAplctVO vEEduAplctVO , HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception; + + //기반강화 교육 등록 + boolean fndthEduAplctRegProcess(VEEduAplctVO vEEduAplctVO , HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception; boolean eduAplctMdfyProcess(VEEduAplctVO vEEduAplctVO , HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception; boolean eduAplctMdfyProcessAdmin(VEEduAplctVO vEEduAplctVO , HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception; + boolean fndthEduAplctMdfyProcessAdmin(VEEduAplctVO vEEduAplctVO , HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception; + } diff --git a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/impl/EduAplctMngTngrServiceImpl.java b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/impl/EduAplctMngTngrServiceImpl.java index fe289bab..be467497 100644 --- a/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/impl/EduAplctMngTngrServiceImpl.java +++ b/src/main/java/kcc/ve/oprtn/tngrVisitEdu/eduAplctMng/service/impl/EduAplctMngTngrServiceImpl.java @@ -187,6 +187,94 @@ public class EduAplctMngTngrServiceImpl implements EduAplctMngTngrService { return true; } + @Override + public boolean fndthEduAplctRegProcess(VEEduAplctVO vEEduAplctVO, HttpServletRequest request, MultipartHttpServletRequest multiRequest, ModelAndView modelAndView) throws Exception { + LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기 + //SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기 + + //로그인 처리==================================== + + + //step2.파일 처리==================================== + //파일 정상 처리 여부와 첨부 파일 정보 + //String atchFileId = this.takeFile(multiRequest, modelAndView, bmVO); + //파일 제한 수량 가져오기, 없으면 기본값 사용 + int i_file_limit = checkFileUtil.getLimitCount(request); // file count + int i_limit_size = checkFileUtil.getLimitSize(request); // file MB + String s_file_exts = checkFileUtil.getS_exts(); // file exts + + String s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbInsert( + multiRequest, modelAndView + , "SCHOLSEAL_" //file_name_prefix + , s_file_exts + , i_limit_size + , i_file_limit + ); //EXT, MB size and ea + + if ("ERROR".equals(s_scholSealAtchFileId)) return false; + //step2.파일 처리==================================== + //교육신청 번호 생성 및 디비 저장하기 + String eduAplctOrd = eduAplctGnrService.getNextStringId(); // 고유ID + vEEduAplctVO.setEduAplctOrd(eduAplctOrd); + //vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10); //강의 구분 코드 체험교실 + vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일 + vEEduAplctVO.setUserId(loginVO.getUniqId()); + vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + //저장전 암호화 - VO 단위로 만들어서 사용 + vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO); + + + MberManageVO mberManageVO = mberManageService.selectMber4AdminReg(vEEduAplctVO.getEmail()); + //System.out.println("mberManageVO2.getUniqId()"); + //System.out.println(mberManageVO.getUniqId()); + //System.out.println(mberManageVO.getUniqId()); + + if (mberManageVO!=null) { + vEEduAplctVO.setUserId(mberManageVO.getUniqId()); + vEEduAplctVO.setFrstRegisterId(mberManageVO.getUniqId()); //esntl_id + + } + + //저장 + vEEduAplctService.insert(vEEduAplctVO); + + + //차시 저장 + String[] s_eduHopeDt = request.getParameterValues("eduHopeDt"); + String[] s_strtTm = request.getParameterValues("strtTm"); + String[] s_endTm = request.getParameterValues("endTm"); + String[] s_lrnTm = request.getParameterValues("lrnTm"); + String[] s_divCd = request.getParameterValues("divCd"); + String[] s_trgt = request.getParameterValues("trgt"); + String[] s_prsnl = request.getParameterValues("prsnl"); + + VEEduChasiVO vEEduChasiVO = new VEEduChasiVO(); + vEEduChasiVO.setEduAplctOrd(eduAplctOrd); //교육신청순번 + vEEduChasiVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + if (mberManageVO!=null) { + vEEduChasiVO.setFrstRegisterId(mberManageVO.getUniqId()); //esntl_id + + } + + + String bb = null; + for (int i=0;i result = fileService.selectFileInfs(fileVO); + if (result.size()<=0) { + s_scholSealAtchFileId = ""; + } + + int i_file_limit = checkFileUtil.getLimitCount(request); // file count + int i_limit_size = checkFileUtil.getLimitSize(request); // file MB + String s_file_exts = checkFileUtil.getS_exts(); // file exts + + if ("".equals(s_scholSealAtchFileId)) { + s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbInsert( + multiRequest, modelAndView + , "SCHOLSEAL_" + , s_file_exts + , i_limit_size + , i_file_limit + ); //EXT, MB size and ea + }else { + s_scholSealAtchFileId = checkFileUtil.fileValCheckNdbUpdate( + multiRequest, modelAndView + , "SCHOLSEAL_" + , s_file_exts + , i_limit_size + , i_file_limit + , s_scholSealAtchFileId + ); //EXT, MB size and ea + } + + if ("ERROR".equals(s_scholSealAtchFileId)) return false; + + //step3.파일 처리==================================== + //교육신청 번호 생성 및 디비 저장하기 + //vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_10); //강의 구분 코드 체험교실 + vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일 + //vEEduAplctVO.setUserId(loginVO.getUniqId()); + vEEduAplctVO.setUserId(null); + vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + //저장전 암호화 - VO 단위로 만들어서 사용 + vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO); + //수정 + vEEduAplctService.update(vEEduAplctVO); + + //차시 수정-일괄 삭제 후 저장 + //교육확정은 수정 제외 +// if(!"60".equals(vEEduAplctVO.getAprvlCd())) { + String[] s_eduHopeDt = request.getParameterValues("eduHopeDt"); + String[] s_strtTm = request.getParameterValues("strtTm"); + String[] s_endTm = request.getParameterValues("endTm"); + String[] s_lrnTm = request.getParameterValues("lrnTm"); + String[] s_divCd = request.getParameterValues("divCd"); + String[] s_trgt = request.getParameterValues("trgt"); + String[] s_prsnl = request.getParameterValues("prsnl"); + + VEEduChasiVO vEEduChasiVO = new VEEduChasiVO(); + vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); + vEEduChasiVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id + + //차시 전체 삭제 + vVEEduChasiService.delete(vEEduChasiVO); + for (int i=0;i - + @@ -2703,13 +2703,28 @@ - + - + + + + + + + + + + + + + + + + diff --git a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Cubrid.xml b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Cubrid.xml index a6c2e8b2..d85bf83f 100644 --- a/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Cubrid.xml +++ b/src/main/resources/egovframework/sqlmap/ve/edu/VEEdu_MIX_SQL_Cubrid.xml @@ -123,6 +123,14 @@ a WHERE 1=1 + + + AND a.prcs_ord=#prcsOrd# + + + AND a.sbmt_yn=#sbmtYn# + + diff --git a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Cubrid.xml b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Cubrid.xml index 357c7323..6a37621a 100644 --- a/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Cubrid.xml +++ b/src/main/resources/egovframework/sqlmap/ve/prcs/VEPrcsAplctPrd_SQL_Cubrid.xml @@ -28,7 +28,15 @@ popup_cn, atch_file_id, - title + title + + ,dead_line_dt + ,prcs_ord + ,edu_part_cd + ,nos + ,ddln_cd + ,edu_strt_pnttm + ,edu_ddln_pnttm @@ -49,7 +57,15 @@ a.popup_cn AS popupCn, a.atch_file_id AS atchFileId, - a.title AS title + a.title AS title + + ,a.dead_line_dt AS deadLineDt + ,a.prcs_ord AS prcsOrd + ,a.edu_part_cd AS eduPartCd + ,a.nos AS nos + ,a.ddln_cd AS ddlnCd + ,a.edu_strt_pnttm AS eduStrtPnttm + ,a.edu_ddln_pnttm AS eduDdlnPnttm @@ -76,6 +92,14 @@ #atchFileId#, #title# + + ,#deadLineDt# + ,#prcsOrd# + ,#eduPartCd# + ,#nos# + ,#ddlnCd# + ,#eduStrtPnttm# + ,#eduDdlnPnttm# ) @@ -123,6 +147,28 @@ , atch_file_id = #atchFileId# + + + , dead_line_dt = #deadLineDt# + + + , prcs_ord = #prcsOrd# + + + , edu_part_cd = #eduPartCd# + + + , nos = #nos# + + + , ddln_cd = #ddlnCd# + + + , edu_strt_pnttm = #eduStrtPnttm# + + + , edu_ddln_pnttm = #eduDdlnPnttm# + WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd# @@ -155,7 +201,32 @@ + + + + + + + + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail.jsp new file mode 100644 index 00000000..313eda5c --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngDetail.jsp @@ -0,0 +1,699 @@ + +<%@ 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="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> + + +<% pageContext.setAttribute("replaceChar", "\n"); %> + +<% + /** + * @Class Name : fndthEduPrcsAplctMngDetail.jsp + * @Description : 기반강화연수 신청 상세 보기 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.16 조용준 최초 생성 + * @author 조용준 + * @since 2021.12.16 + * @version 1.0 + * @see + * + */ +%> + + +교육신청 상세 + + + + + + + + + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + + +
+ + +
+ + " /> + + + + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + +
+ " /> + +
+ +
+
+ +
+

교육 신청 상세

+
    +
  • +
  • +

    청소년 찾아가는 저작권교육

    +
  • +
  • 교육신청 상세
  • +
+
+ + + +
+ +
+

교육신청 내용

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

교육구분

+
+ + +

학교(기관)명

+
+

학교구분

+
+ + +

도시벽지학교여부

+
${info.isltnScholYn eq 'Y' ? '예' : '아니오'}
+

주소

+
${info.addr} ${info.addrDetail}
+

담당자

+
+

휴대폰

+
${info.clphone} +

전화

+
${info.phone}
+

이메일

+
${info.email}
+

교육장소

+
+ +

+ checked disabled="disabled"> 집체교육 +

+

+ checked disabled="disabled"> 방송실교육 +

+
+

교육내용

+
+ + + - ${list.prcsNm}
+
+
+
+

기자재 유무

+
+ +
+

신청상태

+
+ + + 신청취소 + + + 작성중 + + + 교육신청 + + + 대기 + + + 교육승인 + + + 교육반려 + + + 교육확정 + + + 수정요청(대기) + + + 수정완료(대기) + + + - + + +
+

수정요청사유

+
+
+ + + +
+

교육차시 정보

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
no교육희망일시간구분대상배정강사인원
+ + + <%-- + --%> + ${list.eduHopeDt} + + + - + + + + + + ~ + + + (${list.lrnTm}분) + + + + + + - + + +
(${fn:split(list.userId,'_')[1]*1}) +
+
+
+ + +
+

알림정보

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

SMS 내용

+
+
+ + +
+

0/90 byte

+
+

이메일 답변 내용

+
+
+ + + +
+

0/1000 byte

+
+
+ + + +
+

비공개 메모

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

내용

+
+
+ + +
+
+
+ + + + +
+
+ + +
+
+ + + + + + + + + + + + + + + + + + +
+
+ + + + + + + +
+
+ +
+
+
+ + +. + + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList.jsp new file mode 100644 index 00000000..1af55795 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctMngList.jsp @@ -0,0 +1,464 @@ + +<%@ 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="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> +<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> + + + + + + + +신청관리 + + + + + " /> + " /> + + + " /> +
+
+ +
+

교육신청 목록

+
    +
  • +
  • +

    청소년 찾아가는 저작권 교육

    +
  • +
  • 교육신청목록
  • +
+
+ + +
+ +
+
+
+

구분

+
+
+ + + + +
+
+
+
+

학교(기관)명

+
+
+ +
+
+
+
+

신청자명

+
+
+ + + +
+
+
+
+

교육일자

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

신청일자

+
+
+
+ +
+ ~ +
+ +
+
+ 관리자 수정 건만 보기checked> +
+
+
+
+ + + +
+

총 건수 :

+
+ + + +
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호교육일자신청일자지역학교(기관)명신청시간학교구분담당자신청상태확정일자관리자 수정 여부
+ + + + + + + + + + + + - + + + + + + + + + + + (온) + + + + + + + + + + + + + + + + + + + + + + + + 대기 + + + 교육신청 + + + 교육승인 + + + 교육반려 + + + 교육취소 + + + 선정완료 + + + 수정요청(대기) + + + 수정완료(대기) + + + 교육확정 + + + - + + + + +

${list.aprvlPnttm}

+
+
+ + + 예 + + + 아니오 + + +
+
+ +
+
+ + +
+
+
+
+ +
+
+ +
+ +
+ +
+
+
+
+ . + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail.jsp new file mode 100644 index 00000000..7fd75574 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngDetail.jsp @@ -0,0 +1,210 @@ + +<%@ 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 : fndthEduPrcsAplctPrdMngDetail.jsp + * @Description : 기반강화연수 기간 상세화면 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.16 조용준 최초 생성 + * @author 조용주 + * @since 2021.12.16 + * @version 1.0 + * @see + * + */ +%> + + +교육과정관리 + + + + + + + + + + +
+
+ + +
+

교육 과정 상세

+
    +
  • +
  • +

    교육콘텐츠

    +
  • +
  • 교육 과정 관리
  • +
  • 교육 과정 상세
  • +
+
+ + +
+ +
+

교육과정관리

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
과정 + + +
교육부분코드 + +
신청기간 + ~ +
교육기간 + ~ +
정원 + +
상태 + +
+

공개여부(사용여부)

+
+ + 아니오 +
+
+ + + +
+
+
+
+
+
+ + +
+
+ + +
+

교육신청자

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
번호신청자제출일시신청상태
+ + + + + + + + + +
+
+ + +
+
+
+
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList.jsp new file mode 100644 index 00000000..338bfaa7 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngList.jsp @@ -0,0 +1,317 @@ + +<%@ 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" %> + +<% + /** + * @Class Name : fndthEduPrcsAplctPrdMngList.jsp + * @Description : 기반강화연수 과정 신청기간관리 목록 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.14 조용준 최초 생성 + * @author 조용준 + * @since 2021.12.14 + * @version 1.0 + * @see + * + */ +%> + + + + + + 과정신청기간관리목록 + + + + + " /> + " /> + + + + +
+
+ + +
+

과정신청기간관리목록

+
    +
  • +
  • +

    기반강화연수관리

    +
  • +
  • 과정신청기간관리목록
  • +
+
+ + +
+
+

과정 신청기간 관리

+
+ +
+
+
+

이름

+
+
+ + + checked="checked"> + + checked="checked"> + + checked="checked"> + + + + +
+
+
+ +
+

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

+
+ + <%----%> +
+
+ + + + + +
+

총 건수 :

+ <%--
+ +
--%> +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NO교육구분코드과정명신청기간교육기간신청자/정원상태공개여부
');" style="cursor:pointer;"> + + ');" style="cursor:pointer;"> + + ');" style="cursor:pointer;"> + () + ');" style="cursor:pointer;"> + ~ + ');" style="cursor:pointer;"> + ~ + ');" style="cursor:pointer;"> + / + ');" style="cursor:pointer;"> + + ');" style="cursor:pointer;"> + +
+
+ + + +
+ +
+
+
+
+
+
+
+ +
+
+ +
+
+
+ + + +
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy.jsp new file mode 100644 index 00000000..63f3d916 --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngMdfy.jsp @@ -0,0 +1,272 @@ + +<%@ 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 : fndthEduPrcsAplctPrdMngMdfy.jsp + * @Description : 기반강화연수 기간 정보 수정 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.16 조용준 최초 생성 + * @author 조용주 + * @since 2021.12.16 + * @version 1.0 + * @see + * + */ +%> + + +교육과정관리 + + + + + + + + + + +
+
+ + +
+

교육 과정 수정

+
    +
  • +
  • +

    교육콘텐츠

    +
  • +
  • 교육 과정 관리
  • +
  • 교육 과정 수정
  • +
+
+ + +
+ +
+

교육과정관리

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
과정 +<%-- --%> + + + +
교육부분코드 + +
신청기간 +
+ +
+ ~ +
+ +
+ +
교육기간 +
+ +
+ ~ +
+ +
+ +
정원 + +
상태 +
+

공개여부(사용여부)

+
+ + + + + +
+
+ + + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg.jsp new file mode 100644 index 00000000..df864a1f --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctPrdMngReg.jsp @@ -0,0 +1,262 @@ + +<%@ 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 : fndthEduPrcsAplctPrdMngReg.jsp + * @Description : 기반강화연수 과정 신청기간 등록 + * @Modification Information + * @ + * @ 수정일 수정자 수정내용 + * @ ------- -------- --------------------------- + * @ 2021.12.16 조용준 최초 생성 + * @author 조용주 + * @since 2021.12.16 + * @version 1.0 + * @see + * + */ +%> + + +교육과정관리 + + + + + + + + + +
+
+ + +
+

기반강화연수 과정 신청기간 등록

+
    +
  • +
  • +

    기반강화연수관리

    +
  • +
  • 기반강화연수 과정 신청기간 등록
  • +
+
+ + +
+ +
+

기반강화연수 과정 신청기간 등록

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
과정 +<%-- --%> + + + +
교육부분코드 + +
신청기간 +
+ +
+ ~ +
+ +
+ +
교육기간 +
+ +
+ ~ +
+ +
+ +
정원 + +
+

공개여부(사용여부)

+
+ + + + + +
+
+ + + +
+
+
+
+
+
+ + +
+
+
+
+
+
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg.jsp new file mode 100644 index 00000000..3065b8eb --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsAplctReg.jsp @@ -0,0 +1,834 @@ + +<%@ 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="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> +<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> + + + + +교육신청 수정 + + + + + +
+
+ + + + +
+ + + " /> + " /> + " /> + + + + + + + + + + + + + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + " /> + + + + +
+
+ +
+

교육신청 등록

+
    +
  • +
  • +

    교육신청관리

    +
  • +
  • 교육신청 등록
  • +
+
+ + +
+ +
+

교육신청 내용

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

필수입력 항목*

+

신청과정

+
+ <%-- --%> + + + +
+

필수입력 항목*

+

교육선택

+
+ + + + + +
+

필수입력 항목*

+

학교(기관)명

+
+ + + +
+

필수입력 항목*

+

학교구분

+
+ +
+

필수입력 항목*

+

도서벽지학교여부

+
+ + + + +
+

필수입력 항목*

+

주소

+
+
<%----%> +
+ +
+

필수입력 항목*

+

담당자

+
+ +
+

필수입력 항목*

+

휴대폰

+
+ + + - + + - + +
+

필수입력 항목*

+

전화

+
+ + + - + + - + +
+

필수입력 항목*

+

이메일

+
+ + + @ + + + + ※ 교내에서 확인 가능한 메일 계정 입력 (예) 교육청 도메인
+ ※ 교육일정 및 강사프로필은 교육 전 주에 메일로 발송됩니다. +
+
+

필수입력 항목*

+

교육장소

+
+ +

+ checked> + +

+

+ checked> + +

+
+

교육내용

+
+ + + +
+
+
+

기자재유무

+
+ +
+
+ +
+
+

교육차시 정보

+ ※ 교육추가 버튼을누러 대상별 1줄씩 작성(1줄 = 강사 1인) 바랍니다. (예시 : 3개 학급 신청 시 대상별 3줄 작성) +
+
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
교육희망일시간구분대상인원삭제
+
+ + " name="eduHopeDt" class="calendar" title="시작일 선택" size="8"> +
+
+
+
+ + " class="time" name="strtTm"> +
+
+

시간 선택

+
+
+
+ +
+ : +
+ +
+
+ +
+
+
+ + " class="time" name="endTm"> +
+
+

시간 선택

+
+
+
+ +
+ : +
+ +
+
+ +
+
(분) +
+
+ +

+
+ +
+
+
+
+ +
+
+

시간 선택

+
+
+
+ +
+ : +
+ +
+
+ +
+
+
+ +
+
+

시간 선택

+
+
+
+ +
+ : +
+ +
+
+ +
+
(분) +
+
+ +

+
+ + +
+
+
+
+
+
+ + +
+
+ +
+
+
+
+ + + diff --git a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.jsp b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.jsp index 6d5cb14d..fa47fc08 100644 --- a/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.jsp +++ b/src/main/webapp/WEB-INF/jsp/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.jsp @@ -175,7 +175,10 @@

이름

- + checked="checked">