관리자 기반강화 > 이미지 등록 / 수정 완료

This commit is contained in:
hylee 2023-11-15 11:31:24 +09:00
parent e5648b841c
commit 451581d70a
15 changed files with 1272 additions and 720 deletions

View File

@ -136,6 +136,8 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
private String cnclAtchFileId; private String cnclAtchFileId;
private String cnclCn; private String cnclCn;
private String imageAtchFileId;
@ -656,6 +658,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
public void setCnclCn(String cnclCn) { public void setCnclCn(String cnclCn) {
this.cnclCn = cnclCn; this.cnclCn = cnclCn;
} }
public String getImageAtchFileId() {
return imageAtchFileId;
}
public void setImageAtchFileId(String imageAtchFileId) {
this.imageAtchFileId = imageAtchFileId;
}
} }

View File

@ -30,5 +30,7 @@ public interface VEPrcsService {
void updatePrcsSort(VEPrcsDetailVO paramVO) throws Exception; void updatePrcsSort(VEPrcsDetailVO paramVO) throws Exception;
void deleteInstr(VEPrcsDetailVO vEPrcsDetailVO); void deleteInstr(VEPrcsDetailVO vEPrcsDetailVO);
void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO);
} }

View File

@ -80,5 +80,9 @@ public class VEPrcsDAO extends EgovAbstractDAO {
public void deleteInstr(VEPrcsDetailVO vEPrcsDetailVO) { public void deleteInstr(VEPrcsDetailVO vEPrcsDetailVO) {
delete("VEPrcsDAO.deleteInstr", vEPrcsDetailVO); delete("VEPrcsDAO.deleteInstr", vEPrcsDetailVO);
} }
public void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO) {
update("VEPrcsDAO.updateImageAtchFileId", vEPrcsDetailVO);
}
} }

View File

@ -64,5 +64,10 @@ public class VEPrcsServiceImpl implements VEPrcsService {
vEPrcsDAO.deleteInstr(vEPrcsDetailVO); vEPrcsDAO.deleteInstr(vEPrcsDetailVO);
} }
@Override
public void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO) {
vEPrcsDAO.updateImageAtchFileId(vEPrcsDetailVO);
}
} }

View File

