관리자 기반강화 > 이미지 등록 / 수정 완료
This commit is contained in:
parent
e5648b841c
commit
451581d70a
@ -136,6 +136,8 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
private String cnclAtchFileId;
|
||||
private String cnclCn;
|
||||
|
||||
private String imageAtchFileId;
|
||||
|
||||
|
||||
|
||||
|
||||
@ -656,6 +658,12 @@ public class VEPrcsDetailVO extends ComDefaultVO implements Serializable {
|
||||
public void setCnclCn(String cnclCn) {
|
||||
this.cnclCn = cnclCn;
|
||||
}
|
||||
public String getImageAtchFileId() {
|
||||
return imageAtchFileId;
|
||||
}
|
||||
public void setImageAtchFileId(String imageAtchFileId) {
|
||||
this.imageAtchFileId = imageAtchFileId;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -31,4 +31,6 @@ public interface VEPrcsService {
|
||||
|
||||
void deleteInstr(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO);
|
||||
|
||||
}
|
||||
|
||||
@ -81,4 +81,8 @@ public class VEPrcsDAO extends EgovAbstractDAO {
|
||||
delete("VEPrcsDAO.deleteInstr", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
public void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
update("VEPrcsDAO.updateImageAtchFileId", vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -65,4 +65,9 @@ public class VEPrcsServiceImpl implements VEPrcsService {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateImageAtchFileId(VEPrcsDetailVO vEPrcsDetailVO) {
|
||||
vEPrcsDAO.updateImageAtchFileId(vEPrcsDetailVO);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -1,17 +1,21 @@
|
||||
package kcc.ve.oprtn.fndtnEnhanceTrn.prcsInfoMng.web;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
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.MultipartFile;
|
||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
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.service.EgovFileMngService;
|
||||
import kcc.com.cmm.service.EgovFileMngUtil;
|
||||
import kcc.com.cmm.service.FileVO;
|
||||
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.VEEduChasiService;
|
||||
import kcc.ve.instr.tngrVisitEdu.instrInfo.service.VEInstrDetailVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCmpltDetailService;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsCntntVO;
|
||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsDetailVO;
|
||||
@ -105,6 +111,13 @@ public class FndthPrcsInfoMngController {
|
||||
@Resource(name = "EgovFileMngService")
|
||||
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";
|
||||
}
|
||||
|
||||
/**
|
||||
* @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,27 +432,73 @@ public class FndthPrcsInfoMngController {
|
||||
//세부과정 지우고 다시 생성
|
||||
VEPrcsCntntVO vEPrcsCntntVO = new VEPrcsCntntVO();
|
||||
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");
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -54,9 +54,9 @@
|
||||
, SYSDATE
|
||||
, #aplctAtchFileId#
|
||||
, #cmpnnCn#
|
||||
, ''
|
||||
, #frstRegisterId#
|
||||
, SYSDATE
|
||||
, #frstRegisterId#
|
||||
, ''
|
||||
, #lastUpdusrId#
|
||||
)
|
||||
</insert>
|
||||
|
||||
@ -24,24 +24,26 @@
|
||||
last_updt_pnttm,
|
||||
last_updusr_id,
|
||||
lctr_div_cd,
|
||||
use_yn
|
||||
use_yn,
|
||||
image_atch_file_id
|
||||
|
||||
</sql>
|
||||
|
||||
<!-- 조회용 공통 컬럼 명 -->
|
||||
<sql id="VEPrcsDAO.select_column_name">
|
||||
A.PRCS_ORD AS prcsOrd,
|
||||
A.PRCS_DIV AS prcsDiv,
|
||||
A.PRCS_KIND AS prcsKind,
|
||||
A.PRCS_NM AS prcsNm,
|
||||
A.PRCS_CN AS prcsCn,
|
||||
A.PRCS_SORT_NO AS prcsSortNo,
|
||||
A.PRCS_ORD AS prcsOrd,
|
||||
A.PRCS_DIV AS prcsDiv,
|
||||
A.PRCS_KIND AS prcsKind,
|
||||
A.PRCS_NM AS prcsNm,
|
||||
A.PRCS_CN AS prcsCn,
|
||||
A.PRCS_SORT_NO AS prcsSortNo,
|
||||
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,
|
||||
A.LAST_UPDUSR_ID AS lastUpdusrId,
|
||||
A.LCTR_DIV_CD AS lctrDivCd,
|
||||
A.USE_YN AS useYn
|
||||
A.LAST_UPDUSR_ID AS lastUpdusrId,
|
||||
A.LCTR_DIV_CD AS lctrDivCd,
|
||||
A.USE_YN AS useYn,
|
||||
A.IMAGE_ATCH_FILE_ID AS imageAtchFileId
|
||||
</sql>
|
||||
|
||||
<!-- 강사 등록 C -->
|
||||
@ -62,7 +64,8 @@
|
||||
SYSDATE,
|
||||
#lastUpdusrId#,
|
||||
#lctrDivCd#,
|
||||
#useYn#
|
||||
#useYn#,
|
||||
#imageAtchFileId#
|
||||
)
|
||||
</insert>
|
||||
|
||||
@ -341,6 +344,16 @@
|
||||
|
||||
</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 FROM VEA_PRCS_APLCT_PRD_INSTR_ASGNM
|
||||
WHERE prcs_aplct_prd_ord = #prcsAplctPrdOrd#
|
||||
|
||||
@ -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="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
|
||||
<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">
|
||||
<table class="tbType02">
|
||||
<caption>첨부파일 리스트 : 파일명, 종류, 크기, 삭제</caption>
|
||||
|
||||
@ -57,14 +57,13 @@
|
||||
|
||||
<!-- cont_tit -->
|
||||
<div class="cont_tit">
|
||||
<h2>교육 과정 등록</h2>
|
||||
<h2>교육과정상세</h2>
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>교육콘텐츠</p>
|
||||
<p>실무자역량강화(기반강화연수관리)</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">교육 과정 관리</span></li>
|
||||
<li><span class="cur_nav">교육 과정 등록</span></li>
|
||||
<li><span class="cur_nav">기반강화연수관리</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- //cont_tit -->
|
||||
@ -93,7 +92,13 @@
|
||||
<div class="put_photo">
|
||||
<div class="put_photo_in">
|
||||
<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>
|
||||
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
|
||||
</div>
|
||||
|
||||
@ -158,7 +158,7 @@
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>기반강화연수관리</p>
|
||||
<p>실무자역량강화(기반강화연수관리)</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">과정관리목록</span></li>
|
||||
</ul>
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
%>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<title>교육과정관리</title>
|
||||
<title>기반강화연수관리</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<script type="text/javascript">
|
||||
//세부과정 추가 버튼 클릭 시 세부과정 추가
|
||||
@ -130,6 +130,10 @@
|
||||
listForm.action = "<c:url value='/kccadr/oprtn/fndthEnhanceTrn/fndthEduPrcsMngList.do'/>";
|
||||
listForm.submit();
|
||||
}
|
||||
function fncPhotoPopup() {
|
||||
var pop = document.createForm;
|
||||
commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoPopup.do", "750", "660", "fncPhotoPopup", $('#createForm'));
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@ -145,14 +149,13 @@
|
||||
|
||||
<!-- cont_tit -->
|
||||
<div class="cont_tit">
|
||||
<h2>교육 과정 등록</h2>
|
||||
<h2>교육과정수정</h2>
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>교육콘텐츠</p>
|
||||
<p>실무자역량강화(기반강화연수관리)</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">교육 과정 관리</span></li>
|
||||
<li><span class="cur_nav">교육 과정 등록</span></li>
|
||||
<li><span class="cur_nav">기반강화연수관리</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- //cont_tit -->
|
||||
@ -185,9 +188,17 @@
|
||||
<div class="put_photo">
|
||||
<div class="put_photo_in">
|
||||
<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>
|
||||
<!-- <button type="button" class="btnType01" onclick="fncPhotoPopup(); return false;">사진등록</button> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -132,6 +132,11 @@
|
||||
listForm.submit();
|
||||
}
|
||||
|
||||
function fncPhotoPopup() {
|
||||
var pop = document.createForm;
|
||||
commonPopWindowopenForm("${pageContext.request.contextPath}/kccadr/oprtn/fndthEnhanceTrn/popup/fndthEduPhotoRegPopup.do", "750", "660", "fncPhotoPopup", $('#createForm'));
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
</head>
|
||||
@ -145,14 +150,13 @@
|
||||
|
||||
<!-- cont_tit -->
|
||||
<div class="cont_tit">
|
||||
<h2>교육 과정 등록</h2>
|
||||
<h2>교육과정등록</h2>
|
||||
<ul class="cont_nav">
|
||||
<li class="home"><a href="/"><i></i></a></li>
|
||||
<li>
|
||||
<p>교육콘텐츠</p>
|
||||
<p>실무자역량강화(기반강화연수관리)</p>
|
||||
</li>
|
||||
<li><span class="cur_nav">교육 과정 관리</span></li>
|
||||
<li><span class="cur_nav">교육 과정 등록</span></li>
|
||||
<li><span class="cur_nav">기반강화연수관리</span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- //cont_tit -->
|
||||
@ -185,7 +189,17 @@
|
||||
<div class="put_photo">
|
||||
<div class="put_photo_in">
|
||||
<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 id="emptyImg" 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=""/>
|
||||
</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>
|
||||
|
||||
@ -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>
|
||||
@ -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>
|
||||
@ -494,8 +494,7 @@
|
||||
</th>
|
||||
<td colspan="3" style="position: relative;">
|
||||
<label for="instrNm" class="label">강사명</label>
|
||||
<input type="text" name="instrNm" id="instrNm" size="25" value="<c:out value='${info.instrNm}'/>" maxLength="20" placeholder="홍길동">
|
||||
<div class="put_photo">
|
||||
<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_in">
|
||||
<div class="put_photo_box">
|
||||
<c:if test="${empty info.phtAtchFileId}">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user