@ -1,17 +1,21 @@
package kcc.ve.oprtn.fndtnEnhanceTrn.prcsInfoMng.web; package kcc.ve.oprtn.fndtnEnhanceTrn.prcsInfoMng.web;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap; import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes; import org.springframework.web.servlet.mvc.support.RedirectAttributes;
@ -20,12 +24,14 @@ import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO; import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.EgovFileMngService; import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil; import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.service.FileVO;
import kcc.com.cmm.util.StringUtil; import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.user.service.CheckLoginUtil; import kcc.com.utl.user.service.CheckLoginUtil;
import kcc.let.uat.uia.service.SsoLoginVO; import kcc.let.uat.uia.service.SsoLoginVO;
import kcc.let.utl.fcc.service.EgovCryptoUtil; import kcc.let.utl.fcc.service.EgovCryptoUtil;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduAplctService;
import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService; import kcc.ve.instr.tngrVisitEdu.eduInfo.service.VEEduChasiService;
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO;
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO; import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
@ -104,7 +110,14 @@ public class FndthPrcsInfoMngController {
@Resource(name = "EgovFileMngService") @Resource(name = "EgovFileMngService")
private EgovFileMngService fileService; private EgovFileMngService fileService;
//파일 처리 egov
@Resource(name="EgovFileMngUtil")
private EgovFileMngUtil egovFileMngUtil;
//파일 처리 egov
@Resource(name = "EgovFileMngService")
private EgovFileMngService fileMngService;
/* /*
// 교육신청 서비스단 // 교육신청 서비스단
@ -325,6 +338,65 @@ public class FndthPrcsInfoMngController {
return "oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy"; return "oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy";
} }
/**
* @methodName : instrAplctPhotoPopup
* @author : 이호영
* @date : 2023.11.14
* @description : 기반강화 과정 수정 - 이미지 등록
* @param vEInstrDetailVO
* @param model
* @param request
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoPopup.do")
public String instrAplctPhotoPopup(@ModelAttribute("info") VEPrcsDetailVO vEPrcsDetailVO, ModelMap model, HttpServletRequest request) throws Exception {
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
//로그인 처리====================================
if(StringUtils.isNotBlank(vEPrcsDetailVO.getImageAtchFileId())){
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(vEPrcsDetailVO.getImageAtchFileId());
List<FileVO> fileList = fileService.selectFileInfs(fileVO);
model.addAttribute("fileList", fileList);
}
return "oprtn/fndthEnhanceTrn/popup/fndthEduPhotoPopup";
}
/**
* @methodName : instrAplctPhotoPopup
* @author : 이호영
* @date : 2023.11.15
* @description : 기반강화 과정 등록 - 이미지 등록
* @param vEPrcsDetailVO
* @param model
* @param request
* @return
* @throws Exception
*/
@RequestMapping(value = "/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup.do")
public String fndthEduPhotoRegPopup(@ModelAttribute("info") VEPrcsDetailVO vEPrcsDetailVO, ModelMap model, HttpServletRequest request) throws Exception {
//로그인 처리====================================
//로그인 정보 가져오기
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
//로그인 처리====================================
if(StringUtils.isNotBlank(vEPrcsDetailVO.getImageAtchFileId())){
FileVO fileVO = new FileVO();
fileVO.setAtchFileId(vEPrcsDetailVO.getImageAtchFileId());
List<FileVO> fileList = fileService.selectFileInfs(fileVO);
model.addAttribute("fileList", fileList);
}
return "oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup";
}
/** /**
* 기반강화연수과정 화면 * 기반강화연수과정 화면
*/ */
@ -360,28 +432,74 @@ public class FndthPrcsInfoMngController {
//세부과정 지우고 다시 생성 //세부과정 지우고 다시 생성
VEPrcsCntntVO vEPrcsCntntVO = new VEPrcsCntntVO(); VEPrcsCntntVO vEPrcsCntntVO = new VEPrcsCntntVO();
vEPrcsCntntVO.setPrcsOrd(vEPrcsDetailVO.getPrcsOrd()); vEPrcsCntntVO.setPrcsOrd(vEPrcsDetailVO.getPrcsOrd());
// int iv = vEPrcsOnlnCntntService.deleteAll(vEPrcsCntntVO);
// String[] s_detailPrcsNm = request.getParameterValues("detailPrcsNm");
/*for (int i=0;i<s_detailPrcsNm.length;i++) {
String prcsOnlnOrd = prcsOnlnGnrService.getNextStringId(); // 고유ID
vEPrcsCntntVO.setPrcsOnlnCntntOrd(prcsOnlnOrd);
//vEPrcsCntntVO.setPrcsNm(s_detailPrcsNm[i]);
vEPrcsCntntVO.setDetailPrcsNm(s_detailPrcsNm[i]);
vEPrcsCntntVO.setChasi(String.valueOf(i+1));
vEPrcsCntntVO.setUseYn("Y");
vEPrcsCntntVO.setLastUpdusrId(loginVO.getUniqId()); //esntl_id
vEPrcsOnlnCntntService.insert(vEPrcsCntntVO);
} */
modelAndView.addObject("result", "success"); modelAndView.addObject("result", "success");
return modelAndView; return modelAndView;
} }
@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPhotoPopupAjax.do")
public ModelAndView fndthEduPhotoPopupAjax(
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
, final MultipartHttpServletRequest multiRequest
, ModelMap model
, HttpServletRequest request
) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
String atchFileId = "";
final Map<String, MultipartFile> files = multiRequest.getFileMap();
if (!files.isEmpty()) {
//XXX_로 첨부파일 네이밍
List<FileVO> result = egovFileMngUtil.parseFileInf(files, "fnd_", 0, "", "", "");
atchFileId = fileMngService.insertFileInfs(result);
}
//첨부파일Id(atchFileId) 해당 VO atchFileId변수에 저장
vEPrcsDetailVO.setImageAtchFileId(atchFileId);
vEPrcsService.updateImageAtchFileId(vEPrcsDetailVO);
modelAndView.addObject("result", "success");
return modelAndView;
}
/**
* @methodName : fndthEduPhotoPopupAjax
* @author : 이호영
* @date : 2023.11.15
* @description : 기반강화 과정 등록 - 이미지 등록 - ajax
* @param vEPrcsDetailVO
* @param multiRequest
* @param model
* @param request
* @return
* @throws Exception
*/
@RequestMapping("/kccadr/oprtn/fndthEnhanceTrn/fndthEduPhotoPopupRegAjax.do")
public ModelAndView fndthEduPhotoPopupRegAjax(
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
, final MultipartHttpServletRequest multiRequest
, ModelMap model
, HttpServletRequest request
) throws Exception {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView");
String atchFileId = "";
final Map<String, MultipartFile> files = multiRequest.getFileMap();
if (!files.isEmpty()) {
//XXX_로 첨부파일 네이밍
List<FileVO> result = egovFileMngUtil.parseFileInf(files, "fnd_", 0, "", "", "");
atchFileId = fileMngService.insertFileInfs(result);
}
//첨부파일Id(atchFileId) 해당 VO atchFileId변수에 저장
// vEPrcsService.updateImageAtchFileId(vEPrcsDetailVO);
modelAndView.addObject("result", "success");
modelAndView.addObject("atchFileId", atchFileId);
return modelAndView;
}
/** /**

View File

@ -54,9 +54,9 @@
, SYSDATE , SYSDATE
, #aplctAtchFileId# , #aplctAtchFileId#
, #cmpnnCn# , #cmpnnCn#
, ''
, #frstRegisterId#
, SYSDATE , SYSDATE
, #frstRegisterId#
, ''
, #lastUpdusrId# , #lastUpdusrId#
) )
</insert> </insert>

View File

@ -24,24 +24,26 @@
last_updt_pnttm, last_updt_pnttm,
last_updusr_id, last_updusr_id,
lctr_div_cd, lctr_div_cd,
use_yn use_yn,
image_atch_file_id
</sql> </sql>
<!-- 조회용 공통 컬럼 명 --> <!-- 조회용 공통 컬럼 명 -->
<sql id="VEPrcsDAO.select_column_name"> <sql id="VEPrcsDAO.select_column_name">
A.PRCS_ORD AS prcsOrd, A.PRCS_ORD AS prcsOrd,
A.PRCS_DIV AS prcsDiv, A.PRCS_DIV AS prcsDiv,
A.PRCS_KIND AS prcsKind, A.PRCS_KIND AS prcsKind,
A.PRCS_NM AS prcsNm, A.PRCS_NM AS prcsNm,
A.PRCS_CN AS prcsCn, A.PRCS_CN AS prcsCn,
A.PRCS_SORT_NO AS prcsSortNo, A.PRCS_SORT_NO AS prcsSortNo,
TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') AS frstRegistPnttm, TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') AS frstRegistPnttm,
A.FRST_REGISTER_ID AS frstRegisterId, A.FRST_REGISTER_ID AS frstRegisterId,
TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD') AS lastUpdtPnttm, TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD') AS lastUpdtPnttm,
A.LAST_UPDUSR_ID AS lastUpdusrId, A.LAST_UPDUSR_ID AS lastUpdusrId,
A.LCTR_DIV_CD AS lctrDivCd, A.LCTR_DIV_CD AS lctrDivCd,
A.USE_YN AS useYn A.USE_YN AS useYn,
A.IMAGE_ATCH_FILE_ID AS imageAtchFileId
</sql> </sql>
<!-- 강사 등록 C --> <!-- 강사 등록 C -->
@ -62,7 +64,8 @@
SYSDATE, SYSDATE,
#lastUpdusrId#, #lastUpdusrId#,
#lctrDivCd#, #lctrDivCd#,
#useYn# #useYn#,
#imageAtchFileId#
) )
</insert> </insert>
@ -341,6 +344,16 @@
</update> </update>
<update id="VEPrcsDAO.updateImageAtchFileId" parameterClass="VEPrcsDetailVO">
UPDATE VE_PRCS SET
IMAGE_ATCH_FILE_ID = #imageAtchFileId#
, LAST_UPDUSR_ID = #lastUpdusrId#
, LAST_UPDT_PNTTM = SYSDATE
WHERE PRCS_ORD = #prcsOrd#
</update>
<delete id="VEPrcsDAO.deleteInstr" parameterClass="VEPrcsDetailVO"> <delete id="VEPrcsDAO.deleteInstr" parameterClass="VEPrcsDetailVO">
DELETE FROM VEA_PRCS_APLCT_PRD_INSTR_ASGNM DELETE FROM VEA_PRCS_APLCT_PRD_INSTR_ASGNM
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd# WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#

View File

@ -421,7 +421,7 @@
<!-- <input type="text" id="fileNm" size="30" class="file_input" readonly> --><!-- <button type="button" class="btnType01 btn_add_file">파일 첨부하기</button> --> <!-- <input type="text" id="fileNm" size="30" class="file_input" readonly> --><!-- <button type="button" class="btnType01 btn_add_file">파일 첨부하기</button> -->
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/> <input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btn_type01">파일 첨부하기</button> <button type="button" id="filebutton" class="btn_type01">파일 첨부하기</button>
<p style="padding-left:30px;">첨부파일 가능 용량은 20MB입니다. </p><p style="color:red;font-weight:500">업로드 순서는 1.신청서 2.안내문 입니다.</p> <p style="padding-left:30px;">첨부파일 가능 용량은 20MB입니다. </p>
<div class="file_wrap file_upload_box no_img_box"> <div class="file_wrap file_upload_box no_img_box">
<table class="tbType02"> <table class="tbType02">
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption> <caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>

View File

@ -1,150 +1,155 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%> pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ 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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<% <%
/** /**
* @Class Name : fndthEduPrcsMngDetail.jsp * @Class Name : fndthEduPrcsMngDetail.jsp
* @Description : 기반강화연수 상세화면 * @Description : 기반강화연수 상세화면
* @Modification Information * @Modification Information
* @ * @
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------- -------- --------------------------- * @ ------- -------- ---------------------------
* @ 2021.12.16 조용준 최초 생성 * @ 2021.12.16 조용준 최초 생성
* @author 조용주 * @author 조용주
* @since 2021.12.16 * @since 2021.12.16
* @version 1.0 * @version 1.0
* @see * @see
* *
*/ */
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<title>교육과정관리</title> <title>교육과정관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"> <script type="text/javascript">
function fncGoList(){ function fncGoList(){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
function fncMdfy(){ function fncMdfy(){
var detailForm = document.detailForm ; var detailForm = document.detailForm ;
detailForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy.do'/>"; detailForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngMdfy.do'/>";
detailForm.submit(); detailForm.submit();
} }
</script> </script>
</head> </head>
<body> <body>
<form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post"> <form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post">
</form:form> </form:form>
<form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post"> <form:form id="detailForm" name="detailForm" commandName="vEPrcsDetailVO" method="post">
<input type="hidden" name="prcsOrd" value="<c:out value='${vEPrcsDetailVO.prcsOrd}' default='1' />"/> <input type="hidden" name="prcsOrd" value="<c:out value='${vEPrcsDetailVO.prcsOrd}' default='1' />"/>
<!-- cont --> <!-- cont -->
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>교육 과정 등록</h2> <h2>교육과정상세</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>교육콘텐츠</p> <p>실무자역량강화(기반강화연수관리)</p>
</li> </li>
<li><span class="cur_nav">교육 과정 관리</span></li> <li><span class="cur_nav">기반강화연수관리</span></li>
<li><span class="cur_nav">교육 과정 등록</span></li> </ul>
</ul> </div>
</div> <!-- //cont_tit -->
<!-- //cont_tit -->
<div class="cont">
<div class="cont"> <!-- list_상세 -->
<!-- list_상세 --> <div class="tb_tit01">
<div class="tb_tit01"> <p>교육과정관리</p>
<p>교육과정관리</p> </div>
</div> <div class="tb_type02">
<div class="tb_type02"> <table>
<table> <colgroup>
<colgroup> <col style="width: 210px;">
<col style="width: 210px;"> <col style="width: auto;">
<col style="width: auto;"> <col style="width: 210px;">
<col style="width: 210px;"> <col style="width: auto;">
<col style="width: auto;"> </colgroup>
</colgroup>
<tbody>
<tbody> <tr>
<tr> <th scope="row">교육부문</th>
<th scope="row">교육부문</th> <td colspan="3" style="position: relative;">
<td colspan="3" style="position: relative;"> <ve:code codeId="VEA001" code="${info.prcsDiv}"/>
<ve:code codeId="VEA001" code="${info.prcsDiv}"/> <div class="put_photo">
<div class="put_photo"> <div class="put_photo_in">
<div class="put_photo_in"> <div class="put_photo">
<div class="put_photo"> <div class="put_photo_in">
<div class="put_photo_in"> <div class="put_photo_box">
<div class="put_photo_box"> <c:if test="${empty info.imageAtchFileId}">
<img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요"> <img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요">
</div> </c:if>
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> --> <c:if test="${not empty info.imageAtchFileId}">
</div> <img id="instrPhoto" class="id_pic" alt="사진" src='<c:url value='/uss/ion/pwm/getImage.do'/>?atchFileId=<c:out value="${info.imageAtchFileId}"/>' />
</div> </c:if>
</div> <input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value="<c:out value='${info.imageAtchFileId}'/>"/>
</div> </div>
</td> <!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
</tr> </div>
<tr> </div>
<th scope="row">과정명</th> </div>
<td> </div>
<c:out value='${info.prcsNm}' /> </td>
</td> </tr>
</tr> <tr>
<tr> <th scope="row">과정명</th>
<th scope="row">과정설명</th> <td>
<td> <c:out value='${info.prcsNm}' />
<c:out value='${info.prcsCn}' /> </td>
</td> </tr>
</tr> <tr>
<tr> <th scope="row">과정설명</th>
<th scope="row">사용여부</th> <td>
<td> <c:out value='${info.prcsCn}' />
<c:if test="${info.useYn eq 'Y'}"> </td>
사용 </tr>
</c:if> <tr>
<c:if test="${info.useYn ne 'Y'}"> <th scope="row">사용여부</th>
미사용 <td>
</c:if> <c:if test="${info.useYn eq 'Y'}">
</td> 사용
</tr> </c:if>
</tbody> <c:if test="${info.useYn ne 'Y'}">
</table> 미사용
</div> </c:if>
<!-- //list_상세 --> </td>
</tr>
<!-- btn_wrap --> </tbody>
<div class="btn_wrap btn_layout01"> </table>
<div class="btn_left"> </div>
</div> <!-- //list_상세 -->
<div class="btn_center">
</div> <!-- btn_wrap -->
<div class="btn_right"> <div class="btn_wrap btn_layout01">
<button type="button" class="btn_type02" onclick="fncMdfy(); return false;">수정</button> <div class="btn_left">
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button> </div>
</div> <div class="btn_center">
</div> </div>
</div> <div class="btn_right">
</div> <button type="button" class="btn_type02" onclick="fncMdfy(); return false;">수정</button>
</div> <button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</form:form> </div>
<!-- //cont --> </div>
</body> </div>
</html> </div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -1,287 +1,287 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ 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="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ 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="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %> <%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" /> <un:useConstants var="KccadrStatus" className="kcc.kccadr.cmm.KccadrConstants" />
<% <%
/** /**
* @Class Name : fndthEduPrcsMngList.jsp * @Class Name : fndthEduPrcsMngList.jsp
* @Description : 기반강화연수 과정관리 목록 * @Description : 기반강화연수 과정관리 목록
* @Modification Information * @Modification Information
* @ * @
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------- -------- --------------------------- * @ ------- -------- ---------------------------
* @ 2021.12.14 조용준 최초 생성 * @ 2021.12.14 조용준 최초 생성
* @author 조용준 * @author 조용준
* @since 2021.12.14 * @since 2021.12.14
* @version 1.0 * @version 1.0
* @see * @see
* *
*/ */
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style> <style>
input:read-only{ input:read-only{
background-color: #ededed; background-color: #ededed;
} }
</style> </style>
<script type="text/javascript"> <script type="text/javascript">
function fncGoList(){ function fncGoList(){
linkPage(1); linkPage(1);
} }
function linkPage(pageNo){ function linkPage(pageNo){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.pageIndex.value = pageNo ; listForm.pageIndex.value = pageNo ;
listForm.searchKeyword.value = $('#searchKeyword').val(); listForm.searchKeyword.value = $('#searchKeyword').val();
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
function fncGoDetail(prcsOrd){ function fncGoDetail(prcsOrd){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.prcsOrd.value = prcsOrd ; listForm.prcsOrd.value = prcsOrd ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngDetail.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngDetail.do'/>";
listForm.submit(); listForm.submit();
} }
function fncCreate() { function fncCreate() {
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngReg.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngReg.do'/>";
listForm.submit(); listForm.submit();
} }
function fncDelete(prcsOrd){ function fncDelete(prcsOrd){
document.listForm.prcsOrd.value = prcsOrd ; document.listForm.prcsOrd.value = prcsOrd ;
var pageIndex = document.listForm.pageIndex.value; var pageIndex = document.listForm.pageIndex.value;
if($(".listCount").length == '1'){ if($(".listCount").length == '1'){
pageIndex = pageIndex -1; pageIndex = pageIndex -1;
} }
var data = new FormData(document.getElementById("listForm")); var data = new FormData(document.getElementById("listForm"));
if(confirm("삭제하시겠습니까?")){ if(confirm("삭제하시겠습니까?")){
var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngDeleteAjax.do'/>"; var url = "<c:url value='/kccadr/oprtn/cndtnSspnIdtmt/cndtnEduPrcsMngDeleteAjax.do'/>";
console.log(data); console.log(data);
$.ajax({ $.ajax({
type:"POST", type:"POST",
url: url, url: url,
data: data, data: data,
dataType:'json', dataType:'json',
async: false, async: false,
processData: false, processData: false,
contentType: false, contentType: false,
cache: false, cache: false,
success:function(returnData){ success:function(returnData){
if(returnData.result == "success"){ if(returnData.result == "success"){
alert("삭제되었습니다."); alert("삭제되었습니다.");
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화 document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
linkPage(pageIndex); linkPage(pageIndex);
} }
}, },
error:function(request , status, error){ error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
}); });
} }
event.stopImmediatePropagation(); event.stopImmediatePropagation();
} }
function fncSaveSort(prcsOrd, count){ function fncSaveSort(prcsOrd, count){
var sortNo = $('#prcsSortNo'+count).val(); var sortNo = $('#prcsSortNo'+count).val();
if(sortNo == ''){ if(sortNo == ''){
alert("표시순서를 입력해 주세요."); alert("표시순서를 입력해 주세요.");
return false; return false;
} }
$('#prcsOrd').val(prcsOrd); $('#prcsOrd').val(prcsOrd);
$('#prcsSortNo').val(sortNo); $('#prcsSortNo').val(sortNo);
var data = new FormData(document.getElementById("listForm")); var data = new FormData(document.getElementById("listForm"));
var url = "<c:url value='/kccadr/oprtn/otsdCprtnPrcs/eduPrcsSortUpdateAjax.do'/>"; var url = "<c:url value='/kccadr/oprtn/otsdCprtnPrcs/eduPrcsSortUpdateAjax.do'/>";
$.ajax({ $.ajax({
type:"POST", type:"POST",
url: url, url: url,
data: data, data: data,
dataType:'json', dataType:'json',
async: false, async: false,
processData: false, processData: false,
contentType: false, contentType: false,
cache: false, cache: false,
success:function(returnData){ success:function(returnData){
if(returnData.result == "success"){ if(returnData.result == "success"){
alert("저장되었습니다."); alert("저장되었습니다.");
document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화 document.listForm.prcsOrd.value = ""; //리스트 이동시 prcsOrd 초기화
fncGoList(); fncGoList();
} }
}, },
error:function(request , status, error){ error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
}); });
} }
</script> </script>
<title>교육과정관리</title> <title>교육과정관리</title>
</head> </head>
<body> <body>
<form:form id="listForm" name="listForm" method="post" commandName="vEPrcsDetailVO" onsubmit="return false;"> <form:form id="listForm" name="listForm" method="post" commandName="vEPrcsDetailVO" onsubmit="return false;">
<input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/> <input type="hidden" name="pageIndex" value="<c:out value='${vEPrcsDetailVO.pageIndex}' default='1' />"/>
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" /> <input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" /> <input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
<input type="hidden" id="prcsOrd" name="prcsOrd" value="" /> <input type="hidden" id="prcsOrd" name="prcsOrd" value="" />
<input type="hidden" id="prcsSortNo" name="prcsSortNo" value="" /> <input type="hidden" id="prcsSortNo" name="prcsSortNo" value="" />
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>과정관리목록</h2> <h2>과정관리목록</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>기반강화연수관리</p> <p>실무자역량강화(기반강화연수관리)</p>
</li> </li>
<li><span class="cur_nav">과정관리목록</span></li> <li><span class="cur_nav">과정관리목록</span></li>
</ul> </ul>
</div> </div>
<!-- //cont_tit --> <!-- //cont_tit -->
<div class="cont"> <div class="cont">
<div class="tb_tit01"> <div class="tb_tit01">
<p>교육 과정 관리</p> <p>교육 과정 관리</p>
</div> </div>
<!-- list_top --> <!-- list_top -->
<div class="list_top search-only"> <div class="list_top search-only">
<div class="list_top_1"> <div class="list_top_1">
<div class="util_right"> <div class="util_right">
<ve:select codeId="VEA001" name="searchStatus" id="searchStatus" css="class='sel_type1'" <ve:select codeId="VEA001" name="searchStatus" id="searchStatus" css="class='sel_type1'"
selectedValue="${vEPrcsDetailVO.searchStatus }" defaultValue="" selectedValue="${vEPrcsDetailVO.searchStatus }" defaultValue=""
defaultText="전체" defaultText="전체"
/> />
<div class="calendar_wrap"> <div class="calendar_wrap">
<input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.searchSmbtStartDt}"> <input type="text" class="calendar" title="시작일 선택" id="searchSmbtStartDt" name="searchSmbtStartDt" value="${vEPrcsDetailVO.searchSmbtStartDt}">
</div> </div>
~ ~
<div class="calendar_wrap"> <div class="calendar_wrap">
<input type="text" class="calendar" title="종료일 선택" id="searchSmbtEndDt" name="searchSmbtEndDt" value="${vEPrcsDetailVO.searchSmbtEndDt}"> <input type="text" class="calendar" title="종료일 선택" id="searchSmbtEndDt" name="searchSmbtEndDt" value="${vEPrcsDetailVO.searchSmbtEndDt}">
</div> </div>
<input type="text" id="searchKeyword" name="searchKeyword" placeholder="과정명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEEduAplctVO.searchFullName}'/>"> <input type="text" id="searchKeyword" name="searchKeyword" placeholder="과정명를 입력하세요." title="검색어 입력" class="search_input" value="<c:out value='${vEEduAplctVO.searchFullName}'/>">
<button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button> <button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button>
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button> <button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
</div> </div>
</div> </div>
</div> </div>
<div class="list_util"> <div class="list_util">
<p class="list_util_p"><span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의 접수가 검색되었습니다.</p> <p class="list_util_p"><span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의 접수가 검색되었습니다.</p>
<div> <div>
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1"> <select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1">
<option value='10' <c:if test="${vEPrcsDetailVO.pageUnit == '10' or vEPrcsDetailVO.pageUnit == ''}">selected</c:if>>10줄</option> <option value='10' <c:if test="${vEPrcsDetailVO.pageUnit == '10' or vEPrcsDetailVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${vEPrcsDetailVO.pageUnit == '20'}">selected</c:if>>20줄</option> <option value='20' <c:if test="${vEPrcsDetailVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${vEPrcsDetailVO.pageUnit == '30'}">selected</c:if>>30줄</option> <option value='30' <c:if test="${vEPrcsDetailVO.pageUnit == '30'}">selected</c:if>>30줄</option>
<option value='100' <c:if test="${vEPrcsDetailVO.pageUnit == '100'}">selected</c:if>>100줄</option> <option value='100' <c:if test="${vEPrcsDetailVO.pageUnit == '100'}">selected</c:if>>100줄</option>
</select> </select>
<%--<button type="button" class="btn_down_excel">엑셀 다운로드</button>--%> <%--<button type="button" class="btn_down_excel">엑셀 다운로드</button>--%>
</div> </div>
</div> </div>
<!-- //list_top --> <!-- //list_top -->
<!-- list --> <!-- list -->
<div class="tb_type01"> <div class="tb_type01">
<table> <table>
<colgroup> <colgroup>
<col style="width: 10%"> <col style="width: 10%">
<col style="width: 20%"> <col style="width: 20%">
<col style="width: auto"> <col style="width: auto">
<col style="width: 10%"> <col style="width: 10%">
<col style="width: 10%"> <col style="width: 10%">
</colgroup> </colgroup>
<thead> <thead>
<tr> <tr>
<th>교육부문</th> <th>교육부문</th>
<th>과정명</th> <th>과정명</th>
<th>설명</th> <th>설명</th>
<th>등록일시</th> <th>등록일시</th>
<th>사용여부 </th> <th>사용여부 </th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<c:forEach var="list" items="${list}" varStatus="status"> <c:forEach var="list" items="${list}" varStatus="status">
<tr class="listCount"> <tr class="listCount">
<td> <td>
<kc:code codeId="VEA001" code="${list.prcsDiv}"/> <kc:code codeId="VEA001" code="${list.prcsDiv}"/>
</td> </td>
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;"> <td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
<c:out value='${list.prcsNm}'/> <c:out value='${list.prcsNm}'/>
</td> </td>
<td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;"> <td onclick="fncGoDetail('<c:out value="${list.prcsOrd}"/>');" style="cursor:pointer;">
<c:out value='${list.prcsCn}'/> <c:out value='${list.prcsCn}'/>
</td> </td>
<td> <td>
<c:out value='${list.frstRegistPnttm}'/> <c:out value='${list.frstRegistPnttm}'/>
</td> </td>
<td> <td>
<c:if test="${list.useYn eq 'Y'}"> <c:if test="${list.useYn eq 'Y'}">
사용 사용
</c:if> </c:if>
<c:if test="${list.useYn ne 'Y'}"> <c:if test="${list.useYn ne 'Y'}">
미사용 미사용
</c:if> </c:if>
</td> </td>
</tr> </tr>
</c:forEach> </c:forEach>
<c:if test="${empty list}"> <c:if test="${empty list}">
<tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr> <tr><td colspan="5"><spring:message code="common.nodata.msg" /></td></tr>
</c:if> </c:if>
</tbody> </tbody>
</table> </table>
</div> </div>
<!-- //list --> <!-- //list -->
<!-- page --> <!-- page -->
<div class="page"> <div class="page">
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" /> <ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
</div> </div>
<div class="btn_wrap btn_layout01"> <div class="btn_wrap btn_layout01">
<div class="btn_left"> <div class="btn_left">
</div> </div>
<div class="btn_center"> <div class="btn_center">
</div> </div>
<div class="btn_right"> <div class="btn_right">
<button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button> <button type="button" class="btn_type01" onclick="fncCreate(); return false;">등록</button>
</div> </div>
</div> </div>
<!-- //page --> <!-- //page -->
</div> </div>
</div> </div>
</div> </div>
<!-- //cont --> <!-- //cont -->
<!-- //cont --> <!-- //cont -->
</form:form> </form:form>
</body> </body>
</html> </html>

View File

@ -26,7 +26,7 @@
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<title>교육과정관리</title> <title>기반강화연수관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"> <script type="text/javascript">
//세부과정 추가 버튼 클릭 시 세부과정 추가 //세부과정 추가 버튼 클릭 시 세부과정 추가
@ -130,6 +130,10 @@
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
function fncPhotoPopup() {
var pop = document.createForm;
commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoPopup.do", "750", "660", "fncPhotoPopup", $('#createForm'));
}
</script> </script>
@ -145,14 +149,13 @@
<!-- cont_tit --> <!-- cont_tit -->
<div class="cont_tit"> <div class="cont_tit">
<h2>교육 과정 등록</h2> <h2>교육과정수정</h2>
<ul class="cont_nav"> <ul class="cont_nav">
<li class="home"><a href="/"><i></i></a></li> <li class="home"><a href="/"><i></i></a></li>
<li> <li>
<p>교육콘텐츠</p> <p>실무자역량강화(기반강화연수관리)</p>
</li> </li>
<li><span class="cur_nav">교육 과정 관리</span></li> <li><span class="cur_nav">기반강화연수관리</span></li>
<li><span class="cur_nav">교육 과정 등록</span></li>
</ul> </ul>
</div> </div>
<!-- //cont_tit --> <!-- //cont_tit -->
@ -185,9 +188,17 @@
<div class="put_photo"> <div class="put_photo">
<div class="put_photo_in"> <div class="put_photo_in">
<div class="put_photo_box"> <div class="put_photo_box">
<img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요"> <c:if test="${empty info.imageAtchFileId}">
<img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요">
</c:if>
<c:if test="${not empty info.imageAtchFileId}">
<img id="instrPhoto" class="id_pic" alt="사진" src='<c:url value='/uss/ion/pwm/getImage.do'/>?atchFileId=<c:out value="${info.imageAtchFileId}"/>' />
</c:if>
<input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value="<c:out value='${info.imageAtchFileId}'/>"/>
</div>
<div>
<button type="button" class="btn_type01" onclick="fncPhotoPopup(); return false;">사진등록</button>
</div> </div>
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
</div> </div>
</div> </div>
</div> </div>

View File

@ -1,242 +1,256 @@
<!DOCTYPE html> <!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=utf-8" <%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%> pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> <%@ 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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> <%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %> <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<% <%
/** /**
* @Class Name : fndthEduPrcsMngReg.jsp * @Class Name : fndthEduPrcsMngReg.jsp
* @Description : 기반강화연수 과정 등록 * @Description : 기반강화연수 과정 등록
* @Modification Information * @Modification Information
* @ * @
* @ 수정일 수정자 수정내용 * @ 수정일 수정자 수정내용
* @ ------- -------- --------------------------- * @ ------- -------- ---------------------------
* @ 2021.12.16 조용준 최초 생성 * @ 2021.12.16 조용준 최초 생성
* @author 조용주 * @author 조용주
* @since 2021.12.16 * @since 2021.12.16
* @version 1.0 * @version 1.0
* @see * @see
* *
*/ */
%> %>
<html lang="ko"> <html lang="ko">
<head> <head>
<title>교육과정관리</title> <title>교육과정관리</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"> <script type="text/javascript">
//세부과정 추가 버튼 클릭 시 세부과정 추가 //세부과정 추가 버튼 클릭 시 세부과정 추가
function addPro() { function addPro() {
var addQuest = $(".addPro_wrap"); var addQuest = $(".addPro_wrap");
var questLen = addQuest.children("div").length; var questLen = addQuest.children("div").length;
questLen = Number(questLen+1); questLen = Number(questLen+1);
var trHtml=""; var trHtml="";
trHtml += '<div class="tbody_one">'; trHtml += '<div class="tbody_one">';
trHtml += '<span><span class="span_num3">'+ questLen +'</span>.</span>'; trHtml += '<span><span class="span_num3">'+ questLen +'</span>.</span>';
trHtml += '<div>'; trHtml += '<div>';
trHtml += '<input type="text" name="detailPrcsNm" id="detailPrcsNm"> '; trHtml += '<input type="text" name="detailPrcsNm" id="detailPrcsNm"> ';
trHtml += '<button type="button" class="table_del3" onclick="delPro(this)"><img src="${pageContext.request.contextPath}/visitEdu/adm/publish/image/content/btn_del.png"></button>'; trHtml += '<button type="button" class="table_del3" onclick="delPro(this)"><img src="${pageContext.request.contextPath}/visitEdu/adm/publish/image/content/btn_del.png"></button>';
trHtml += '</div>'; trHtml += '</div>';
trHtml += '</div>'; trHtml += '</div>';
addQuest.append(trHtml); addQuest.append(trHtml);
} }
//삭제 버튼 클릭 시 현재 div 삭제 후 지문 숫자 재선언 //삭제 버튼 클릭 시 현재 div 삭제 후 지문 숫자 재선언
function delPro(item) { function delPro(item) {
var bodyThis = $(item).closest('.tbody_one'); var bodyThis = $(item).closest('.tbody_one');
var tb = $(item).closest('.addPro_wrap').find('.tbody_one'); var tb = $(item).closest('.addPro_wrap').find('.tbody_one');
var len = $(item).closest('.addPro_wrap').children('.tbody_one').length; var len = $(item).closest('.addPro_wrap').children('.tbody_one').length;
var idx = bodyThis.index(); var idx = bodyThis.index();
if(len == 1){ if(len == 1){
alert("세부과정은 최소1개가 존재해야합니다."); alert("세부과정은 최소1개가 존재해야합니다.");
return false; return false;
}else{ }else{
bodyThis.remove(); bodyThis.remove();
for(var i=0;i<len;i++){ for(var i=0;i<len;i++){
if(idx>i){ if(idx>i){
tb.eq(i).find('.span_num3').text(i+1); tb.eq(i).find('.span_num3').text(i+1);
}else{ }else{
tb.eq(i).find('.span_num3').text(i); tb.eq(i).find('.span_num3').text(i);
} }
} }
} }
} }
function fncAddUser(){ function fncAddUser(){
var obj = $(".memList:first").clone(true); var obj = $(".memList:first").clone(true);
obj.children('input').val('') obj.children('input').val('')
/* /*
var len = $(".memList").length; var len = $(".memList").length;
$.each(obj.find("input"), function(idx, objInput){ $.each(obj.find("input"), function(idx, objInput){
objInput.name = objInput.name.replace(/\[.*\]/,'['+(len+1)+']'); objInput.name = objInput.name.replace(/\[.*\]/,'['+(len+1)+']');
console.log(objInput.name); console.log(objInput.name);
if(objInput.name.indexOf("memGrade") < 0){ if(objInput.name.indexOf("memGrade") < 0){
objInput.value = ''; objInput.value = '';
} }
}); });
obj.find("button").attr("id", obj.find("button").attr("id").replace(/[0-9]/gi, len+2)); obj.find("button").attr("id", obj.find("button").attr("id").replace(/[0-9]/gi, len+2));
obj.find("tr:last > td").text(""); obj.find("tr:last > td").text("");
*/ */
$(".memList:last").after(obj); $(".memList:last").after(obj);
} }
function fncDelUser(obj){ function fncDelUser(obj){
if($(".memList").length <= 1){ if($(".memList").length <= 1){
alert("담당자은 최소1개가 존재해야합니다."); alert("담당자은 최소1개가 존재해야합니다.");
}else{ }else{
$(obj).closest("td").remove(); $(obj).closest("td").remove();
} }
} }
function fncSave(){ function fncSave(){
var data = new FormData(document.getElementById("createForm")); var data = new FormData(document.getElementById("createForm"));
if(confirm("저장하시겠습니까?")){ if(confirm("저장하시겠습니까?")){
var url = "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngRegAjax.do"; var url = "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngRegAjax.do";
console.log(data); console.log(data);
$.ajax({ $.ajax({
type:"POST", type:"POST",
url: url, url: url,
data: data, data: data,
dataType:'json', dataType:'json',
async: false, async: false,
processData: false, processData: false,
contentType: false, contentType: false,
cache: false, cache: false,
success:function(returnData){ success:function(returnData){
if(returnData.result == "success"){ if(returnData.result == "success"){
alert("저장되었습니다."); alert("저장되었습니다.");
fncGoList(); fncGoList();
} }
}, },
error:function(request , status, error){ error:function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
}); });
} }
} }
function fncGoList(){ function fncGoList(){
var listForm = document.listForm ; var listForm = document.listForm ;
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
listForm.submit(); listForm.submit();
} }
</script> function fncPhotoPopup() {
var pop = document.createForm;
</head> commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup.do", "750", "660", "fncPhotoPopup", $('#createForm'));
<body> }
<form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post">
</form:form> </script>
<form:form id="createForm" name="createForm" commandName="adjustDeptManageVO" method="post">
<!-- cont --> </head>
<div class="cont_wrap"> <body>
<div class="box"> <form:form id="listForm" name="listForm" commandName="vEPrcsDetailVO" method="post">
</form:form>
<!-- cont_tit --> <form:form id="createForm" name="createForm" commandName="adjustDeptManageVO" method="post">
<div class="cont_tit"> <!-- cont -->
<h2>교육 과정 등록</h2> <div class="cont_wrap">
<ul class="cont_nav"> <div class="box">
<li class="home"><a href="/"><i></i></a></li>
<li> <!-- cont_tit -->
<p>교육콘텐츠</p> <div class="cont_tit">
</li> <h2>교육과정등록</h2>
<li><span class="cur_nav">교육 과정 관리</span></li> <ul class="cont_nav">
<li><span class="cur_nav">교육 과정 등록</span></li> <li class="home"><a href="/"><i></i></a></li>
</ul> <li>
</div> <p>실무자역량강화(기반강화연수관리)</p>
<!-- //cont_tit --> </li>
<li><span class="cur_nav">기반강화연수관리</span></li>
<div class="cont"> </ul>
<!-- list_상세 --> </div>
<div class="tb_tit01"> <!-- //cont_tit -->
<p>교육과정</p>
</div> <div class="cont">
<div class="tb_type02"> <!-- list_상세 -->
<table> <div class="tb_tit01">
<colgroup> <p>교육과정</p>
<col style="width: 210px;"> </div>
<col style="width: auto;"> <div class="tb_type02">
<col style="width: 210px;"> <table>
<col style="width: auto;"> <colgroup>
</colgroup> <col style="width: 210px;">
<col style="width: auto;">
<tbody> <col style="width: 210px;">
<tr> <col style="width: auto;">
<th scope="row">교육부문</th> </colgroup>
<td colspan="3" style="position: relative;">
<ve:select codeId="VEA001" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" <tbody>
selectedValue="" defaultValue='' <tr>
defaultText="선택" <th scope="row">교육부문</th>
/> <td colspan="3" style="position: relative;">
<!-- <input type="text" name="instrNm"/> --> <ve:select codeId="VEA001" name="prcsDiv" id="prcsDiv" css="class='sel_type1'"
<div class="put_photo"> selectedValue="" defaultValue=''
<div class="put_photo_in"> defaultText="선택"
<div class="put_photo"> />
<div class="put_photo_in"> <!-- <input type="text" name="instrNm"/> -->
<div class="put_photo_box"> <div class="put_photo">
<img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요"> <div class="put_photo_in">
</div> <div class="put_photo">
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> --> <div class="put_photo_in">
</div> <div class="put_photo_box">
</div> <%-- <c:if test="${empty info.imageAtchFileId}"> --%>
</div> <img id="emptyImg" src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/img_add.png" alt="이미지를 넣어주세요">
</div> <%-- </c:if> --%>
<%-- <ve:select codeId="VE0015" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" selectedValue="<c:out value='${info.prcsDiv}'/>" defaultValue='10'/> --%> <%-- <c:if test="${not empty info.imageAtchFileId}"> --%>
</td> <%-- <img id="instrPhoto" class="id_pic" alt="사진" src='<c:url value='/uss/ion/pwm/getImage.do'/>?atchFileId=<c:out value="${info.imageAtchFileId}"/>' /> --%>
</tr> <%-- </c:if> --%>
<tr> <input type="hidden" name="imageAtchFileId" id="imageAtchFileId" value=""/>
<th scope="row">과정명</th> </div>
<td> <div>
<input type="text" name="prcsNm"/> <button type="button" class="btn_type01" onclick="fncPhotoPopup(); return false;">사진등록</button>
</td> </div>
</tr> </div>
<tr> <!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
<th scope="row">상세교육과정</th> </div>
<td> </div>
<textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"></textarea> </div>
</td> </div>
</tr> <%-- <ve:select codeId="VE0015" name="prcsDiv" id="prcsDiv" css="class='sel_type1'" selectedValue="<c:out value='${info.prcsDiv}'/>" defaultValue='10'/> --%>
</td>
<tr> </tr>
<th scope="row">상태</th> <tr>
<td> <th scope="row">과정명</th>
<select name="useYn" class="sel_type1"> <td>
<option value="Y">사용</option> <input type="text" name="prcsNm"/>
<option value="N">미사용</option> </td>
</select> </tr>
</td> <tr>
</tr> <th scope="row">상세교육과정</th>
</tbody> <td>
</table> <textarea placeholder="과정설명을 입력해주세요." name="prcsCn" id="prcsCn" class="memo" onfocus="this.placeholder=''" onblur="this.placeholder='과정설명을 입력해주세요.'" class="inputLight" style="height: 200px;"></textarea>
</div> </td>
<!-- //list_상세 --> </tr>
<!-- btn_wrap --> <tr>
<div class="btn_wrap btn_layout01"> <th scope="row">상태</th>
<div class="btn_left"> <td>
</div> <select name="useYn" class="sel_type1">
<div class="btn_center"> <option value="Y">사용</option>
</div> <option value="N">미사용</option>
<div class="btn_right"> </select>
<button type="button" class="btn_type02" onclick="fncSave(); return false;">저장</button> </td>
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button> </tr>
</div> </tbody>
</div> </table>
</div> </div>
</div> <!-- //list_상세 -->
</div>
</form:form> <!-- btn_wrap -->
<!-- //cont --> <div class="btn_wrap btn_layout01">
</body> <div class="btn_left">
</html> </div>
<div class="btn_center">
</div>
<div class="btn_right">
<button type="button" class="btn_type02" onclick="fncSave(); return false;">저장</button>
<button type="button" class="btn_type03" onclick="fncGoList(); return false;">목록</button>
</div>
</div>
</div>
</div>
</div>
</form:form>
<!-- //cont -->
</body>
</html>

View File

@ -0,0 +1,186 @@
<!DOCTYPE html>
<%@ 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"%>
<%
/**
* @Class Name : instrAsgnmPopup.jsp
* @Description : 기반강화 교육과정등록 > 이미지 등록
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2023.11.14 이호영 최초 생성
*/
%>
<html lang="ko">
<head>
<title>강사정보 수정 요청</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="<c:url value='/js/EgovMultiFileItn.js'/>"></script> <!-- 파일첨부, 썸네일이미지 있으면 미리보기 -->
<!-- <script src="//t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script> -->
<script src="${pageContext.request.contextPath}/kccadrPb/adm/script/postcode.js"></script>
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/jquery-3.5.0.js"></script>
<script src="<c:url value='/js/kccadr/kccadrCom.js' />"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".btn_add_file").on('click', function(){
$("#file_temp").click();
});
});
function fncPopClose(){
self.close();
}
function fncSave() {
if(confirm("사진을 변경하시겠습니까?")){
var data = new FormData(document.getElementById("createForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPhotoPopupAjax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
if(status == 'success'){
/* 부모창 상세 페이지 이동 */
/* window.opener.name = "parentPage";
document.mdfyRqstPopup.target = "parentPage";
document.mdfyRqstPopup.action = "${pageContext.request.contextPath}/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrMngDetail.do";
document.mdfyRqstPopup.submit();
window.close(); */
opener.parent.location.reload();
window.close();
} else if(status== 'fail'){
alert("사진변경 처리에 실패하였습니다.");
}
},
error: function (e) { alert("사진변경 처리에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fncCmpnnPopup(rpplTy, rqstType) {
$("#aprvlCd").val(rpplTy);
$("#rqstType").val(rqstType);
var pop = document.mdfyRqstPopup;
commonPopWindowopenForm("${pageContext.request.contextPath}/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrAplctCmpnnPopup.do", "750", "300", "instrAplctCmpnnPop", $('#mdfyRqstPopup'));
}
</script>
</head>
<body>
<div class="area_popup supm_popup">
<div class="cont_popup">
<form:form id="createForm" name="createForm" method="post" commandName="vELctrDetailVO" onsubmit="return false;">
<input type="hidden" name="prcsOrd" value="<c:out value="${info.prcsOrd}" />" />
<div class="area_popup">
<div class="cont_popup upload_area">
<div class="pop_tb_tit01">
<p></p>
<div class="btn_wrap_pop">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btn_type01 btn_add_file">파일 찾기</button>
</div>
</div>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap">
<table>
<colgroup>
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: 100px;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
<td class="td_filename">
<p>${fileList.orignlFileNm}</p>
</td>
<td class="td_filesort">
<p><c:out value="${fileList.fileExtsn}"/></p>
</td>
<td class="td_filesize">
<p><c:out value="${fileList.fileMg}"/></p>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<div class="btn_wrap_pop btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
<button type="button" onclick="fncSave(); return false;" class="btn_type04">확인</button>
</div>
<div class="btn_right">
<button type="button" onclick="fncPopClose(); return false;" class="btn_type02">취소</button>
</div>
</div>
</div>
</div>
</form:form>
</div>
</div>
</body>
</html>

View File

@ -0,0 +1,187 @@
<!DOCTYPE html>
<%@ 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"%>
<%
/**
* @Class Name : instrAsgnmPopup.jsp
* @Description : 기반강화 교육과정등록 > 이미지 등록
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2023.11.14 이호영 최초 생성
*/
%>
<html lang="ko">
<head>
<title>강사정보 수정 요청</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="<c:url value='/js/EgovMultiFileItn.js'/>"></script> <!-- 파일첨부, 썸네일이미지 있으면 미리보기 -->
<!-- <script src="//t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script> -->
<script src="${pageContext.request.contextPath}/kccadrPb/adm/script/postcode.js"></script>
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/jquery-3.5.0.js"></script>
<script src="<c:url value='/js/kccadr/kccadrCom.js' />"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".btn_add_file").on('click', function(){
$("#file_temp").click();
});
});
function fncPopClose(){
self.close();
}
function fncSave() {
if(confirm("사진을 변경하시겠습니까?")){
var data = new FormData(document.getElementById("createForm"));
_fileForm2.forEach(function(obj, idx) {
if (obj) data.append("file"+idx, obj.fileObj);
});
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: "${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/fndthEduPhotoPopupRegAjax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
if(status == 'success'){
console.log('returnData.atchFileId : ', returnData.atchFileId);
var atchFileId = returnData.atchFileId;
$(window.opener.document).find('#emptyImg').hide();
var imgTag = '<img id="instrPhoto" class="id_pic" alt="사진" src="${pageContext.request.contextPath}/uss/ion/pwm/getImage.do?atchFileId=' + atchFileId + '">';
$(window.opener.document).find('.put_photo_box').append(imgTag);
$(window.opener.document).find('#imageAtchFileId').val(atchFileId);
window.close();
} else if(status== 'fail'){
alert("사진변경 처리에 실패하였습니다.");
}
},
error: function (e) { alert("사진변경 처리에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fncCmpnnPopup(rpplTy, rqstType) {
$("#aprvlCd").val(rpplTy);
$("#rqstType").val(rqstType);
var pop = document.mdfyRqstPopup;
commonPopWindowopenForm("${pageContext.request.contextPath}/ve/oprtn/instr/tngrVisitEdu/instrInfo/instrAplctCmpnnPopup.do", "750", "300", "instrAplctCmpnnPop", $('#mdfyRqstPopup'));
}
</script>
</head>
<body>
<div class="area_popup supm_popup">
<div class="cont_popup">
<form:form id="createForm" name="createForm" method="post" commandName="vELctrDetailVO" onsubmit="return false;">
<input type="hidden" name="prcsOrd" value="<c:out value="${info.prcsOrd}" />" />
<div class="area_popup">
<div class="cont_popup upload_area">
<div class="pop_tb_tit01">
<p></p>
<div class="btn_wrap_pop">
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
<button type="button" id="filebutton" class="btn_type01 btn_add_file">파일 찾기</button>
</div>
</div>
<div class="file_wrap file_upload_box no_img_box">
<table>
<colgroup>
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: 10%;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody class="tb_file_before">
<tr>
<td colspan="4">
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap">
<table>
<colgroup>
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 15%;">
<col style="width: 100px;">
</colgroup>
<thead>
<th>파일 명</th>
<th>종류</th>
<th>크기</th>
<th>삭제</th>
</thead>
<tbody id="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
<td class="td_filename">
<p>${fileList.orignlFileNm}</p>
</td>
<td class="td_filesort">
<p><c:out value="${fileList.fileExtsn}"/></p>
</td>
<td class="td_filesize">
<p><c:out value="${fileList.fileMg}"/></p>
</td>
<td>
<button type="button" class="btn_del" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
<div class="btn_wrap_pop btn_layout01">
<div class="btn_left">
</div>
<div class="btn_center">
<button type="button" onclick="fncSave(); return false;" class="btn_type04">확인</button>
</div>
<div class="btn_right">
<button type="button" onclick="fncPopClose(); return false;" class="btn_type02">취소</button>
</div>
</div>
</div>
</div>
</form:form>
</div>
</div>
</body>
</html>

View File

@ -494,8 +494,7 @@
</th> </th>
<td colspan="3" style="position: relative;"> <td colspan="3" style="position: relative;">
<label for="instrNm" class="label">강사명</label> <label for="instrNm" class="label">강사명</label>
<input type="text" name="instrNm" id="instrNm" size="25" value="<c:out value='${info.instrNm}'/>" maxLength="20" placeholder="홍길동"> <input type="text" name="instrNm" id="instrNm" size="25" value="<c:out value='${info.instrNm}'/>" maxLength="20" placeholder="홍길동"> <div class="put_photo">
<div class="put_photo">
<div class="put_photo_in"> <div class="put_photo_in">
<div class="put_photo_box"> <div class="put_photo_box">
<c:if test="${empty info.phtAtchFileId}"> <c:if test="${empty info.phtAtchFileId}">