Merge branch 'JIWOO' into advc
This commit is contained in:
commit
a7f8cbd561
@ -366,6 +366,32 @@ public class FmsFileController {
|
|||||||
}
|
}
|
||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 첨부파일 삭제 사용자 url*/
|
||||||
|
@RequestMapping(value = "/web/fms/fmsfileDeleteAjax.do")
|
||||||
|
public ModelAndView webFmsfileDeleteAjax(@RequestParam Map<?, ?> commandMap,
|
||||||
|
FmsFileVO fmsFileVO,
|
||||||
|
@ModelAttribute("fileVO") FileVO fileVO
|
||||||
|
) throws Exception {
|
||||||
|
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("jsonView");
|
||||||
|
/*Boolean isAuthenticated = EgovUserDetailsHelper.isAuthenticated();
|
||||||
|
if (!isAuthenticated) {
|
||||||
|
modelAndView.addObject("result", "auth_fail"); //권한없음 팝업창 닫고, 오프너 창 리로드
|
||||||
|
return modelAndView;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
try {
|
||||||
|
fileMngService.deleteFmsFileInf(fileVO);
|
||||||
|
modelAndView.addObject("result", "success");
|
||||||
|
}catch (Exception e) {
|
||||||
|
modelAndView.addObject("result", "fail");
|
||||||
|
System.out.println("Exception Occured!!!");
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
|
||||||
@RequestMapping(value = "/uss/ion/fms/fmsfileMultipleDeleteAjax.do", method = RequestMethod.POST)
|
@RequestMapping(value = "/uss/ion/fms/fmsfileMultipleDeleteAjax.do", method = RequestMethod.POST)
|
||||||
public ModelAndView fmsfileMultipleDeleteAjax(@RequestBody FileVO fileVo) throws Exception {
|
public ModelAndView fmsfileMultipleDeleteAjax(@RequestBody FileVO fileVo) throws Exception {
|
||||||
|
|||||||
@ -175,6 +175,7 @@ public class ExprnClsrmAplctController {
|
|||||||
|
|
||||||
//신청서 양식다운로드 정보 가져오기(신청일자 기준 가장 최신 데이터, 1개 로우)
|
//신청서 양식다운로드 정보 가져오기(신청일자 기준 가장 최신 데이터, 1개 로우)
|
||||||
VEPrcsDetailVO detailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO detailVO = new VEPrcsDetailVO();
|
||||||
|
detailVO.setLctrDivCd("30"); //저작권 체험교실 구분 값
|
||||||
detailVO = vEPrcsAplctPrdService.selectDetailNewOne(detailVO);
|
detailVO = vEPrcsAplctPrdService.selectDetailNewOne(detailVO);
|
||||||
model.addAttribute("detailVO", detailVO);
|
model.addAttribute("detailVO", detailVO);
|
||||||
|
|
||||||
@ -184,35 +185,48 @@ public class ExprnClsrmAplctController {
|
|||||||
@RequestMapping("popup/cautionGuide.do")
|
@RequestMapping("popup/cautionGuide.do")
|
||||||
public String cautionGuide( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
|
public String cautionGuide( @ModelAttribute("vEEduAplctVO") VEEduAplctVO vEEduAplctVO , ModelMap model , HttpServletRequest request ) throws Exception {
|
||||||
|
|
||||||
// 청소년
|
// 저작권 체험교실
|
||||||
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30);
|
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30);
|
||||||
|
|
||||||
//신청서 양식다운로드 정보 가져오기(신청일자 기준 가장 최신 데이터, 1개 로우)
|
//신청서 양식다운로드 정보 가져오기(신청일자 기준 가장 최신 데이터, 1개 로우)
|
||||||
VEPrcsDetailVO detailVO = new VEPrcsDetailVO();
|
VEPrcsDetailVO detailVO = new VEPrcsDetailVO();
|
||||||
|
detailVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30); //저작권 체험교실 구분 값
|
||||||
detailVO = vEPrcsAplctPrdService.selectDetailNewOne(detailVO);
|
detailVO = vEPrcsAplctPrdService.selectDetailNewOne(detailVO);
|
||||||
|
|
||||||
|
//신청 기간 체크
|
||||||
|
ModelAndView modelAndView = new ModelAndView(); //eduAplctChkProcess 공통으로 사용하기 위한 선언
|
||||||
|
boolean flag = exprnClsrmAplctService.eduAplctChkProcess(detailVO, request, modelAndView);
|
||||||
|
detailVO.setCheckYn(flag ? "Y" : "N");
|
||||||
|
|
||||||
//날짜 표시형식 변환
|
//날짜 표시형식 변환
|
||||||
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmm");
|
||||||
|
|
||||||
SimpleDateFormat simpleStrFormat = new SimpleDateFormat("yyyy년 MM월 dd일");
|
SimpleDateFormat simpleStrFormat = new SimpleDateFormat("yyyy년 MM월 dd일");
|
||||||
SimpleDateFormat simpleStrFormatEnd = new SimpleDateFormat("MM월 dd일");
|
SimpleDateFormat simpleStrFormatEnd = new SimpleDateFormat("MM월 dd일");
|
||||||
|
|
||||||
//시작일자 날짜 형식 변환
|
//시작일자 날짜 형식 변환
|
||||||
Date stDate = simpleDateFormat.parse(detailVO.getFrstRegistPnttm());
|
Date stDate = simpleDateFormat.parse(detailVO.getStrtPnttm());
|
||||||
String stDay = simpleStrFormat.format(stDate);
|
String stDay = simpleStrFormat.format(stDate);
|
||||||
|
|
||||||
//종료일자 날짜 형식 변환
|
//종료일자 날짜 형식 변환
|
||||||
Date edDate = simpleDateFormat.parse(detailVO.getLastUpdtPnttm());
|
Date edDate = simpleDateFormat.parse(detailVO.getEndPnttm());
|
||||||
String edDay = simpleStrFormatEnd.format(edDate);
|
String edDay = simpleStrFormatEnd.format(edDate);
|
||||||
|
|
||||||
//요일 텍스트 받아오기
|
//요일 텍스트 받아오기
|
||||||
String strWeekStart = DateUtil.getWeekText(stDate);
|
String strWeekStart = DateUtil.getWeekText(stDate);
|
||||||
String strWeekEnd = DateUtil.getWeekText(edDate);
|
String strWeekEnd = DateUtil.getWeekText(edDate);
|
||||||
|
|
||||||
detailVO.setFrstRegistPnttm(stDay + "(" + strWeekStart + ")");
|
detailVO.setStrtPnttm(stDay + "(" + strWeekStart + ")");
|
||||||
detailVO.setLastUpdtPnttm(edDay + "(" + strWeekEnd + ")");
|
detailVO.setEndPnttm(edDay + "(" + strWeekEnd + ")");
|
||||||
|
|
||||||
model.addAttribute("detailVO", detailVO);
|
model.addAttribute("detailVO", detailVO);
|
||||||
|
|
||||||
|
//현재년도
|
||||||
|
Date year = new Date();
|
||||||
|
SimpleDateFormat nowYearFormat = new SimpleDateFormat("yyyy");
|
||||||
|
String nowYear = nowYearFormat.format(year);
|
||||||
|
model.addAttribute("nowYear", nowYear);
|
||||||
|
|
||||||
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/cautionGuide";
|
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/cautionGuide";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -433,7 +433,7 @@ public class ExprnClsrmEndController {
|
|||||||
model.addAttribute("info", vEEduAplctVO);
|
model.addAttribute("info", vEEduAplctVO);
|
||||||
// return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndRslt";
|
// return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndRslt";
|
||||||
//대량 업로드 솔루션 테스트
|
//대량 업로드 솔루션 테스트
|
||||||
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndRsltTest";
|
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndRslt";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -51,6 +51,7 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
private String eduPlace; //교육장소
|
private String eduPlace; //교육장소
|
||||||
private String sbmtYn; //제출여부
|
private String sbmtYn; //제출여부
|
||||||
private String sbmtPnttm; //제출일시
|
private String sbmtPnttm; //제출일시
|
||||||
|
private String sbmtPnttmDetail; //제출일시 시분초 추가
|
||||||
private String aprvlCd; //승인코드
|
private String aprvlCd; //승인코드
|
||||||
private String aprvlPnttm; //승인일시
|
private String aprvlPnttm; //승인일시
|
||||||
private String aprvlCn; //승인내용
|
private String aprvlCn; //승인내용
|
||||||
@ -260,6 +261,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
|
|
||||||
private String endPnttm; //접수 종료일
|
private String endPnttm; //접수 종료일
|
||||||
|
|
||||||
|
private String prcsEndPnttm; //접수 종료일 저작권체험교실.
|
||||||
|
|
||||||
//강사료확정처리
|
//강사료확정처리
|
||||||
private String instrFeeOrd;
|
private String instrFeeOrd;
|
||||||
private String feeSbmtYn;
|
private String feeSbmtYn;
|
||||||
@ -293,6 +296,8 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
|
|
||||||
private String prcsAplctPrdOrd;
|
private String prcsAplctPrdOrd;
|
||||||
|
|
||||||
|
private String unfthYn; //불성실여부
|
||||||
|
|
||||||
|
|
||||||
public String getPrcsAplctPrdOrd() {
|
public String getPrcsAplctPrdOrd() {
|
||||||
return prcsAplctPrdOrd;
|
return prcsAplctPrdOrd;
|
||||||
@ -1464,6 +1469,24 @@ public class VEEduAplctVO extends ComDefaultVO implements Serializable {
|
|||||||
public void setRmtTrnAtchFileDetail(FileVO rmtTrnAtchFileDetail) {
|
public void setRmtTrnAtchFileDetail(FileVO rmtTrnAtchFileDetail) {
|
||||||
this.rmtTrnAtchFileDetail = rmtTrnAtchFileDetail;
|
this.rmtTrnAtchFileDetail = rmtTrnAtchFileDetail;
|
||||||
}
|
}
|
||||||
|
public String getSbmtPnttmDetail() {
|
||||||
|
return sbmtPnttmDetail;
|
||||||
|
}
|
||||||
|
public void setSbmtPnttmDetail(String sbmtPnttmDetail) {
|
||||||
|
this.sbmtPnttmDetail = sbmtPnttmDetail;
|
||||||
|
}
|
||||||
|
public String getPrcsEndPnttm() {
|
||||||
|
return prcsEndPnttm;
|
||||||
|
}
|
||||||
|
public void setPrcsEndPnttm(String prcsEndPnttm) {
|
||||||
|
this.prcsEndPnttm = prcsEndPnttm;
|
||||||
|
}
|
||||||
|
public String getUnfthYn() {
|
||||||
|
return unfthYn;
|
||||||
|
}
|
||||||
|
public void setUnfthYn(String unfthYn) {
|
||||||
|
this.unfthYn = unfthYn;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -50,4 +50,6 @@ public interface VEEduMIXService {
|
|||||||
void updateRsltRprtFileIdNull(VEEduAplctVO vEEduAplctVO) throws Exception;
|
void updateRsltRprtFileIdNull(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
|
||||||
void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception;
|
void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception;
|
||||||
|
//저작권 체험교실 목록
|
||||||
|
List<VEEduAplctVO> selectExprnPagingList(VEEduAplctVO paramVO) throws Exception;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -137,4 +137,10 @@ public class VEEduMIXDAO extends EgovAbstractDAO {
|
|||||||
public void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
insert("VEEduMIXDAO.updateRsltRprtFileId", vEEduAplctVO);
|
insert("VEEduMIXDAO.updateRsltRprtFileId", vEEduAplctVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEEduAplctVO> selectExprnPagingList(VEEduAplctVO paramVO) throws Exception {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
List<VEEduAplctVO> tlist = (List<VEEduAplctVO>) list("VEEduMIXDAO.selectExprnPagingList", paramVO);
|
||||||
|
return tlist;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -125,4 +125,8 @@ public class VEEduMIXServiceImpl implements VEEduMIXService {
|
|||||||
public void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception {
|
public void updateRsltRprtFileId(VEEduAplctVO vEEduAplctVO) throws Exception {
|
||||||
vEEduMIXDAO.updateRsltRprtFileId(vEEduAplctVO);
|
vEEduMIXDAO.updateRsltRprtFileId(vEEduAplctVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<VEEduAplctVO> selectExprnPagingList(VEEduAplctVO paramVO) throws Exception{
|
||||||
|
return vEEduMIXDAO.selectExprnPagingList(paramVO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -115,7 +115,7 @@ public class CommonManageWebController {
|
|||||||
|
|
||||||
//권한에 따른 로그인 정보 가져오기
|
//권한에 따른 로그인 정보 가져오기
|
||||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO();
|
||||||
|
vEEduAplctVO.setLastUpdusrId(loginVO.getUniqId());
|
||||||
int rs = vEEduAplctService.statusUpdate(vEEduAplctVO);
|
int rs = vEEduAplctService.statusUpdate(vEEduAplctVO);
|
||||||
|
|
||||||
//교육콘텐츠 교육승인 상태로 변경 시 메일발송
|
//교육콘텐츠 교육승인 상태로 변경 시 메일발송
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
package kcc.ve.oprtn.cpyrgExprnClsrm.oprtnAplctMng.web;
|
package kcc.ve.oprtn.cpyrgExprnClsrm.oprtnAplctMng.web;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@ -19,6 +21,7 @@ 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.FileVO;
|
import kcc.com.cmm.service.FileVO;
|
||||||
|
import kcc.com.cmm.util.DateUtil;
|
||||||
import kcc.com.utl.user.service.CheckFileUtil;
|
import kcc.com.utl.user.service.CheckFileUtil;
|
||||||
import kcc.com.utl.user.service.CheckLoginUtil;
|
import kcc.com.utl.user.service.CheckLoginUtil;
|
||||||
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
import kcc.ve.instr.tngrVisitEdu.prcsInfo.service.VEPrcsAplctPrdService;
|
||||||
@ -132,7 +135,7 @@ public class OprtnAplctAnncmMngController {
|
|||||||
*/
|
*/
|
||||||
@RequestMapping("oprtnAplctAnncmMngList.do")
|
@RequestMapping("oprtnAplctAnncmMngList.do")
|
||||||
public String OprtnAplctAnncmMngList(
|
public String OprtnAplctAnncmMngList(
|
||||||
VEPrcsDetailVO vEPrcsDetailVO
|
@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO
|
||||||
, ModelMap model
|
, ModelMap model
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
|
|
||||||
@ -212,6 +215,43 @@ public class OprtnAplctAnncmMngController {
|
|||||||
return "oprtn/cpyrgExprnClsrm/oprtnAplctAnncmMngDetail";
|
return "oprtn/cpyrgExprnClsrm/oprtnAplctAnncmMngDetail";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 교육과정관리 미리보기 팝업
|
||||||
|
*/
|
||||||
|
@RequestMapping("cautionGuidePreView.do")
|
||||||
|
public String cautionGuidePreView(@ModelAttribute("vEPrcsDetailVO") VEPrcsDetailVO vEPrcsDetailVO, ModelMap model)throws Exception{
|
||||||
|
|
||||||
|
//날짜 표시형식 변환
|
||||||
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmm");
|
||||||
|
|
||||||
|
SimpleDateFormat simpleStrFormat = new SimpleDateFormat("yyyy년 MM월 dd일");
|
||||||
|
SimpleDateFormat simpleStrFormatEnd = new SimpleDateFormat("MM월 dd일");
|
||||||
|
|
||||||
|
//시작일자 날짜 형식 변환
|
||||||
|
Date stDate = simpleDateFormat.parse(vEPrcsDetailVO.getStrtPnttm());
|
||||||
|
String stDay = simpleStrFormat.format(stDate);
|
||||||
|
|
||||||
|
//종료일자 날짜 형식 변환
|
||||||
|
Date edDate = simpleDateFormat.parse(vEPrcsDetailVO.getEndPnttm());
|
||||||
|
String edDay = simpleStrFormatEnd.format(edDate);
|
||||||
|
|
||||||
|
//요일 텍스트 받아오기
|
||||||
|
String strWeekStart = DateUtil.getWeekText(stDate);
|
||||||
|
String strWeekEnd = DateUtil.getWeekText(edDate);
|
||||||
|
|
||||||
|
vEPrcsDetailVO.setStrtPnttm(stDay + "(" + strWeekStart + ")");
|
||||||
|
vEPrcsDetailVO.setEndPnttm(edDay + "(" + strWeekEnd + ")");
|
||||||
|
|
||||||
|
|
||||||
|
//현재년도
|
||||||
|
Date year = new Date();
|
||||||
|
SimpleDateFormat nowYearFormat = new SimpleDateFormat("yyyy");
|
||||||
|
String nowYear = nowYearFormat.format(year);
|
||||||
|
model.addAttribute("nowYear", nowYear);
|
||||||
|
|
||||||
|
return "oprtn/cpyrgExprnClsrm/popup/cautionGuidePreView";
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 교육과정관리 수정 화면
|
* 교육과정관리 수정 화면
|
||||||
*/
|
*/
|
||||||
@ -411,7 +451,6 @@ public class OprtnAplctAnncmMngController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
LoginVO loginVO = checkLoginUtil.getAuthLoginVO(); //권한에 따른 로그인 정보 가져오기
|
||||||
// SsoLoginVO ssoLoginVO = checkLoginUtil.getSSOLoginVO(request); //SSO 로그인 정보 가져오기
|
|
||||||
//로그인 처리====================================
|
//로그인 처리====================================
|
||||||
|
|
||||||
|
|
||||||
@ -436,19 +475,6 @@ public class OprtnAplctAnncmMngController {
|
|||||||
//step2.파일 처리====================================
|
//step2.파일 처리====================================
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* if (loginVO!=null) {
|
|
||||||
System.out.println(loginVO.getMembId());
|
|
||||||
System.out.println(loginVO.getMembSeq());
|
|
||||||
System.out.println(loginVO.getId());
|
|
||||||
System.out.println(loginVO.getUniqId());
|
|
||||||
}
|
|
||||||
if (ssoLoginVO!=null) {
|
|
||||||
System.out.println(ssoLoginVO.getMembId());
|
|
||||||
System.out.println(ssoLoginVO.getMembSeq());
|
|
||||||
//System.out.println(ssoLoginVO.getId());
|
|
||||||
}*/
|
|
||||||
|
|
||||||
//번호 생성 및 디비 생성해주기
|
//번호 생성 및 디비 생성해주기
|
||||||
String prcsAplctPrdOrd = prcsGnrService.getNextStringId(); // 고유ID
|
String prcsAplctPrdOrd = prcsGnrService.getNextStringId(); // 고유ID
|
||||||
vEPrcsDetailVO.setAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
|
vEPrcsDetailVO.setAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
|
||||||
@ -475,7 +501,6 @@ public class OprtnAplctAnncmMngController {
|
|||||||
System.out.println(vEPrcsDetailVO.getEndPnttm());
|
System.out.println(vEPrcsDetailVO.getEndPnttm());
|
||||||
|
|
||||||
vEPrcsDetailVO.setLctrDivCd("30");
|
vEPrcsDetailVO.setLctrDivCd("30");
|
||||||
// vEPrcsDetailVO.setUseYn("Y");
|
|
||||||
vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
vEPrcsDetailVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
|
||||||
vEPrcsAplctPrdService.insert(vEPrcsDetailVO);
|
vEPrcsAplctPrdService.insert(vEPrcsDetailVO);
|
||||||
|
|
||||||
|
|||||||
@ -137,7 +137,9 @@ public class OprtnAplctMngController {
|
|||||||
//vEEduAplctVO.setLctrDivCd("30");
|
//vEEduAplctVO.setLctrDivCd("30");
|
||||||
vEEduAplctVO.setNotiUserId(user.getUniqId());
|
vEEduAplctVO.setNotiUserId(user.getUniqId());
|
||||||
vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString());
|
vEEduAplctVO.setMenuNo(session.getAttribute("menuNo").toString());
|
||||||
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO);
|
//List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectPagingList(vEEduAplctVO);
|
||||||
|
vEEduAplctVO.setLctrDivCd("30");
|
||||||
|
List<VEEduAplctVO> vEEduAplctVOList = vEEduMIXService.selectExprnPagingList(vEEduAplctVO);
|
||||||
//List복호화
|
//List복호화
|
||||||
vEEduAplctVOList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduAplctVOList);
|
vEEduAplctVOList = egovCryptoUtil.decryptVEEduAplctVOList(vEEduAplctVOList);
|
||||||
//3.pageing step3
|
//3.pageing step3
|
||||||
@ -408,13 +410,13 @@ String[] header = {
|
|||||||
,"보고서제출일"
|
,"보고서제출일"
|
||||||
,"운영시기(월)"
|
,"운영시기(월)"
|
||||||
|
|
||||||
,"선정결과"
|
,"처리상태"
|
||||||
,"성별"
|
,"성별"
|
||||||
,"참고사항"
|
,"참고사항"
|
||||||
};
|
};
|
||||||
|
|
||||||
String[] order = {
|
String[] order = {
|
||||||
"TotCnt"
|
"EduAplctOrd"
|
||||||
,"EduSlctAreaCd"
|
,"EduSlctAreaCd"
|
||||||
,"ScholDivCd"
|
,"ScholDivCd"
|
||||||
,"ScholInsttNm"
|
,"ScholInsttNm"
|
||||||
@ -438,7 +440,7 @@ String[] order = {
|
|||||||
,"RprtSbmtDt"
|
,"RprtSbmtDt"
|
||||||
,"OprtnStrtDt"
|
,"OprtnStrtDt"
|
||||||
|
|
||||||
,"MdfyRqstYn"
|
,"AprvlCd"
|
||||||
,"ChrgSexCd"
|
,"ChrgSexCd"
|
||||||
,""
|
,""
|
||||||
};
|
};
|
||||||
|
|||||||
@ -33,7 +33,7 @@
|
|||||||
<!-- 패널티 등록 C -->
|
<!-- 패널티 등록 C -->
|
||||||
<insert id="VEAsgnmNotiDAO.insert" parameterClass="VEAsgnmNotiVO">
|
<insert id="VEAsgnmNotiDAO.insert" parameterClass="VEAsgnmNotiVO">
|
||||||
|
|
||||||
MERGE INTO <include refid="VEAsgnmNotiDAO.table_name"/> T1 USING DB_ROOT
|
<!-- MERGE INTO <include refid="VEAsgnmNotiDAO.table_name"/> T1 USING DB_ROOT
|
||||||
ON (T1.TBL_UNIQ_ORD = #tblUniqOrd# AND T1.FRST_REGISTER_ID = #frstRegisterId# AND T1.MENU_NO = #menuNo# )
|
ON (T1.TBL_UNIQ_ORD = #tblUniqOrd# AND T1.FRST_REGISTER_ID = #frstRegisterId# AND T1.MENU_NO = #menuNo# )
|
||||||
WHEN MATCHED THEN
|
WHEN MATCHED THEN
|
||||||
UPDATE SET
|
UPDATE SET
|
||||||
@ -48,7 +48,33 @@
|
|||||||
#frstRegisterId#,
|
#frstRegisterId#,
|
||||||
#menuNo#,
|
#menuNo#,
|
||||||
#urlPath#
|
#urlPath#
|
||||||
|
) -->
|
||||||
|
|
||||||
|
MERGE INTO <include refid="VEAsgnmNotiDAO.table_name"/> T1
|
||||||
|
USING (SELECT
|
||||||
|
#tblUniqOrd# AS tbl_uniq_ord,
|
||||||
|
#frstRegisterId# AS frst_register_id,
|
||||||
|
#menuNo# AS menu_no,
|
||||||
|
#urlPath# AS url_path FROM DUAL) T2
|
||||||
|
ON (T1.tbl_uniq_ord = T2.tbl_uniq_ord
|
||||||
|
AND T1.frst_register_id = T2.frst_register_id
|
||||||
|
AND T1.menu_no = T2.menu_no)
|
||||||
|
WHEN MATCHED THEN
|
||||||
|
UPDATE SET
|
||||||
|
frst_regist_pnttm = SYSDATE,
|
||||||
|
url_path = T2.url_path
|
||||||
|
WHEN NOT MATCHED THEN
|
||||||
|
INSERT(
|
||||||
|
<include refid="VEAsgnmNotiDAO.column_name"/>
|
||||||
|
)VALUES (
|
||||||
|
T2.TBL_UNIQ_ORD,
|
||||||
|
SYSDATE,
|
||||||
|
T2.FRST_REGISTER_ID,
|
||||||
|
T2.MENU_NO,
|
||||||
|
T2.URL_PATH
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -181,10 +181,10 @@
|
|||||||
#email#,
|
#email#,
|
||||||
#eduPlace#,
|
#eduPlace#,
|
||||||
#sbmtYn#,
|
#sbmtYn#,
|
||||||
IF(#sbmtYn# = 'Y', SYSDATE, NULL),
|
CASE WHEN #sbmtYn# = 'Y' THEN SYSDATE ELSE NULL END,
|
||||||
#aprvlCd#,
|
#aprvlCd#,
|
||||||
|
|
||||||
IF(#aprvlCd# IS NOT NULL, SYSDATE, NULL),
|
CASE WHEN #aprvlCd# IS NOT NULL THEN SYSDATE ELSE NULL END,
|
||||||
#aprvlCn#,
|
#aprvlCn#,
|
||||||
#insttNm#,
|
#insttNm#,
|
||||||
#insttDivCd#,
|
#insttDivCd#,
|
||||||
@ -275,6 +275,7 @@
|
|||||||
REMOTE_YN AS remoteYn,
|
REMOTE_YN AS remoteYn,
|
||||||
CLS_CMBT_YN clsCmbtYn,
|
CLS_CMBT_YN clsCmbtYn,
|
||||||
PPUL_DCLN_YN AS ppulDclnYn
|
PPUL_DCLN_YN AS ppulDclnYn
|
||||||
|
, TO_CHAR(A.SBMT_PNTTM, 'YYYY-MM-DD HH24:MI:ss') AS sbmtPnttmDetail
|
||||||
,C.aprvl_cd AS exprnAprvlCd
|
,C.aprvl_cd AS exprnAprvlCd
|
||||||
, C.orgnl_rslt_atch_file_id AS orgnlRsltAtchFileId
|
, C.orgnl_rslt_atch_file_id AS orgnlRsltAtchFileId
|
||||||
, C.cpy_rslt_atch_file_id AS cpyRsltAtchFileId
|
, C.cpy_rslt_atch_file_id AS cpyRsltAtchFileId
|
||||||
@ -579,7 +580,7 @@
|
|||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
<isNotEmpty property="sbmtYn">
|
<isNotEmpty property="sbmtYn">
|
||||||
, SBMT_YN = #sbmtYn#
|
, SBMT_YN = #sbmtYn#
|
||||||
, SBMT_PNTTM = IF(SBMT_PNTTM is null, SYSDATE, SBMT_PNTTM)
|
, SBMT_PNTTM = CASE WHEN SBMT_PNTTM IS NULL THEN SYSDATE ELSE SBMT_PNTTM END
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
<isNotEmpty property="aprvlCd">
|
<isNotEmpty property="aprvlCd">
|
||||||
, APRVL_CD = #aprvlCd#
|
, APRVL_CD = #aprvlCd#
|
||||||
|
|||||||
@ -57,8 +57,7 @@
|
|||||||
<sql id="VEEduChasiDAO.select_column_name">
|
<sql id="VEEduChasiDAO.select_column_name">
|
||||||
A.EDU_APLCT_ORD AS eduAplctOrd,
|
A.EDU_APLCT_ORD AS eduAplctOrd,
|
||||||
A.EDU_CHASI_ORD AS eduChasiOrd,
|
A.EDU_CHASI_ORD AS eduChasiOrd,
|
||||||
|
CASE WHEN A.EDU_HOPE_DT IS NOT NULL AND A.EDU_HOPE_DT != '' THEN TO_CHAR(TO_DATE(a.EDU_HOPE_DT, 'YYYYMMDD'), 'YYYY.MM.dd') ELSE '' END AS eduHopeDt,
|
||||||
IF(A.EDU_HOPE_DT is not null and A.EDU_HOPE_DT != '', DATE_FORMAT(A.EDU_HOPE_DT,'%Y.%m.%d'), '') AS eduHopeDt,
|
|
||||||
A.STRT_TM AS strtTm,
|
A.STRT_TM AS strtTm,
|
||||||
A.END_TM AS endTm,
|
A.END_TM AS endTm,
|
||||||
A.LRN_TM AS lrnTm,
|
A.LRN_TM AS lrnTm,
|
||||||
@ -66,10 +65,10 @@
|
|||||||
A.TRGT AS trgt,
|
A.TRGT AS trgt,
|
||||||
A.PRSNL AS prsnl,
|
A.PRSNL AS prsnl,
|
||||||
A.MEMO_CN AS memoCn,
|
A.MEMO_CN AS memoCn,
|
||||||
|
|
||||||
DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d') 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,
|
||||||
DATE_FORMAT(A.LAST_UPDT_PNTTM,'%Y-%m-%d') AS lastUpdtPnttm,
|
TO_CHAR(A.LAST_UPDT_PNTTM, 'YYYY-MM-dd') AS frstRegistPnttm,
|
||||||
A.LAST_UPDUSR_ID AS lastUpdusrId,
|
A.LAST_UPDUSR_ID AS lastUpdusrId,
|
||||||
|
|
||||||
A.LRN_SBJCT AS lrnSbjct,
|
A.LRN_SBJCT AS lrnSbjct,
|
||||||
@ -244,6 +243,7 @@
|
|||||||
|
|
||||||
<!-- 강사 정보 L -->
|
<!-- 강사 정보 L -->
|
||||||
<select id="VEEduChasiDAO.selectList" parameterClass="VEEduChasiVO" resultClass="VEEduChasiVO">
|
<select id="VEEduChasiDAO.selectList" parameterClass="VEEduChasiVO" resultClass="VEEduChasiVO">
|
||||||
|
/* 임시.*NOT_SQL_LOG.* VEEduChasiDAO.selectList */
|
||||||
SELECT
|
SELECT
|
||||||
<include refid="VEEduChasiDAO.select_column_name"/>
|
<include refid="VEEduChasiDAO.select_column_name"/>
|
||||||
FROM <include refid="VEEduChasiDAO.join_table_name"/>
|
FROM <include refid="VEEduChasiDAO.join_table_name"/>
|
||||||
|
|||||||
@ -50,9 +50,9 @@
|
|||||||
,#oprtnStrtDt#
|
,#oprtnStrtDt#
|
||||||
,#oprtnEndDt#
|
,#oprtnEndDt#
|
||||||
,#oprtnFileId#
|
,#oprtnFileId#
|
||||||
,NOW()
|
,SYSDATE
|
||||||
,#frstRegisterId#
|
,#frstRegisterId#
|
||||||
,NOW()
|
,SYSDATE
|
||||||
,#lastUpdusrId#
|
,#lastUpdusrId#
|
||||||
,#islandsYn#
|
,#islandsYn#
|
||||||
,#remoteYn#
|
,#remoteYn#
|
||||||
@ -80,7 +80,7 @@
|
|||||||
,OPRTN_STRT_DT = #oprtnStrtDt#
|
,OPRTN_STRT_DT = #oprtnStrtDt#
|
||||||
,OPRTN_END_DT = #oprtnEndDt#
|
,OPRTN_END_DT = #oprtnEndDt#
|
||||||
,OPRTN_FILE_ID = #oprtnFileId#
|
,OPRTN_FILE_ID = #oprtnFileId#
|
||||||
,LAST_UPDT_PNTTM = NOW()
|
,LAST_UPDT_PNTTM = SYSDATE
|
||||||
,LAST_UPDUSR_ID = #lastUpdusrId#
|
,LAST_UPDUSR_ID = #lastUpdusrId#
|
||||||
,ISLANDS_YN = #islandsYn#
|
,ISLANDS_YN = #islandsYn#
|
||||||
,REMOTE_YN = #remoteYn#
|
,REMOTE_YN = #remoteYn#
|
||||||
|
|||||||
@ -137,7 +137,7 @@
|
|||||||
|
|
||||||
<!-- 강사 정보 L page -->
|
<!-- 강사 정보 L page -->
|
||||||
<select id="VEEduMIXDAO.selectPagingList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
<select id="VEEduMIXDAO.selectPagingList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
||||||
/* VEEduMIXDAO.selectPagingList */
|
/* 임시.*NOT_SQL_LOG.* VEEduMIXDAO.selectPagingList */
|
||||||
SELECT
|
SELECT
|
||||||
COUNT(1) OVER() AS totCnt
|
COUNT(1) OVER() AS totCnt
|
||||||
, ROWNUM AS rowNo
|
, ROWNUM AS rowNo
|
||||||
@ -264,6 +264,12 @@
|
|||||||
WHERE S3.use_YN = 'Y' AND S3.frst_regist_pnttm = (SELECT MAX(frst_regist_pnttm) FROM ve_prcs_aplct_prd)
|
WHERE S3.use_YN = 'Y' AND S3.frst_regist_pnttm = (SELECT MAX(frst_regist_pnttm) FROM ve_prcs_aplct_prd)
|
||||||
) AS endPnttm
|
) AS endPnttm
|
||||||
, (
|
, (
|
||||||
|
SELECT
|
||||||
|
S4.end_pnttm
|
||||||
|
FROM ve_prcs_aplct_prd S4
|
||||||
|
WHERE S4.prcs_aplct_prd_ord = A.prcs_ord
|
||||||
|
) AS prcsEndPnttm
|
||||||
|
, (
|
||||||
SELECT
|
SELECT
|
||||||
COUNT(1)
|
COUNT(1)
|
||||||
FROM ve_edu_chasi_instr_asgnm X
|
FROM ve_edu_chasi_instr_asgnm X
|
||||||
@ -2580,9 +2586,10 @@
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="VEEduMIXDAO.selectOprtnExcelList" parameterClass="VEEduAplctVO" resultClass="VEEduExcelVO">
|
<select id="VEEduMIXDAO.selectOprtnExcelList" parameterClass="VEEduAplctVO" resultClass="VEEduExcelVO">
|
||||||
/* VEEduMIXDAO.selectOprtnExcelList */
|
/* 임시.*NOT_SQL_LOG.* VEEduMIXDAO.selectOprtnExcelList */
|
||||||
SELECT
|
SELECT
|
||||||
COUNT(1) OVER() AS totCnt
|
COUNT(1) OVER() AS totCnt
|
||||||
|
, ROW_NUMBER() OVER(ORDER BY A.EDU_APLCT_ORD DESC) AS eduAplctOrd
|
||||||
, A.EDU_SLCT_AREA_CD AS eduSlctAreaCd
|
, A.EDU_SLCT_AREA_CD AS eduSlctAreaCd
|
||||||
, A.SCHOL_DIV_CD AS scholDivCd
|
, A.SCHOL_DIV_CD AS scholDivCd
|
||||||
, A.SCHOL_INSTT_NM AS scholInsttNm
|
, A.SCHOL_INSTT_NM AS scholInsttNm
|
||||||
@ -2594,7 +2601,8 @@
|
|||||||
, A.addr||' '||A.addr_detail AS addr
|
, A.addr||' '||A.addr_detail AS addr
|
||||||
, E.chrg_mjr AS chrgMjr
|
, E.chrg_mjr AS chrgMjr
|
||||||
<!-- , E.d_birth AS birth -->
|
<!-- , E.d_birth AS birth -->
|
||||||
, DATE_FORMAT(STR_TO_DATE(E.d_birth,'%Y%m%d') ,'%Y-%m-%d') AS birth
|
<!-- , DATE_FORMAT(STR_TO_DATE(E.d_birth,'%Y%m%d') ,'%Y-%m-%d') AS birth -->
|
||||||
|
,TO_CHAR(TO_DATE(E.d_birth,'YYYYMMdd') ,'YYYY-MM-dd') AS birth
|
||||||
|
|
||||||
, E.exprn_clsrn_cd AS exprnClsrnCd
|
, E.exprn_clsrn_cd AS exprnClsrnCd
|
||||||
, E.exprn_clsrn_year AS exprnClsrnYear
|
, E.exprn_clsrn_year AS exprnClsrnYear
|
||||||
@ -2605,10 +2613,12 @@
|
|||||||
, E.TRGT_PRSNL AS trgtPrsnl
|
, E.TRGT_PRSNL AS trgtPrsnl
|
||||||
|
|
||||||
, TO_CHAR(E.RPRT_SBMT,'YYYY-MM-DD') AS rprtSbmtDt
|
, TO_CHAR(E.RPRT_SBMT,'YYYY-MM-DD') AS rprtSbmtDt
|
||||||
, DATE_FORMAT(STR_TO_DATE(E.OPRTN_STRT_DT,'%Y%m%d') ,'%Y-%m-%d') || '~' || DATE_FORMAT(STR_TO_DATE(E.OPRTN_END_DT,'%Y%m%d') ,'%Y-%m-%d')
|
<!-- , DATE_FORMAT(STR_TO_DATE(E.OPRTN_STRT_DT,'%Y%m%d') ,'%Y-%m-%d') || '~' || DATE_FORMAT(STR_TO_DATE(E.OPRTN_END_DT,'%Y%m%d') ,'%Y-%m-%d') -->
|
||||||
|
, TO_CHAR(TO_DATE(E.OPRTN_STRT_DT,'YYYYMMdd') ,'YYYY-MM-dd') || '~' || TO_CHAR(TO_DATE(E.OPRTN_END_DT,'YYYYMMdd') ,'YYYY-MM-dd')
|
||||||
AS oprtnStrtDt
|
AS oprtnStrtDt
|
||||||
, A.MDFY_RQST_YN AS mdfyRqstYn
|
, A.MDFY_RQST_YN AS mdfyRqstYn
|
||||||
, DECODE(E.chrg_sex_cd, 'M', '남성', 'F', '여성') AS chrgSexCd
|
, DECODE(E.chrg_sex_cd, 'M', '남성', 'F', '여성') AS chrgSexCd
|
||||||
|
, DECODE(A.aprvl_cd, '10', '운영신청', '70', '수정요청', '80', '수정완료', '60', '운영확정', '90', '운영미확정') AS aprvlCd
|
||||||
FROM
|
FROM
|
||||||
VE_EDU_APLCT A
|
VE_EDU_APLCT A
|
||||||
LEFT OUTER JOIN
|
LEFT OUTER JOIN
|
||||||
@ -2640,9 +2650,9 @@
|
|||||||
(
|
(
|
||||||
SELECT
|
SELECT
|
||||||
EDU_APLCT_ORD
|
EDU_APLCT_ORD
|
||||||
, EDU_CHASI_ORD
|
, MAX(EDU_CHASI_ORD)
|
||||||
, SUM(lrn_tm) AS lrn_tm
|
, SUM(lrn_tm) AS lrn_tm
|
||||||
, MIN(REPLACE(IF(EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '', NULL, EDU_HOPE_DT), '.', '')) AS EDU_HOPE_DT
|
, MIN(REPLACE(CASE WHEN EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '' THEN NULL ELSE EDU_HOPE_DT END, '.', '')) AS EDU_HOPE_DT
|
||||||
FROM
|
FROM
|
||||||
VE_EDU_CHASI
|
VE_EDU_CHASI
|
||||||
GROUP BY EDU_APLCT_ORD
|
GROUP BY EDU_APLCT_ORD
|
||||||
@ -2652,15 +2662,13 @@
|
|||||||
ON A.USER_ID = D.USER_ID
|
ON A.USER_ID = D.USER_ID
|
||||||
LEFT OUTER JOIN VE_EDU_OPRTN E
|
LEFT OUTER JOIN VE_EDU_OPRTN E
|
||||||
ON A.EDU_APLCT_ORD = E.EDU_APLCT_ORD
|
ON A.EDU_APLCT_ORD = E.EDU_APLCT_ORD
|
||||||
WHERE 1=1
|
WHERE NVL(A.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
||||||
AND NVL(A.USE_YN, 'Y') <![CDATA[ <> ]]> 'N'
|
|
||||||
AND A.SBMT_YN = 'Y'
|
AND A.SBMT_YN = 'Y'
|
||||||
AND A.LCTR_DIV_CD = #lctrDivCd#
|
AND A.LCTR_DIV_CD = #lctrDivCd#
|
||||||
<isNotEmpty property="aprvlCd">
|
<isNotEmpty property="aprvlCd">
|
||||||
AND A.APRVL_CD=#aprvlCd#
|
AND A.APRVL_CD=#aprvlCd#
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
ORDER BY 1=1
|
ORDER BY A.EDU_APLCT_ORD DESC
|
||||||
, A.EDU_APLCT_ORD DESC
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<insert id="VEEduMIXDAO.insertExprnClsrmEndInfo" parameterClass="VEEduAplctVO">
|
<insert id="VEEduMIXDAO.insertExprnClsrmEndInfo" parameterClass="VEEduAplctVO">
|
||||||
@ -2693,9 +2701,9 @@ VALUES
|
|||||||
, #evdncPhtAtchFileId#
|
, #evdncPhtAtchFileId#
|
||||||
, #rmtTrnAtchFileId#
|
, #rmtTrnAtchFileId#
|
||||||
|
|
||||||
, NOW()
|
, SYSDATE
|
||||||
, #frstRegisterId#
|
, #frstRegisterId#
|
||||||
, NOW()
|
, SYSDATE
|
||||||
, #lastUpdusrId#
|
, #lastUpdusrId#
|
||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
@ -3384,7 +3392,7 @@ VALUES
|
|||||||
SET
|
SET
|
||||||
$fileType$ = null,
|
$fileType$ = null,
|
||||||
last_updusr_id = #lastUpdusrId#,
|
last_updusr_id = #lastUpdusrId#,
|
||||||
last_updt_pnttm = now()
|
last_updt_pnttm = SYSDATE
|
||||||
WHERE
|
WHERE
|
||||||
edu_aplct_ord = #eduAplctOrd#
|
edu_aplct_ord = #eduAplctOrd#
|
||||||
</insert>
|
</insert>
|
||||||
@ -3407,8 +3415,100 @@ VALUES
|
|||||||
rmt_trn_atch_file_id = #rmtTrnAtchFileId#,
|
rmt_trn_atch_file_id = #rmtTrnAtchFileId#,
|
||||||
</isNotEmpty>
|
</isNotEmpty>
|
||||||
last_updusr_id = #lastUpdusrId#,
|
last_updusr_id = #lastUpdusrId#,
|
||||||
last_updt_pnttm = now()
|
last_updt_pnttm = SYSDATE
|
||||||
WHERE
|
WHERE
|
||||||
edu_aplct_ord = #eduAplctOrd#
|
edu_aplct_ord = #eduAplctOrd#
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
|
<select id="VEEduMIXDAO.selectExprnPagingList" parameterClass="VEEduAplctVO" resultClass="VEEduAplctVO">
|
||||||
|
/* 임시.*NOT_SQL_LOG.* VEEduMIXDAO.selectExprnPagingList */
|
||||||
|
SELECT
|
||||||
|
COUNT(1) OVER() AS totCnt,
|
||||||
|
ROWNUM AS rowNo,
|
||||||
|
A.edu_aplct_ord AS eduAplctOrd,
|
||||||
|
A.user_id AS userId,
|
||||||
|
A.prcs_ord AS prcsOrd,
|
||||||
|
A.aprvl_cd AS aprvlCd,
|
||||||
|
A.edu_slct_area_cd AS eduSlctAreaCd,
|
||||||
|
A.schol_instt_nm AS scholInsttNm,
|
||||||
|
A.chrg_nm AS chrgNm,
|
||||||
|
TO_CHAR(A.sbmt_pnttm, 'YYYY.MM.DD') AS sbmtPnttm,
|
||||||
|
D.unfth_yn AS unfthYn,
|
||||||
|
(
|
||||||
|
SELECT COUNT(1)
|
||||||
|
FROM ve_new_noti e
|
||||||
|
WHERE ((A.edu_aplct_ord = e.tbl_uniq_ord OR B.edu_aplct_ord = e.tbl_uniq_ord) OR B.edu_chasi_ord = e.tbl_uniq_ord)
|
||||||
|
AND e.menu_no = #menuNo#
|
||||||
|
AND e.frst_register_id = #notiUserId#
|
||||||
|
)
|
||||||
|
AS notiCnt,
|
||||||
|
C.CHRG_MJR AS chrgMjr
|
||||||
|
FROM ve_edu_aplct A
|
||||||
|
LEFT OUTER JOIN (
|
||||||
|
SELECT
|
||||||
|
EDU_APLCT_ORD
|
||||||
|
,EDU_CHASI_ORD
|
||||||
|
,SUM(lrn_tm) AS lrn_tm
|
||||||
|
,MIN(
|
||||||
|
REPLACE(
|
||||||
|
CASE WHEN EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '' THEN NULL ELSE EDU_HOPE_DT END
|
||||||
|
, '.'
|
||||||
|
, ''
|
||||||
|
)
|
||||||
|
) AS EDU_HOPE_DT
|
||||||
|
FROM VE_EDU_CHASI
|
||||||
|
GROUP BY EDU_APLCT_ORD, EDU_CHASI_ORD
|
||||||
|
) B
|
||||||
|
ON A.edu_aplct_ord = B.edu_aplct_ord
|
||||||
|
LEFT OUTER JOIN VE_EDU_OPRTN C
|
||||||
|
ON A.EDU_APLCT_ORD = C.EDU_APLCT_ORD
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT MAX(dd.edu_aplct_ord) AS edu_aplct_ord
|
||||||
|
FROM ve_edu_aplct dd
|
||||||
|
JOIN ve_edu_scltn_teacher ddd
|
||||||
|
ON dd.edu_aplct_ord = ddd.edu_aplct_ord
|
||||||
|
GROUP BY dd.FRST_REGISTER_ID
|
||||||
|
) dddd
|
||||||
|
ON a.EDU_APLCT_ORD = dddd.EDU_APLCT_ORD
|
||||||
|
LEFT JOIN ve_edu_scltn_teacher D
|
||||||
|
ON D.EDU_APLCT_ORD = dddd.EDU_APLCT_ORD
|
||||||
|
WHERE 1=1
|
||||||
|
<isNotEmpty property="lctrDivCd" prepend="AND">
|
||||||
|
A.lctr_div_cd = #lctrDivCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchYear">
|
||||||
|
AND TO_CHAR(A.SBMT_PNTTM,'YYYY') = #searchYear#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="eduSlctAreaCd">
|
||||||
|
AND A.EDU_SLCT_AREA_CD = #eduSlctAreaCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
<isEmpty property="searchCondition">
|
||||||
|
<isNotEmpty property="searchKeyword">
|
||||||
|
AND (
|
||||||
|
A.SCHOL_INSTT_NM LIKE '%' || #searchKeyword# '%' OR
|
||||||
|
A.INSTT_NM LIKE '%' || #searchKeyword# || '%'
|
||||||
|
)
|
||||||
|
</isNotEmpty>
|
||||||
|
</isEmpty>
|
||||||
|
|
||||||
|
<isNotEmpty property="searchCondition">
|
||||||
|
<isEqual property="searchCondition" compareValue="1">
|
||||||
|
AND A.SCHOL_INSTT_NM LIKE '%' || #searchKeyword# || '%'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="searchCondition" compareValue="2">
|
||||||
|
AND A.CHRG_NM LIKE '%' || #searchKeyword# || '%'
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchScholDivCdArr">
|
||||||
|
<iterate open="(" close=")" conjunction="," property="searchScholDivCdArr" prepend="AND A.SCHOL_DIV_CD IN " > #searchScholDivCdArr[]#</iterate>
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchCpyAprvlCd">
|
||||||
|
AND A.APRVL_CD = #searchCpyAprvlCd#
|
||||||
|
</isNotEmpty>
|
||||||
|
ORDER BY 1
|
||||||
|
<isNotEmpty property="orderByQuery">
|
||||||
|
, $orderByQuery$
|
||||||
|
</isNotEmpty>
|
||||||
|
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
|
||||||
|
</select>
|
||||||
</sqlMap>
|
</sqlMap>
|
||||||
|
|||||||
@ -349,7 +349,7 @@
|
|||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<!-- 강사 정보 R -->
|
<!-- 과정신청기간 최근 1개 R -->
|
||||||
<select id="VEPrcsAplctPrdDAO.selectDetailNewOne" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
<select id="VEPrcsAplctPrdDAO.selectDetailNewOne" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
|
||||||
/* VEPrcsAplctPrdDAO.selectDetailNewOne */
|
/* VEPrcsAplctPrdDAO.selectDetailNewOne */
|
||||||
SELECT COUNT(1) OVER() AS totCnt ,
|
SELECT COUNT(1) OVER() AS totCnt ,
|
||||||
@ -378,6 +378,9 @@
|
|||||||
AS atchFileNm
|
AS atchFileNm
|
||||||
FROM ve_prcs_aplct_prd a
|
FROM ve_prcs_aplct_prd a
|
||||||
WHERE 1 = 1
|
WHERE 1 = 1
|
||||||
|
<isNotEmpty property="lctrDivCd">
|
||||||
|
AND a.lctr_div_cd=#lctrDivCd#
|
||||||
|
</isNotEmpty>
|
||||||
AND
|
AND
|
||||||
a.use_yn = 'Y'
|
a.use_yn = 'Y'
|
||||||
ORDER BY a.strt_pnttm DESC
|
ORDER BY a.strt_pnttm DESC
|
||||||
|
|||||||
@ -51,9 +51,9 @@
|
|||||||
a.aprvl_id AS aprvlId,
|
a.aprvl_id AS aprvlId,
|
||||||
a.aprvl_cn AS aprvlCn,
|
a.aprvl_cn AS aprvlCn,
|
||||||
|
|
||||||
DATE_FORMAT(a.frst_regist_pnttm,'%Y%m%d') 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,
|
||||||
DATE_FORMAT(a.last_updt_pnttm,'%Y%m%d') 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,
|
||||||
|
|
||||||
orgnl_rslt_atch_file_id AS orgnlRsltAtchFileId,
|
orgnl_rslt_atch_file_id AS orgnlRsltAtchFileId,
|
||||||
|
|||||||
@ -225,15 +225,13 @@
|
|||||||
/*
|
/*
|
||||||
, IF(b.stndrd_schol_cd IS null,'N','Y') AS isltnScholYn
|
, IF(b.stndrd_schol_cd IS null,'N','Y') AS isltnScholYn
|
||||||
*/
|
*/
|
||||||
, NVL2(b.stndrd_schol_cd,'Y','N') AS isltnScholYn
|
, NVL2(b.schol_isltn_ord,'Y','N') AS isltnScholYn
|
||||||
/*
|
, DECODE(schol_grade_nm, '초등학교','10', '중학교','20', '고등학교','30',CASE WHEN INSTR(schol_grade_nm, '각종학교') > 0 THEN '40' ELSE '50' END) AS scholDivCd
|
||||||
, DECODE(schol_grade_nm, '초등학교','10', '중학교','20', '고등학교','30',if (INSTR(schol_grade_nm,'각종학교')>0,'40','50')) AS scholDivCd
|
|
||||||
*/
|
|
||||||
|
|
||||||
FROM
|
FROM
|
||||||
<include refid="ScholInfoDAO.table_name"/> a
|
<include refid="ScholInfoDAO.table_name"/> a
|
||||||
LEFT OUTER JOIN ve_schol_isltn b
|
LEFT OUTER JOIN ve_schol_isltn b
|
||||||
ON(a.schol_id=b.schol_id)
|
ON(a.schol_id=b.schol_isltn_ord)
|
||||||
WHERE 1=1
|
WHERE 1=1
|
||||||
<isNotEmpty property="scholGrade">
|
<isNotEmpty property="scholGrade">
|
||||||
$scholGrade$
|
$scholGrade$
|
||||||
|
|||||||
@ -153,6 +153,8 @@
|
|||||||
|
|
||||||
<pattern>*/web/ve/**/popup/*</pattern>
|
<pattern>*/web/ve/**/popup/*</pattern>
|
||||||
|
|
||||||
|
<pattern>*/kccadr/oprtn/cpyrgExprnClsrm/cautionGuidePreView.do</pattern> <!-- 관리자 저작권체험교실 교육과정안내 미리보기 팝업 -->
|
||||||
|
|
||||||
<!-- <pattern>*/tngrVisitEdu/popup/*Popup.do</pattern>
|
<!-- <pattern>*/tngrVisitEdu/popup/*Popup.do</pattern>
|
||||||
<pattern>*/adultVisitEdu/popup/*Popup.do</pattern> -->
|
<pattern>*/adultVisitEdu/popup/*Popup.do</pattern> -->
|
||||||
|
|
||||||
|
|||||||
@ -30,6 +30,34 @@
|
|||||||
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
|
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function delAtchFile(itemId , fileSn){
|
||||||
|
if(!confirm("삭제하시겠습니까?")){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "<c:url value='/uss/ion/fms/fmsfileDeleteAjax.do' />",
|
||||||
|
data:{ "atchFileId" : itemId , "fileSn" : fileSn},
|
||||||
|
dataType:'json',
|
||||||
|
cache: false,
|
||||||
|
async: false,
|
||||||
|
timeout: 600000,
|
||||||
|
success: function (returnData, status) {
|
||||||
|
if(returnData.result == 'success'){
|
||||||
|
alert("삭제되었습니다.");
|
||||||
|
location.reload(true);
|
||||||
|
}else{
|
||||||
|
alert("삭제처리에 실패하였습니다.");
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function (e) {
|
||||||
|
console.log("ERROR : ", e);
|
||||||
|
alert("삭제처리에 실패하였습니다.");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function fn_egov_deleteFile(atchFileId, fileSn, delTrName) {
|
function fn_egov_deleteFile(atchFileId, fileSn, delTrName) {
|
||||||
if(!confirm("<spring:message code="common.delete.msg" />")) return;
|
if(!confirm("<spring:message code="common.delete.msg" />")) return;
|
||||||
|
|
||||||
@ -70,7 +98,7 @@
|
|||||||
newForm.target = "iframe_egov_file_delete"
|
newForm.target = "iframe_egov_file_delete"
|
||||||
newForm.submit();
|
newForm.submit();
|
||||||
//console.log('del submit!!');
|
//console.log('del submit!!');
|
||||||
var objDelTr = document.getElementById(delTrName);
|
var objDelTr = document.getElementById(delTrName);
|
||||||
objDelTr.parentNode.removeChild(objDelTr);
|
objDelTr.parentNode.removeChild(objDelTr);
|
||||||
fn_egov_multi_selector_update_delete();
|
fn_egov_multi_selector_update_delete();
|
||||||
//console.log('egov_file_view_table delete!!');
|
//console.log('egov_file_view_table delete!!');
|
||||||
@ -127,9 +155,11 @@
|
|||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${searchVO.designTy eq 'EMPTY'}">
|
<c:when test="${searchVO.designTy eq 'EMPTY'}">
|
||||||
<c:forEach var="fileVO" items="${fileList}" varStatus="status">
|
<c:forEach var="fileVO" items="${fileList}" varStatus="status">
|
||||||
<a href="javascript:fn_egov_downFile('<c:out value="${fileVO.atchFileId}"/>','<c:out value="${fileVO.fileSn}"/>')" class="file_download_a" title="다운로드">
|
<a href="javascript:fn_egov_downFile('<c:out value="${fileVO.atchFileId}"/>','<c:out value="${fileVO.fileSn}"/>')" class="file_download_a" title="다운로드" style="display:inline-block;">
|
||||||
<c:out value="${fileVO.orignlFileNm}"/>
|
<c:out value="${fileVO.orignlFileNm}"/>
|
||||||
</a>
|
</a>
|
||||||
|
<img src="<c:url value='/images/egovframework/com/cmm/btn/btn_del.png' />" class="cursor" onClick="delAtchFile('<c:out value="${fileVO.atchFileId}"/>','<c:out value="${fileVO.fileSn}"/>'); return false;" alt="첨부파일">
|
||||||
|
<br/>
|
||||||
</c:forEach>
|
</c:forEach>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
|
|||||||
@ -223,7 +223,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function fncPreview(){
|
function fncPreview(){
|
||||||
alert("개발전")
|
commonPopWindowopenForm(
|
||||||
|
"${pageContext.request.contextPath}/kccadr/oprtn/cpyrgExprnClsrm/cautionGuidePreView.do"
|
||||||
|
, 750
|
||||||
|
, 700
|
||||||
|
, "cautionGuidePreView"
|
||||||
|
, $("#popForm")
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@ -240,6 +246,8 @@
|
|||||||
<form id="popForm" name="popForm" method="post">
|
<form id="popForm" name="popForm" method="post">
|
||||||
<input type="hidden" name="callFunc" value="callFunc"/>
|
<input type="hidden" name="callFunc" value="callFunc"/>
|
||||||
<input type="hidden" name="targetId" value=""/>
|
<input type="hidden" name="targetId" value=""/>
|
||||||
|
<input type="hidden" name="strtPnttm" value="${info.strtPnttm}"/>
|
||||||
|
<input type="hidden" name="endPnttm" value="${info.endPnttm}"/>
|
||||||
</form>
|
</form>
|
||||||
<form:form id="createForm" name="createForm" commandName="vEPrcsDetailVO" method="post">
|
<form:form id="createForm" name="createForm" commandName="vEPrcsDetailVO" method="post">
|
||||||
<!-- cont -->
|
<!-- cont -->
|
||||||
@ -331,7 +339,7 @@
|
|||||||
</c:import>
|
</c:import>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<%-- <tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
<p>안내내용</p>
|
<p>안내내용</p>
|
||||||
</th>
|
</th>
|
||||||
@ -347,7 +355,7 @@
|
|||||||
<td>
|
<td>
|
||||||
<c:out value='${info.popupCn}'/>
|
<c:out value='${info.popupCn}'/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr> --%>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
<p>사용여부</p>
|
<p>사용여부</p>
|
||||||
|
|||||||
@ -289,7 +289,10 @@
|
|||||||
<!-- <button class="btnType02" onclick="fncCreate(); return false;" >삭제</button> -->
|
<!-- <button class="btnType02" onclick="fncCreate(); return false;" >삭제</button> -->
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
${list.strtPnttm}~${list.endPnttm}
|
<fmt:parseDate value='${list.strtPnttm}' var='strtPnttmDe' pattern="yyyyMMddHHmm" scope="page" />
|
||||||
|
<fmt:parseDate value='${list.endPnttm}' var='endPnttmDe' pattern="yyyyMMddHHmm" scope="page" />
|
||||||
|
<fmt:formatDate value="${strtPnttmDe}" pattern="yyyy-MM-dd"/> ~
|
||||||
|
<fmt:formatDate value="${endPnttmDe}" pattern="yyyy-MM-dd"/>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:out value='${list.atchFileNm}'/>
|
<c:out value='${list.atchFileNm}'/>
|
||||||
@ -313,7 +316,7 @@
|
|||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
<button class="btn_type06" onclick="fncCreate(); return false;" >등록</button>
|
<button class="btn_type06" onclick="fncCreate(); return false;" >등록</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- page -->
|
<!-- page -->
|
||||||
<div class="page">
|
<div class="page">
|
||||||
|
|||||||
@ -153,14 +153,14 @@
|
|||||||
alert("종료일을 입력해주세요.");
|
alert("종료일을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if($("#anncmCn").val() == ""){
|
/* if($("#anncmCn").val() == ""){
|
||||||
alert("안내내용을 입력해주세요.");
|
alert("안내내용을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if($("#popupCn").val() == ""){
|
if($("#popupCn").val() == ""){
|
||||||
alert("팝업내용을 입력해주세요.");
|
alert("팝업내용을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
} */
|
||||||
|
|
||||||
//첨부파일 등록 처리
|
//첨부파일 등록 처리
|
||||||
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
||||||
@ -465,24 +465,6 @@
|
|||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
-->
|
-->
|
||||||
<tr>
|
|
||||||
<th scope="row">
|
|
||||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
|
||||||
<p>안내내용</p>
|
|
||||||
</th>
|
|
||||||
<td>
|
|
||||||
<textarea name="anncmCn" id="anncmCn" cols="30" rows="3"></textarea>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th scope="row">
|
|
||||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
|
||||||
<p>팝업내용</p>
|
|
||||||
</th>
|
|
||||||
<td>
|
|
||||||
<textarea name="popupCn" id="popupCn" cols="30" rows="3"></textarea>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||||
|
|||||||
@ -126,14 +126,14 @@
|
|||||||
alert("종료일을 입력해주세요.");
|
alert("종료일을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if($("#anncmCn").val() == ""){
|
/* if($("#anncmCn").val() == ""){
|
||||||
alert("안내내용을 입력해주세요.");
|
alert("안내내용을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if($("#popupCn").val() == ""){
|
if($("#popupCn").val() == ""){
|
||||||
alert("팝업내용을 입력해주세요.");
|
alert("팝업내용을 입력해주세요.");
|
||||||
return false;
|
return false;
|
||||||
}
|
} */
|
||||||
|
|
||||||
//첨부파일 등록 처리
|
//첨부파일 등록 처리
|
||||||
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
$('#file_temp').val(""); //첨부파일 중복 등록 방지를 위해 추가
|
||||||
@ -426,7 +426,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<%-- <tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||||
<p>안내내용</p>
|
<p>안내내용</p>
|
||||||
@ -444,7 +444,7 @@
|
|||||||
<td>
|
<td>
|
||||||
<textarea id="popupCn" name="popupCn" class="purpose_text" rows="5" cols="30"><c:out value='${info.popupCn}'/></textarea>
|
<textarea id="popupCn" name="popupCn" class="purpose_text" rows="5" cols="30"><c:out value='${info.popupCn}'/></textarea>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr> --%>
|
||||||
<tr>
|
<tr>
|
||||||
<th scope="row">
|
<th scope="row">
|
||||||
<p class="req_text"><span>필수입력 항목</span>*</p>
|
<p class="req_text"><span>필수입력 항목</span>*</p>
|
||||||
|
|||||||
@ -162,6 +162,7 @@
|
|||||||
<c:when test="${not empty info.sbmtPnttm}">
|
<c:when test="${not empty info.sbmtPnttm}">
|
||||||
<fmt:parseDate value="${info.sbmtPnttm}" var="sbmtPnttm" pattern="yy-MM-dd"/>
|
<fmt:parseDate value="${info.sbmtPnttm}" var="sbmtPnttm" pattern="yy-MM-dd"/>
|
||||||
<fmt:formatDate value="${sbmtPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${sbmtPnttm}" pattern="20yy.MM.dd"/>
|
||||||
|
<%-- <c:out value="${info.sbmtPnttm}" /> --%>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -174,8 +175,9 @@
|
|||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty info.endPnttm}">
|
<c:when test="${not empty info.endPnttm}">
|
||||||
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<%-- <fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/> --%>
|
||||||
|
<c:out value="${info.endPnttm}" />
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -413,15 +415,17 @@
|
|||||||
<button type="button" class="btn_type01" onclick="fncRejectPopup(); return false;">수정요청</button>
|
<button type="button" class="btn_type01" onclick="fncRejectPopup(); return false;">수정요청</button>
|
||||||
</c:if>
|
</c:if>
|
||||||
<!-- 운영신청, 수정요청완료 상태에서만 선정여부 설정 가능(선정여부는 교육확정 프로세스에 영향을 끼치지 않음 - 관리자 구분 용도)-->
|
<!-- 운영신청, 수정요청완료 상태에서만 선정여부 설정 가능(선정여부는 교육확정 프로세스에 영향을 끼치지 않음 - 관리자 구분 용도)-->
|
||||||
<c:if test="${info.aprvlCd eq '10' || info.aprvlCd eq '80'}">
|
<%-- <c:if test="${info.aprvlCd eq '10' || info.aprvlCd eq '80'}">
|
||||||
<button type="button" class="btn_type04" onclick="fncChsChange('Y'); return false;">선정</button>
|
<button type="button" class="btn_type04" onclick="fncChsChange('Y'); return false;">선정</button>
|
||||||
<button type="button" class="btn_type05" onclick="fncChsChange('N'); return false;">미선정</button>
|
<button type="button" class="btn_type05" onclick="fncChsChange('N'); return false;">미선정</button>
|
||||||
</c:if>
|
</c:if> --%>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
<c:if test="${info.aprvlCd ne '60' && info.aprvlCd ne '90'}">
|
<c:if test="${info.aprvlCd ne '60' && info.aprvlCd ne '90'}">
|
||||||
<button type="button" class="btn_type01" onclick="fncStatusChange('60'); return false;">교육확정</button>
|
<!-- <button type="button" class="btn_type01" onclick="fncStatusChange('60'); return false;">교육확정</button>
|
||||||
<button type="button" class="btn_type02" onclick="fncStatusChange('90'); return false;">교육미확정</button>
|
<button type="button" class="btn_type02" onclick="fncStatusChange('90'); return false;">교육미확정</button> -->
|
||||||
|
<button type="button" class="btn_type01" onclick="fncStatusChange('60'); return false;">선정처리</button>
|
||||||
|
<button type="button" class="btn_type02" onclick="fncStatusChange('90'); return false;">선정취소</button>
|
||||||
</c:if>
|
</c:if>
|
||||||
<!-- 교육 확정인 경우 관리자만 수정 가능 하도록 -->
|
<!-- 교육 확정인 경우 관리자만 수정 가능 하도록 -->
|
||||||
<c:if test="${info.aprvlCd eq '60'}">
|
<c:if test="${info.aprvlCd eq '60'}">
|
||||||
|
|||||||
@ -1,128 +1,207 @@
|
|||||||
<!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"
|
||||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
pageEncoding="utf-8"%>
|
||||||
|
<%@ 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="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
<%@ taglib prefix="ve" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||||
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
<%@ taglib prefix="un"
|
||||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
|
uri="http://jakarta.apache.org/taglibs/unstandard-1.0"%>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||||
|
|
||||||
<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">c
|
||||||
<style>
|
<style>
|
||||||
input:read-only{
|
input:read-only {
|
||||||
background-color: #ededed;
|
background-color: #ededed;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(document).ready(function(){
|
$(document).ready(function() {
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function press(event) {
|
|
||||||
if (event.keyCode==13) {
|
|
||||||
fncGoList();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function linkPage(pageNo){
|
function press(event) {
|
||||||
var listForm = document.listForm ;
|
if (event.keyCode == 13) {
|
||||||
listForm.pageIndex.value = pageNo ;
|
fncGoList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function linkPage(pageNo) {
|
||||||
|
var listForm = document.listForm;
|
||||||
|
listForm.pageIndex.value = pageNo;
|
||||||
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngList.do'/>";
|
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngList.do'/>";
|
||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
function fncGoList(){
|
function fncGoList() {
|
||||||
linkPage(1);
|
linkPage(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
function fncGoDetail(eduAplctOrd){
|
function fncGoDetail(eduAplctOrd) {
|
||||||
var listForm = document.listForm ;
|
var listForm = document.listForm;
|
||||||
listForm.eduAplctOrd.value = eduAplctOrd ;
|
listForm.eduAplctOrd.value = eduAplctOrd;
|
||||||
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do'/>";
|
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctMngDetail.do'/>";
|
||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
function excelDownLoad(){
|
function excelDownLoad() {
|
||||||
var listForm = document.listForm ;
|
var listForm = document.listForm;
|
||||||
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctExcelDownLoad.do'/>";
|
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctExcelDownLoad.do'/>";
|
||||||
listForm.submit();
|
listForm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
function fncReset(thisObj){
|
function fncReset(thisObj) {
|
||||||
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
var targetObj = $(thisObj).closest('.list_top').find('select,input');
|
||||||
$.each(targetObj, function(){
|
$.each(targetObj, function() {
|
||||||
if($(this).prop('tagName') == 'SELECT'){
|
if ($(this).prop('tagName') == 'SELECT') {
|
||||||
if($(this).attr('name').indexOf('Month') != -1){
|
if ($(this).attr('name').indexOf('Month') != -1) {
|
||||||
$(this).val(new Date().getMonth()+1);
|
$(this).val(new Date().getMonth() + 1);
|
||||||
}else if($(this).attr('name').indexOf('Year') != -1){
|
} else if ($(this).attr('name').indexOf('Year') != -1) {
|
||||||
$(this).val(new Date().getFullYear());
|
$(this).val(new Date().getFullYear());
|
||||||
}else{
|
} else {
|
||||||
$(this).prop("selectedIndex", 0);
|
$(this).prop("selectedIndex", 0);
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
if($(this).attr('type') == 'checkbox'){
|
if ($(this).attr('type') == 'checkbox') {
|
||||||
$(this).prop('checked' , false);
|
$(this).prop('checked', false);
|
||||||
}else{
|
} else {
|
||||||
$(this).val('');
|
$(this).val('');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
function fnCheckAll(){
|
||||||
|
var chk = document.listForm.chk;
|
||||||
|
if(document.listForm.checkAll.checked) {
|
||||||
|
if(chk) {
|
||||||
|
if(chk.length > 1) {
|
||||||
|
for(var i=0; i < chk.length; i++) {
|
||||||
|
chk[i].checked = true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
chk.checked = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(chk) {
|
||||||
|
if(chk.length > 1) {
|
||||||
|
for(var j=0; j < chk.length; j++) {
|
||||||
|
chk[j].checked = false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
chk.checked = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function fncStatusChangeAll(){
|
||||||
|
var chkLen = $(listForm).find("input[name=chk]:checked").length;
|
||||||
|
var aprvlCdSelected = $('#aprvlCdSelect option:selected').val();
|
||||||
|
|
||||||
|
if(chkLen ==0){
|
||||||
|
alert("선택된 항목이 없습니다.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(aprvlCdSelected == ''){
|
||||||
|
alert("상태를 선택해주세요.")
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#aprvlCd").val(aprvlCdSelected);
|
||||||
|
var data = new FormData(document.getElementById("listForm"));
|
||||||
|
if(confirm("상태를 일괄변경 하시겠습니까?")){
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type:"POST",
|
||||||
|
url:"${pageContext.request.contextPath}/kccadr/oprtn/comm/eduAplctStatusListAjax.do",
|
||||||
|
data: data,
|
||||||
|
dataType:'json',
|
||||||
|
async: false,
|
||||||
|
processData: false,
|
||||||
|
contentType: false,
|
||||||
|
cache: false,
|
||||||
|
success:function(returnData){
|
||||||
|
if(returnData.rsCnt > 0){
|
||||||
|
alert("상태가 변경 되었습니다.");
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error:function(request , status, 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" commandName="vEEduAplctVO" method="post" onsubmit="return false;">
|
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO"
|
||||||
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
method="post" onsubmit="return false;">
|
||||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
<input type="hidden" name="pageIndex"
|
||||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />" />
|
||||||
<input type="hidden" name="eduAplctOrd" value="" />
|
<input type="hidden" name="searchSortCnd"
|
||||||
<input type="hidden" name="aprvlCd" value="" />
|
value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
||||||
<div class="cont_wrap">
|
<input type="hidden" name="searchSortOrd"
|
||||||
<div class="box">
|
value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||||
<!-- cont_tit -->
|
<input type="hidden" name="eduAplctOrd" value="" />
|
||||||
<div class="cont_tit">
|
<input type="hidden" name="aprvlCd" id="aprvlCd" value="" />
|
||||||
<h2>운영신청 목록</h2>
|
<div class="cont_wrap">
|
||||||
<ul class="cont_nav">
|
<div class="box">
|
||||||
<li class="home"><a href="/"><i></i></a></li>
|
<!-- cont_tit -->
|
||||||
<li>
|
<div class="cont_tit">
|
||||||
<p>저작권 체험교실</p>
|
<h2>운영신청 목록</h2>
|
||||||
</li>
|
<ul class="cont_nav">
|
||||||
<li>
|
<li class="home"><a href="/"><i></i></a></li>
|
||||||
<p>운영신청 관리</p>
|
<li>
|
||||||
</li>
|
<p>저작권 체험교실</p>
|
||||||
<li><span class="cur_nav">운영신청 관리</span></li>
|
</li>
|
||||||
</ul>
|
<li>
|
||||||
</div>
|
<p>운영신청 관리</p>
|
||||||
<!-- //cont_tit -->
|
</li>
|
||||||
|
<li><span class="cur_nav">운영신청 관리</span></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<!-- //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">
|
<div class="list_top">
|
||||||
<div class="list_top_1">
|
<div class="list_top_1">
|
||||||
<div class="util_left">
|
<div class="util_left">
|
||||||
<p>구분</p>
|
<p>구분</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="util_right">
|
<div class="util_right">
|
||||||
<select name="searchYear" id="sdfsdf" class="sel_type1 yearSelect" selectValue="${vEEduAplctVO.searchYear}" defaultText='전체'></select>
|
<select name="searchYear" id="sdfsdf"
|
||||||
<ve:select codeId="VE0008" name="eduSlctAreaCd" id="eduSlctAreaCd" styleClass="sel_type1" selectedValue="${vEEduAplctVO.eduSlctAreaCd}" defaultText='전체'/>
|
class="sel_type1 yearSelect"
|
||||||
<select name="searchCondition" id="searchCondition" class="sel_type1">
|
selectValue="${vEEduAplctVO.searchYear}" defaultText='전체'></select>
|
||||||
<option value="1" ${vEEduAplctVO.searchCondition eq '1' ? 'selected' : '' }>학교명</option>
|
<ve:select codeId="VE0008" name="eduSlctAreaCd"
|
||||||
<option value="2" ${vEEduAplctVO.searchCondition eq '2' ? 'selected' : '' }>담당자</option>
|
id="eduSlctAreaCd" styleClass="sel_type1"
|
||||||
</select>
|
selectedValue="${vEEduAplctVO.eduSlctAreaCd}" defaultText='전체' />
|
||||||
<input type="text" placeholder="검색어를 입력하세요." title="검색어 입력" class="search_input" id="searchKeyword" name="searchKeyword" value="${cryptoUtil.decrypt(vEEduAplctVO.searchKeyword)}" onkeyDown="press(event);">
|
<select name="searchCondition" id="searchCondition"
|
||||||
<button type="button" class="btn_type08" onclick="fncGoList(); return false;">검색</button>
|
class="sel_type1">
|
||||||
<button class="btn_type03" onclick="fncReset(this); return false;">초기화</button>
|
<option value="1"
|
||||||
|
${vEEduAplctVO.searchCondition eq '1' ? 'selected' : '' }>학교명</option>
|
||||||
|
<option value="2"
|
||||||
|
${vEEduAplctVO.searchCondition eq '2' ? 'selected' : '' }>담당자</option>
|
||||||
|
</select> <input type="text" placeholder="검색어를 입력하세요." title="검색어 입력"
|
||||||
|
class="search_input" id="searchKeyword" name="searchKeyword"
|
||||||
|
value="${cryptoUtil.decrypt(vEEduAplctVO.searchKeyword)}"
|
||||||
|
onkeyDown="press(event);">
|
||||||
|
<button type="button" class="btn_type08"
|
||||||
|
onclick="fncGoList(); return false;">검색</button>
|
||||||
|
<button class="btn_type03"
|
||||||
|
onclick="fncReset(this); return false;">초기화</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="list_top_2">
|
<div class="list_top_2">
|
||||||
@ -131,16 +210,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="util_right">
|
<div class="util_right">
|
||||||
<div class="check_wrap">
|
<div class="check_wrap">
|
||||||
<c:set var="searchStatus" value="${fn:join(vEEduAplctVO.searchScholDivCdArr, ',') }"/>
|
<c:set var="searchStatus"
|
||||||
<span><input type="checkbox" ${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_10) ne -1 ? 'checked' : ''}
|
value="${fn:join(vEEduAplctVO.searchScholDivCdArr, ',') }" />
|
||||||
value="${VeConstants.SCHOL_DIV_CD_10}" name="searchScholDivCdArr" id="searchSatus2">초등학교
|
<span><input type="checkbox"
|
||||||
</span>
|
${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_10) ne -1 ? 'checked' : ''}
|
||||||
<span><input type="checkbox" ${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_20) ne -1 ? 'checked' : ''}
|
value="${VeConstants.SCHOL_DIV_CD_10}"
|
||||||
value="${VeConstants.SCHOL_DIV_CD_20}" name="searchScholDivCdArr" id="searchSatus3">중학교
|
name="searchScholDivCdArr" id="searchSatus2">초등학교 </span> <span><input
|
||||||
</span>
|
type="checkbox"
|
||||||
<span><input type="checkbox" ${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_30) ne -1 ? 'checked' : ''}
|
${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_20) ne -1 ? 'checked' : ''}
|
||||||
value="${VeConstants.SCHOL_DIV_CD_30}" name="searchScholDivCdArr" id="searchSatus4">고등학교
|
value="${VeConstants.SCHOL_DIV_CD_20}"
|
||||||
</span>
|
name="searchScholDivCdArr" id="searchSatus3">중학교 </span> <span><input
|
||||||
|
type="checkbox"
|
||||||
|
${fn:indexOf(searchStatus, VeConstants.SCHOL_DIV_CD_30) ne -1 ? 'checked' : ''}
|
||||||
|
value="${VeConstants.SCHOL_DIV_CD_30}"
|
||||||
|
name="searchScholDivCdArr" id="searchSatus4">고등학교 </span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -151,140 +234,185 @@
|
|||||||
<div class="util_right">
|
<div class="util_right">
|
||||||
<select name="searchCpyAprvlCd" class="sel_type1">
|
<select name="searchCpyAprvlCd" class="sel_type1">
|
||||||
<option value="">전체</option>
|
<option value="">전체</option>
|
||||||
<option value="10" <c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '10'}">selected</c:if>>운영신청</option>
|
<option value="10"
|
||||||
<option value="70" <c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '70'}">selected</c:if>>수정요청</option>
|
<c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '10'}">selected</c:if>>운영신청</option>
|
||||||
<option value="80" <c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '80'}">selected</c:if>>수정요청완료</option>
|
<option value="70"
|
||||||
<option value="60" <c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '60'}">selected</c:if>>교육확정</option>
|
<c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '70'}">selected</c:if>>수정요청</option>
|
||||||
<option value="90" <c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '90'}">selected</c:if>>교육미확정</option>
|
<option value="80"
|
||||||
|
<c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '80'}">selected</c:if>>수정완료</option>
|
||||||
|
<option value="60"
|
||||||
|
<c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '60'}">selected</c:if>>운영확정</option>
|
||||||
|
<option value="90"
|
||||||
|
<c:if test="${vEEduAplctVO.searchCpyAprvlCd eq '90'}">selected</c:if>>운영미확정</option>
|
||||||
</select>
|
</select>
|
||||||
<p style="padding:0 20px 0 30px; font-weight:500; font-size:18px;">선정여부</p>
|
<%-- <p
|
||||||
|
style="padding: 0 20px 0 30px; font-weight: 500; font-size: 18px;">선정여부</p>
|
||||||
<div class="check_wrap">
|
<div class="check_wrap">
|
||||||
<select name="searchChsYn" class="sel_type1">
|
<select name="searchChsYn" class="sel_type1">
|
||||||
<option value="">전체</option>
|
<option value="">전체</option>
|
||||||
<option value="Y" <c:if test="${vEEduAplctVO.searchChsYn eq 'Y'}">selected</c:if>>선정</option>
|
<option value="Y"
|
||||||
<option value="N" <c:if test="${vEEduAplctVO.searchChsYn eq 'N'}">selected</c:if>>미선정</option>
|
<c:if test="${vEEduAplctVO.searchChsYn eq 'Y'}">selected</c:if>>선정</option>
|
||||||
|
<option value="N"
|
||||||
|
<c:if test="${vEEduAplctVO.searchChsYn eq 'N'}">selected</c:if>>미선정</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div> --%>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- list_top -->
|
<!-- list_top -->
|
||||||
<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">
|
||||||
<div>
|
<span><c:out value="${paginationInfo.totalRecordCount}" /></span>건의
|
||||||
<select class="sel_type1" name="pageUnit" id="pageUnit" onchange="linkPage(1);" title="줄 선택" style="width: 140px" class="sel_type1">
|
접수가 검색되었습니다.
|
||||||
<option value='10' <c:if test="${vEEduAplctVO.pageUnit == '10' or vEEduAplctVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
</p>
|
||||||
<option value='20' <c:if test="${vEEduAplctVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
<div>
|
||||||
<option value='30' <c:if test="${vEEduAplctVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
<select class="sel_type1" name="pageUnit" id="pageUnit"
|
||||||
<option value='100' <c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
onchange="linkPage(1);" title="줄 선택" style="width: 140px"
|
||||||
</select>
|
class="sel_type1">
|
||||||
<button type="button" class="btn_down_excel" onclick="excelDownLoad();">엑셀 다운로드</button>
|
<option value='10'
|
||||||
|
<c:if test="${vEEduAplctVO.pageUnit == '10' or vEEduAplctVO.pageUnit == ''}">selected</c:if>>10줄</option>
|
||||||
|
<option value='20'
|
||||||
|
<c:if test="${vEEduAplctVO.pageUnit == '20'}">selected</c:if>>20줄</option>
|
||||||
|
<option value='30'
|
||||||
|
<c:if test="${vEEduAplctVO.pageUnit == '30'}">selected</c:if>>30줄</option>
|
||||||
|
<option value='100'
|
||||||
|
<c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option>
|
||||||
|
</select>
|
||||||
|
<button type="button"
|
||||||
|
onclick="excelDownLoad();">첨부파일 다운로드</button>
|
||||||
|
<button type="button" class="btn_down_excel"
|
||||||
|
onclick="excelDownLoad();">엑셀 다운로드</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: 12%">
|
<col style="width: 5%">
|
||||||
<col style="width: 18%">
|
<col style="width: 5%">
|
||||||
<col style="width: 24%">
|
<col style="width: 12%">
|
||||||
<col style="width: auto;">
|
<col style="width: auto;">
|
||||||
<col style="width: 16%">
|
<col style="width: 10%">
|
||||||
<col style="width: 10%">
|
<col style="width: 10%">
|
||||||
<col style="width: 13%">
|
<col style="width: 10%">
|
||||||
</colgroup>
|
<col style="width: 13%">
|
||||||
<thead>
|
</colgroup>
|
||||||
<tr>
|
<thead>
|
||||||
<th>번호</th>
|
<tr>
|
||||||
<th>담당교과</th>
|
<th><input type="checkbox" name="checkAll" id="checkAll" onclick="fnCheckAll();" /><label for="checkAll"></label></th>
|
||||||
<th>학교명</th>
|
<th>번호</th>
|
||||||
<th>담당자</th>
|
<th>담당교과</th>
|
||||||
<th>신청일자</th>
|
<th>학교명</th>
|
||||||
<th>선정여부</th>
|
<th>담당자</th>
|
||||||
<th>처리상태</th>
|
<th>신청일자</th>
|
||||||
</tr>
|
<!-- <th>선정여부</th> -->
|
||||||
</thead>
|
<th>처리상태</th>
|
||||||
<tbody>
|
<th>비고</th>
|
||||||
<c:forEach var="list" items="${list}" varStatus="status">
|
</tr>
|
||||||
<c:choose>
|
</thead>
|
||||||
<c:when test="${list.notiCnt == 0}">
|
<tbody>
|
||||||
<tr class="new_cont">
|
<c:forEach var="list" items="${list}" varStatus="status">
|
||||||
</c:when>
|
|
||||||
<c:otherwise>
|
|
||||||
<tr>
|
|
||||||
</c:otherwise>
|
|
||||||
</c:choose>
|
|
||||||
<td>
|
|
||||||
<c:out value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }"/>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<c:out value="${list.chrgMjr}"/>
|
|
||||||
<%--<ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/>--%>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" title="<c:out value='${list.eduAplctOrd}'/>">
|
|
||||||
<c:out value="${list.scholInsttNm}"/>
|
|
||||||
</a>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" title="<c:out value='${list.eduAplctOrd}'/>">
|
|
||||||
<c:out value="${list.chrgNm}"/>
|
|
||||||
</a>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<c:out value="${list.sbmtPnttm}"/>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<c:if test="${list.mdfyRqstYn eq null}">-</c:if>
|
|
||||||
<c:if test="${list.mdfyRqstYn eq 'Y'}">선정</c:if>
|
|
||||||
<c:if test="${list.mdfyRqstYn eq 'N'}">미선정</c:if>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_10}">
|
<c:when test="${list.notiCnt == 0}">
|
||||||
<span class="app_status1">운영신청</span>
|
<tr class="new_cont">
|
||||||
</c:when>
|
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_70}">
|
|
||||||
<span class="app_status2">수정요청</span>
|
|
||||||
</c:when>
|
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_80}">
|
|
||||||
<span class="app_status4">수정요청완료</span>
|
|
||||||
</c:when>
|
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_60}">
|
|
||||||
<span class="app_status4">교육확정</span>
|
|
||||||
</c:when>
|
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_90}">
|
|
||||||
<span class="app_status4">교육미확정</span>
|
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
<tr>
|
||||||
</c:otherwise>
|
</c:otherwise>
|
||||||
</c:choose>
|
</c:choose>
|
||||||
</td>
|
<td>
|
||||||
</tr>
|
<input name="chk" id="<c:out value="${list.eduAplctOrd}"/>" type="checkbox" value="<c:out value="${list.eduAplctOrd}"/>"/> <label for="<c:out value="${list.eduAplctOrd}"/>"></label>
|
||||||
</c:forEach>
|
</td>
|
||||||
<c:if test="${empty list}">
|
<td><c:out
|
||||||
<tr><td colspan="7"><spring:message code="common.nodata.msg" /></td></tr>
|
value="${ ( paginationInfo.totalRecordCount - ((paginationInfo.currentPageNo -1)*paginationInfo.recordCountPerPage) ) - status.index }" />
|
||||||
</c:if>
|
</td>
|
||||||
</tbody>
|
<td><c:out value="${list.chrgMjr}" /> <%--<ve:code codeId="VE0008" code="${list.eduSlctAreaCd}"/>--%>
|
||||||
</table>
|
</td>
|
||||||
|
<td><a
|
||||||
|
href="javascript:fncGoDetail('${list.eduAplctOrd}');"
|
||||||
|
title="<c:out value='${list.eduAplctOrd}'/>"> <c:out
|
||||||
|
value="${list.scholInsttNm}" />
|
||||||
|
</a></td>
|
||||||
|
<td><a
|
||||||
|
href="javascript:fncGoDetail('${list.eduAplctOrd}');"
|
||||||
|
title="<c:out value='${list.eduAplctOrd}'/>"> <c:out
|
||||||
|
value="${list.chrgNm}" />
|
||||||
|
</a></td>
|
||||||
|
<td><c:out value="${list.sbmtPnttm}" /></td>
|
||||||
|
<%-- <td><c:if test="${list.mdfyRqstYn eq null}">-</c:if> <c:if
|
||||||
|
test="${list.mdfyRqstYn eq 'Y'}">선정</c:if> <c:if
|
||||||
|
test="${list.mdfyRqstYn eq 'N'}">미선정</c:if></td> --%>
|
||||||
|
<td><c:choose>
|
||||||
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_10}">
|
||||||
|
<span class="app_status1">운영신청</span>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_70}">
|
||||||
|
<span class="app_status2">수정요청</span>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_80}">
|
||||||
|
<span class="app_status4">수정완료</span>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_60}">
|
||||||
|
<span class="app_status4">운영확정</span>
|
||||||
|
</c:when>
|
||||||
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_90}">
|
||||||
|
<span class="app_status4">운영미확정</span>
|
||||||
|
</c:when>
|
||||||
|
<c:otherwise>
|
||||||
|
-
|
||||||
|
</c:otherwise>
|
||||||
|
</c:choose></td>
|
||||||
|
<td>
|
||||||
|
<c:if test="${list.unfthYn eq 'Y'}">
|
||||||
|
불성실
|
||||||
|
</c:if>
|
||||||
|
<c:if test="${list.unfthYn eq 'N'}">
|
||||||
|
성실
|
||||||
|
</c:if>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
<c:if test="${empty list}">
|
||||||
|
<tr>
|
||||||
|
<td colspan="8"><spring:message code="common.nodata.msg" /></td>
|
||||||
|
</tr>
|
||||||
|
</c:if>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<!-- //list -->
|
||||||
|
<div class="btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
<select name="aprvlCdSelect" id="aprvlCdSelect"class="sel_type1">
|
||||||
|
<option value="">선택</option>
|
||||||
|
<option value="10">운영신청</option>
|
||||||
|
<!-- <option value="70">수정요청</option> -->
|
||||||
|
<option value="80">수정완료</option>
|
||||||
|
<option value="60">운영확정</option>
|
||||||
|
<option value="90">운영미확정</option>
|
||||||
|
</select>
|
||||||
|
<button class="btn_type06" onclick="fncStatusChangeAll(); return false;" >일괄변경</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- page -->
|
||||||
|
<div class="page">
|
||||||
|
<ui:pagination paginationInfo="${paginationInfo}" type="image"
|
||||||
|
jsFunction="linkPage" />
|
||||||
|
</div>
|
||||||
|
<!-- //page -->
|
||||||
</div>
|
</div>
|
||||||
<!-- //list -->
|
|
||||||
|
|
||||||
<!-- page -->
|
|
||||||
<div class="page">
|
|
||||||
<ui:pagination paginationInfo = "${paginationInfo}" type="image" jsFunction="linkPage" />
|
|
||||||
</div>
|
|
||||||
<!-- //page -->
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<!-- //cont -->
|
||||||
<!-- //cont -->
|
<!-- //cont -->
|
||||||
<!-- //cont -->
|
|
||||||
|
|
||||||
</form:form>
|
</form:form>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@ -0,0 +1,71 @@
|
|||||||
|
<%@ page contentType="text/html; charset=utf-8"%>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||||
|
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||||
|
<link rel="stylesheet" href="${pageContext.request.contextPath}/visitEdu/usr/publish/css/popup.css">
|
||||||
|
<style>.popup_wrap {display: block; width:750px !important;}</style>
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
$(document).ready(function(){
|
||||||
|
// 레이어팝업 포커싱 이동 수정
|
||||||
|
$(".tooltip-close").click(function(){
|
||||||
|
$('[data-tooltip="sub40_pop01"]').focus();
|
||||||
|
});
|
||||||
|
})
|
||||||
|
|
||||||
|
function fncGoList(){
|
||||||
|
linkPage(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
function linkPage(pageNo){
|
||||||
|
var data = {
|
||||||
|
pageIndex : pageNo,
|
||||||
|
searchKeyword : $("#searchKeyword").val(),
|
||||||
|
searchCondition : $("#searchCondition").val(),
|
||||||
|
pageUnit : 5,
|
||||||
|
formId : $("#formId").val(),
|
||||||
|
}
|
||||||
|
fncScholList(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
function goWrite(){
|
||||||
|
location.href= "${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctReg.do";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub40_pop01" data-focus="sub40_pop01" data-focus-prev="list_popup_close">
|
||||||
|
<div class="popup_tit">
|
||||||
|
<p>신청서 작성 안내</p>
|
||||||
|
</div>
|
||||||
|
<div class="popup_cont">
|
||||||
|
<div class="cont_body">
|
||||||
|
<div class="application_wrap">
|
||||||
|
<div class="info_box">
|
||||||
|
<dl>
|
||||||
|
<dt>알려드립니다</dt>
|
||||||
|
<dd><c:out value='${nowYear}'/>년도 저작권 체험교실 운영 신청은 <c:out value='${vEPrcsDetailVO.strtPnttm }'/> ~ <c:out value='${vEPrcsDetailVO.endPnttm}'/>,<br>9:00 ~ 18:00에 진행되오니 많은 관심 부탁드립니다. 감사합니다.</dd>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
<div class="title">· 신청서 접수 시 유의사항</div>
|
||||||
|
<div class="list">
|
||||||
|
<ol>
|
||||||
|
<li><span class="number"></span>저작권 체험교실 운영 신청만 가능합니다. 찾아가는 저작권 교육 신청은 불가능합니다.<span>- 찾아가는 저작권 교육 신청은 해당 사이트(www.copyright.or.kr/offedu)에서 이용하여</br>
|
||||||
|
  주시기 바랍니다.</span></li>
|
||||||
|
<li><span class="number"></span>신청 시 공문양식을 다운로드 받아서 반드시 학교장 직인된 공문을 첨부해야 합니다.</li>
|
||||||
|
<li><span class="number"></span>신청 시 반드시 본인 계정으로 신청해야 하며, 타인 계정으로 신청 시 신청 취소 처리됩니다.</li>
|
||||||
|
<li><span class="number"></span>체험교실 신규 운영 교사는 체험교실 운영 교사 연수(1일, 8시간)를 반드시 이수해야 하며, 체험교실 운영 기간내에 저작권 e-배움터에서 제공하는 온라인 강좌를 의무 이수해야 합니다.</li>
|
||||||
|
<li><span class="number"></span>신청기간 내 위원회 업무시간(09:00 ~ 18:00)동안 이용이 가능합니다.</li>
|
||||||
|
<!-- <li><span class="number">6.</span>신청기간 내 학교급별(초등, 중등, 고등) 게시판을 반드시 확인 후 신청해 주시기 바랍니다.</li> -->
|
||||||
|
<li><span class="number"></span>신청교사가 교내에서 확인 가능한 메일 계정을 기재해 주시기 바랍니다.</li>
|
||||||
|
<li><span class="number"></span>신청 중 문의사항은 위원회 체험교실 담당자에게 연락을 주시기 바랍니다(055-792-0234)</li>
|
||||||
|
<li><span class="number"></span>선정 후 취소(신규 운영 교사 사전 연수 불참 등) 및 운영 포기교실은 차년도 참여를 제한합니다.<br>(해당 내용 학교 공문 발송 예정)</li>
|
||||||
|
</ol>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@ -106,7 +106,8 @@
|
|||||||
document.body.innerHTML = initBody;
|
document.body.innerHTML = initBody;
|
||||||
}
|
}
|
||||||
|
|
||||||
function beforeSrvyPopupAjax(){
|
//설문조사 주석 임시로
|
||||||
|
function beforeSrvyPopupAjax(){
|
||||||
var sendData= $(document.listForm).serializeArray();
|
var sendData= $(document.listForm).serializeArray();
|
||||||
$("#beforeSrvyPopupLoad").load("${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/Popup/beforeSrvyPopup.do", sendData ,function(response, status, xhr){
|
$("#beforeSrvyPopupLoad").load("${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/Popup/beforeSrvyPopup.do", sendData ,function(response, status, xhr){
|
||||||
});
|
});
|
||||||
@ -283,9 +284,9 @@
|
|||||||
</th>
|
</th>
|
||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty info.endPnttm}">
|
<c:when test="${not empty info.prcsEndPnttm}">
|
||||||
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${info.prcsEndPnttm}" var="prcsEndPnttm" pattern="yyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
<fmt:formatDate value="${prcsEndPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
|
|||||||
@ -113,8 +113,8 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
|
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
|
||||||
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${list.prcsEndPnttm}" var="prcsEndPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${prcsEndPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@ -185,8 +185,8 @@
|
|||||||
<li>
|
<li>
|
||||||
<span>접수종료일</span>
|
<span>접수종료일</span>
|
||||||
<span>
|
<span>
|
||||||
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${list.prcsEndPnttm}" var="prcsEndPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${prcsEndPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -1,540 +0,0 @@
|
|||||||
<%@ page contentType="text/html; charset=utf-8"%>
|
|
||||||
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
||||||
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
|
||||||
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
|
||||||
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
|
||||||
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
|
||||||
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
|
||||||
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
|
||||||
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
|
||||||
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
|
||||||
<% pageContext.setAttribute("replaceChar", "\n"); %>
|
|
||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
|
||||||
<spring:eval expression="@property['Globals.Innorix.License']" var="license"/>
|
|
||||||
<script>
|
|
||||||
/* js에 전달용 */
|
|
||||||
var contextPath = '${pageContext.request.contextPath}';
|
|
||||||
var eduAplctOrd = "<c:out value='${info.eduAplctOrd}'/>";
|
|
||||||
</script>
|
|
||||||
<script src="<c:url value='/innorix/innorix_${license}.js' />"></script>
|
|
||||||
<script src="<c:url value='/js/kccadr/innorixCommon.js' />"></script>
|
|
||||||
<link rel="stylesheet" href="<c:url value='/innorix/innorix.css'/>" type="text/css">
|
|
||||||
|
|
||||||
<style>
|
|
||||||
input:disabled {
|
|
||||||
background-color: #f9f9f9 !important;
|
|
||||||
}
|
|
||||||
input:read-only {
|
|
||||||
background-color: #f9f9f9 !important;
|
|
||||||
}
|
|
||||||
#orgn{margin: 8px 0 0 0; border: 1px solid #d5d5d5; border-radius: 5px; height: 150px !important; background-color: #fafafa;}
|
|
||||||
.innorix_basic div.irx_filetree.empty-uploader{background: url(/offeduadvc/visitEdu/usr/publish/images/content/dropzone_file_before.png) no-repeat center; height: 150px !important;}
|
|
||||||
.irx_filetree,.innorix_basic div.irx_infoBox{height: 150px !important;}
|
|
||||||
#cpy{margin: 8px 0 0 0; border: 1px solid #d5d5d5; border-radius: 5px; height: 150px !important; background-color: #fafafa;}
|
|
||||||
#evdnc{margin: 8px 0 0 0; border: 1px solid #d5d5d5; border-radius: 5px; height: 150px !important; background-color: #fafafa;}
|
|
||||||
#evdnc div.irx_filetree.empty-uploader{background: url(/offeduadvc/visitEdu/usr/publish/images/content/dropzone_file_before_only_zip.png) no-repeat center; height: 150px !important;}
|
|
||||||
#rmttrn{margin: 8px 0 0 0; border: 1px solid #d5d5d5; border-radius: 5px; height: 150px !important; background-color: #fafafa;}
|
|
||||||
</style>
|
|
||||||
<script type="text/javaScript" language="javascript">
|
|
||||||
//대용량 업로드 솔루션
|
|
||||||
var control1 = new Object();
|
|
||||||
var control2 = new Object();
|
|
||||||
var control3 = new Object();
|
|
||||||
var control4 = new Object();
|
|
||||||
var control5 = new Object();
|
|
||||||
|
|
||||||
//첨부파일 변화 유무
|
|
||||||
var control1Chg = 'N';
|
|
||||||
var control2Chg = 'N';
|
|
||||||
var control3Chg = 'N';
|
|
||||||
var control4Chg = 'N';
|
|
||||||
|
|
||||||
//임시파일 유무 설정
|
|
||||||
var control1Tmprr = 'N';
|
|
||||||
var control2Tmprr = 'N';
|
|
||||||
var control3Tmprr = 'N';
|
|
||||||
var control4Tmprr = 'N';
|
|
||||||
|
|
||||||
//기존 임시저장 확인 여부 - tmprrYn이 == N 테이블 insert / tmprrYn == Y 테이블 update
|
|
||||||
var tmprrYn = 'N';
|
|
||||||
|
|
||||||
var control1Id = '${info.orgnlRsltAtchFileId}';
|
|
||||||
var control2Id = '${info.cpyRsltAtchFileId}';
|
|
||||||
var control3Id = '${info.evdncPhtAtchFileId}';
|
|
||||||
var control4Id = '${info.rmtTrnAtchFileId}';
|
|
||||||
|
|
||||||
|
|
||||||
if(control1Id != null && control1Id != ''){
|
|
||||||
control1Tmprr = 'Y';
|
|
||||||
tmprrYn = 'Y';
|
|
||||||
}
|
|
||||||
if(control2Id != null && control2Id != ''){
|
|
||||||
control2Tmprr = 'Y';
|
|
||||||
tmprrYn = 'Y';
|
|
||||||
}
|
|
||||||
if(control3Id != null && control3Id != ''){
|
|
||||||
control3Tmprr = 'Y';
|
|
||||||
tmprrYn = 'Y';
|
|
||||||
}
|
|
||||||
if(control4Id != null && control4Id != ''){
|
|
||||||
control4Tmprr = 'Y';
|
|
||||||
tmprrYn = 'Y';
|
|
||||||
}
|
|
||||||
|
|
||||||
//임시파일 다운로드 jsp 기본 경로
|
|
||||||
var urlBase = "<c:url value='/innorix/exam/'/>"
|
|
||||||
|
|
||||||
$(document).ready(function(){
|
|
||||||
|
|
||||||
//대용량 업로드 솔루션 innorix
|
|
||||||
//원본 결과 보고서 컨트롤 생성
|
|
||||||
control1 = innorix.create({
|
|
||||||
el : '#orgn', // 컨트롤 출력 객체 ID
|
|
||||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
|
||||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=orgn" />', // 업로드 URL
|
|
||||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
|
||||||
width : 870, // 컨트롤 출력 너비(pixel)
|
|
||||||
height : 80, // 컨트롤 출력 높이(pixel)
|
|
||||||
allowExtension : ["txt","xls","xlsx","png","jpg","jpeg","doc","ppt","hwp","pdf","zip"],
|
|
||||||
useContextMenu : 'false' //우클릭을 이용한 개별 업로드 방지
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 추가 이벤트
|
|
||||||
control1.on('afterAddFiles', function (p) {
|
|
||||||
$('.orgnl_totalfileSize').text(getStrFileSize(p[0].fileSize)) ;
|
|
||||||
$('.orgnl_totalfileCount').text(p.length);
|
|
||||||
control1Chg = 'Y';
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 삭제 이벤트
|
|
||||||
// 임시 저장이 아닌, 새로 afterAddFiles(업로드 전 파일추가) - control1Chg 'N'
|
|
||||||
// 임시 저장 파일 삭제 시 - control1Chg 'Y'
|
|
||||||
control1.on('removeFiles', function (p) {
|
|
||||||
$('.orgnl_totalfileSize').text('0MB') ;
|
|
||||||
$('.orgnl_totalfileCount').text('0');
|
|
||||||
control1Chg = 'N';
|
|
||||||
if(control1Tmprr == 'Y'){
|
|
||||||
if(confirm("삭제하시겠습니까?")){
|
|
||||||
innorixDelRprtAtchFile(p[0].uniqueFileName, 'orgnl_rslt_atch_file_id')
|
|
||||||
control1Tmprr = 'N';
|
|
||||||
control1Chg = 'Y';
|
|
||||||
$("#control1DownBtn").css('display', 'none');
|
|
||||||
}else{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//평가용 결과 보고서 컨트롤 생성
|
|
||||||
control2 = innorix.create({
|
|
||||||
el : '#cpy', // 컨트롤 출력 객체 ID
|
|
||||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
|
||||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=cpy" />', // 업로드 URL
|
|
||||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
|
||||||
width : 870, // 컨트롤 출력 너비(pixel)
|
|
||||||
height : 80, // 컨트롤 출력 높이(pixel)
|
|
||||||
allowExtension : ["txt","xls","xlsx","png","jpg","jpeg","doc","ppt","hwp","pdf","zip"],
|
|
||||||
useContextMenu : 'false'
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 추가 이벤트
|
|
||||||
control2.on('afterAddFiles', function (p) {
|
|
||||||
$('.cpy_totalfileSize').text(getStrFileSize(p[0].fileSize)) ;
|
|
||||||
$('.cpy_totalfileCount').text(p.length);
|
|
||||||
control2Chg = 'Y';
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 삭제 이벤트
|
|
||||||
control2.on('removeFiles', function (p) {
|
|
||||||
$('.cpy_totalfileSize').text('0MB') ;
|
|
||||||
$('.cpy_totalfileCount').text('0');
|
|
||||||
control2Chg = 'N';
|
|
||||||
if(control2Tmprr == 'Y'){
|
|
||||||
if(confirm("삭제하시겠습니까?")){
|
|
||||||
innorixDelRprtAtchFile(p[0].uniqueFileName, 'cpy_rslt_atch_file_id')
|
|
||||||
control2Tmprr = 'N';
|
|
||||||
control2Chg = 'Y';
|
|
||||||
$("#control2DownBtn").css('display', 'none');
|
|
||||||
}else{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//증빙사진 컨트롤 생성
|
|
||||||
control3 = innorix.create({
|
|
||||||
el : '#evdnc', // 컨트롤 출력 객체 ID
|
|
||||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
|
||||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=evdnc" />', // 업로드 URL
|
|
||||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
|
||||||
width : 870, // 컨트롤 출력 너비(pixel)
|
|
||||||
height : 80, // 컨트롤 출력 높이(pixel)
|
|
||||||
allowExtension : ["zip"],
|
|
||||||
useContextMenu : 'false'
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 추가 이벤트
|
|
||||||
control3.on('afterAddFiles', function (p) {
|
|
||||||
$('.evdnc_totalfileSize').text(getStrFileSize(p[0].fileSize)) ;
|
|
||||||
$('.evdnc_totalfileCount').text(p.length);
|
|
||||||
control3Chg = 'Y';
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 삭제 이벤트
|
|
||||||
control3.on('removeFiles', function (p) {
|
|
||||||
$('.evdnc_totalfileSize').text('0MB') ;
|
|
||||||
$('.evdnc_totalfileCount').text('0');
|
|
||||||
control3Chg = 'N';
|
|
||||||
if(control3Tmprr == 'Y'){
|
|
||||||
if(confirm("삭제하시겠습니까?")){
|
|
||||||
innorixDelRprtAtchFile(p[0].uniqueFileName, 'evdnc_pht_atch_file_id')
|
|
||||||
control3Tmprr = 'N';
|
|
||||||
control3Chg = 'Y';
|
|
||||||
$("#control3DownBtn").css('display', 'none');
|
|
||||||
}else{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//원격연수 이수증 컨트롤 생성
|
|
||||||
control4 = innorix.create({
|
|
||||||
el : '#rmttrn', // 컨트롤 출력 객체 ID
|
|
||||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
|
||||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp?el=rmttrn" />', // 업로드 URL
|
|
||||||
maxFileCount : 1, // 첨부가능 파일 전체 개수
|
|
||||||
width : 870, // 컨트롤 출력 너비(pixel)
|
|
||||||
height : 80, // 컨트롤 출력 높이(pixel)
|
|
||||||
allowExtension : ["txt","xls","xlsx","png","jpg","jpeg","doc","ppt","hwp","pdf","zip"],
|
|
||||||
useContextMenu : 'false'
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 추가 이벤트
|
|
||||||
control4.on('afterAddFiles', function (p) {
|
|
||||||
$('.rmtTrn_totalfileSize').text(getStrFileSize(p[0].fileSize)) ;
|
|
||||||
$('.rmtTrn_totalfileCount').text(p.length);
|
|
||||||
control4Chg = 'Y';
|
|
||||||
});
|
|
||||||
|
|
||||||
// 파일 삭제 이벤트
|
|
||||||
control4.on('removeFiles', function (p) {
|
|
||||||
$('.rmtTrn_totalfileSize').text('0MB') ;
|
|
||||||
$('.rmtTrn_totalfileCount').text('0');
|
|
||||||
control4Chg = 'N';
|
|
||||||
if(control4Tmprr == 'Y'){
|
|
||||||
if(confirm("삭제하시겠습니까?")){
|
|
||||||
innorixDelRprtAtchFile(p[0].uniqueFileName, 'rmt_trn_atch_file_id')
|
|
||||||
control4Tmprr = 'N';
|
|
||||||
control4Chg = 'Y';
|
|
||||||
$("#control4DownBtn").css('display', 'none');
|
|
||||||
}else{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
//멀티 컨트롤 생성 - hidden으로 화면 비노출, 제출 시 컨트롤 1~4를 add하여 업로드
|
|
||||||
control5 = innorix.create({
|
|
||||||
el : '#fileControl5', // 컨트롤 출력 객체 ID
|
|
||||||
installUrl: '<c:url value="/innorix/install/install.html" />', // Agent 설치 페이지
|
|
||||||
uploadUrl: '<c:url value="/innorix/exam/upload.jsp" />', // 업로드 URL
|
|
||||||
maxFileCount : 4, // 첨부가능 파일 전체 개수
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//임시저장 데이터가 있을 시 임시저장 파일 처리
|
|
||||||
if(control1Tmprr == 'Y'){
|
|
||||||
control1.presetDownloadFiles([{
|
|
||||||
printFileName: '${info.orgnlRsltAtchFileDetail.orignlFileNm}',
|
|
||||||
fileSize: '${info.orgnlRsltAtchFileDetail.fileSize}',
|
|
||||||
downloadUrl: urlBase + "download.jsp?fileName=" + '${info.orgnlRsltAtchFileDetail.streFileNm}',
|
|
||||||
uniqueFileName : '${info.orgnlRsltAtchFileDetail.atchFileId}'
|
|
||||||
}]);
|
|
||||||
control1Chg = 'N'; //임시저장 파일 세팅 시 'afterAddFiles' 이벤트에서 control1Chg = 'Y' 처리가 되어 다시 N으로 설정
|
|
||||||
}
|
|
||||||
if(control2Tmprr == 'Y'){
|
|
||||||
control2.presetDownloadFiles([{
|
|
||||||
printFileName: '${info.cpyRsltAtchFileDetail.orignlFileNm}',
|
|
||||||
fileSize: '${info.cpyRsltAtchFileDetail.fileSize}',
|
|
||||||
downloadUrl: urlBase + "download.jsp?fileName=" + '${info.cpyRsltAtchFileDetail.streFileNm}',
|
|
||||||
uniqueFileName : '${info.cpyRsltAtchFileDetail.atchFileId}'
|
|
||||||
}]);
|
|
||||||
control2Chg = 'N';
|
|
||||||
}
|
|
||||||
if(control3Tmprr == 'Y'){
|
|
||||||
control3.presetDownloadFiles([{
|
|
||||||
printFileName: '${info.evdncPhtAtchFileDetail.orignlFileNm}',
|
|
||||||
fileSize: '${info.evdncPhtAtchFileDetail.fileSize}',
|
|
||||||
downloadUrl: urlBase + "download.jsp?fileName=" + '${info.evdncPhtAtchFileDetail.streFileNm}',
|
|
||||||
uniqueFileName : '${info.evdncPhtAtchFileDetail.atchFileId}'
|
|
||||||
}]);
|
|
||||||
control3Chg = 'N';
|
|
||||||
}
|
|
||||||
if(control4Tmprr == 'Y'){
|
|
||||||
control4.presetDownloadFiles([{
|
|
||||||
printFileName: '${info.rmtTrnAtchFileDetail.orignlFileNm}',
|
|
||||||
fileSize: '${info.rmtTrnAtchFileDetail.fileSize}',
|
|
||||||
downloadUrl: urlBase + "download.jsp?fileName=" + '${info.rmtTrnAtchFileDetail.streFileNm}',
|
|
||||||
uniqueFileName : '${info.rmtTrnAtchFileDetail.atchFileId}'
|
|
||||||
}]);
|
|
||||||
control4Chg = 'N';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//첨부파일 업로드 후속조치 - 결과제출 시 처리
|
|
||||||
control5.on('uploadComplete', function (p) {
|
|
||||||
fn_callBackInnorixInsert(p.files);
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
function fn_callBackInnorixInsert(data){
|
|
||||||
var url = "<c:url value='/web/common/insertRprtInnorixFileAjax.do' />";
|
|
||||||
if(tmprrYn == 'Y'){ //임시 저장 데이터가 있을 시 테이블 update 처리
|
|
||||||
var url = "<c:url value='/web/common/updateRprtInnorixFileAjax.do' />";
|
|
||||||
}
|
|
||||||
|
|
||||||
var sendData = {
|
|
||||||
"eduAplctOrd": $('#eduAplctOrd').val()
|
|
||||||
, "aprvlCd" : $('#aprvlCd').val() //결과제출 - 10, 임시제출 - 230
|
|
||||||
, "innorixFileListVO": data
|
|
||||||
, "successMsg" : "제출 완료되었습니다."
|
|
||||||
}
|
|
||||||
|
|
||||||
if(fn_innorixCmmAjax(sendData, url) == "OK")
|
|
||||||
{
|
|
||||||
fncGoList();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function fncGoList(){
|
|
||||||
var linkForm = document.linkForm ;
|
|
||||||
linkForm.action = "<c:url value='/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndDetail.do'/>";
|
|
||||||
linkForm.submit();
|
|
||||||
}
|
|
||||||
|
|
||||||
function fncSave(){
|
|
||||||
if(control1.getFileCount() == 0){
|
|
||||||
alert("원본 결과보고서를 첨부해주세요.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(control2.getFileCount() == 0){
|
|
||||||
alert("평가용 결과보고서를 첨부해주세요.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(control3.getFileCount() == 0){
|
|
||||||
alert("증빙사진을 첨부해주세요.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
document.getElementById('aprvlCd').value = '10';
|
|
||||||
|
|
||||||
//임시저장 파일이 아닌 새로 추가한 파일만 업로드 처리
|
|
||||||
control5.removeAllFiles(); //control5 초기화
|
|
||||||
if(control1Chg == 'Y'){
|
|
||||||
control5.addFiles(control1.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control2Chg == 'Y'){
|
|
||||||
control5.addFiles(control2.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control3Chg == 'Y'){
|
|
||||||
control5.addFiles(control3.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control4Chg == 'Y'){
|
|
||||||
control5.addFiles(control4.getAllFiles());
|
|
||||||
}
|
|
||||||
//업로드 파일 사이즈 500MB 제한
|
|
||||||
//임시로 저장되어 있던 파일들 용량까지 체크하기 위하여 control5.getTotalSize()가 아닌 각각 파일의 사이즈를 더하여 비교
|
|
||||||
if(control1.getTotalSize() + control2.getTotalSize() + control3.getTotalSize() + control4.getTotalSize()> 524288000){
|
|
||||||
alert("업로드 가능한 용량은 전체 파일을 합산한 기준으로 500MB 제한이 있습니다.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
//기존 임시 저장상태에서 새로 등록한 파일이 없다면, 상태 값만 10으로 update 처리
|
|
||||||
if(control5.getFileCount() == '0'){
|
|
||||||
var url = "<c:url value='/web/common/updateRprtInnorixFileAjax.do' />";
|
|
||||||
var sendData = {
|
|
||||||
"eduAplctOrd": $('#eduAplctOrd').val()
|
|
||||||
, "aprvlCd" : $('#aprvlCd').val()
|
|
||||||
, "successMsg" : "제출 완료되었습니다."
|
|
||||||
}
|
|
||||||
if(fn_innorixCmmAjax(sendData, url) == "OK")
|
|
||||||
{
|
|
||||||
fncGoList();
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
//업로드 경로 설정 -upload.jsp에서 uploader.setDirectory(innoDirPath) 식으로 사용
|
|
||||||
//230810 기준 : innoDirPath = globals_local.properties = /usr/local/tomcat/file/sht/ 경로지만
|
|
||||||
//upload.jsp에서 /app/doc/offedu/sht/로 다시 set. context-properties.xml에서 파일 경로도 /app/doc/offedu/sht/
|
|
||||||
var postObj = new Object();
|
|
||||||
postObj.innoDirPath = $('#innoDirPath').val();
|
|
||||||
control5.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
|
|
||||||
control5.upload();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function fncTmprrSave(){
|
|
||||||
|
|
||||||
//첨부파일이 변경됐을시만 업로드. 임시저장으로 인하여 비교 필요
|
|
||||||
control5.removeAllFiles(); //control5 초기화
|
|
||||||
if(control1Chg == 'Y'){
|
|
||||||
control5.addFiles(control1.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control2Chg == 'Y'){
|
|
||||||
control5.addFiles(control2.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control3Chg == 'Y'){
|
|
||||||
control5.addFiles(control3.getAllFiles());
|
|
||||||
}
|
|
||||||
if(control4Chg == 'Y'){
|
|
||||||
control5.addFiles(control4.getAllFiles());
|
|
||||||
}
|
|
||||||
//업로드 파일 사이즈 500MB 제한
|
|
||||||
if(control1.getTotalSize() + control2.getTotalSize() + control3.getTotalSize() + control4.getTotalSize()> 524288000){
|
|
||||||
alert("업로드 가능한 용량은 전체 파일을 합산한 기준으로 500MB 제한이 있습니다.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if((control1Chg == 'N' && control2Chg == 'N'
|
|
||||||
&& control3Chg == 'N' && control4Chg == 'N') || control5.getFileCount() == '0'){
|
|
||||||
alert("임시저장할 파일을 첨부해주세요.")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
document.getElementById('aprvlCd').value = '230';
|
|
||||||
//업로드 경로 설정 -upload.jsp에서 uploader.setDirectory(innoDirPath) 식으로 사용
|
|
||||||
//230810 기준 : innoDirPath = globals_local.properties = /usr/local/tomcat/file/sht/ 경로지만
|
|
||||||
//upload.jsp에서 /app/doc/offedu/sht/로 다시 set. context-properties.xml에서 파일 경로도 /app/doc/offedu/sht/
|
|
||||||
var postObj = new Object();
|
|
||||||
postObj.innoDirPath = $('#innoDirPath').val();
|
|
||||||
control5.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
|
|
||||||
control5.upload();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<form:form id="linkForm" name="linkForm" commandName="vEEduAplctVO" onsubmit="return false;" method="post">
|
|
||||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
|
|
||||||
<input type="hidden" name="aprvlCd" id="aprvlCd" value="" />
|
|
||||||
<input type="hidden" id="innoDirPath" value="<spring:eval expression="@globalSettings['Globals.Innorix.FilePath']"/>" />
|
|
||||||
</form:form>
|
|
||||||
|
|
||||||
|
|
||||||
<div class="cont_wrap" id="sub">
|
|
||||||
<div class="cont_tit">
|
|
||||||
<h2>결과보고</h2>
|
|
||||||
<div class="sns_go">
|
|
||||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
|
||||||
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tb_tit01">
|
|
||||||
<div class="tb_tit01_left">
|
|
||||||
<p>결과보고 정보</p>
|
|
||||||
<span class="cf_text" style="font-size: 16px; font-weight: 400; color: #e40000;line-height: 1.5;margin-left:100px;">※ 업로드 가능한 용량은 전체 파일을 합산한 기준으로 500MB 제한이 있습니다.
|
|
||||||
<br/> 용량을 초과할 경우, 오류 발생으로 인해 업로드가 되지 않으니 유의하시기 바랍니다. </span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="exprnClsrmEndRslt_wrap">
|
|
||||||
<dl class="filewrap_div">
|
|
||||||
<dt><p class="req_text"><span>필수입력 항목</span>*</p>원본 결과보고서</dt>
|
|
||||||
<dd>
|
|
||||||
<div class="btn_wrap">
|
|
||||||
<button type="button" onclick="control1.openFileDialogSingle();" class="btnType01 orgnl_btn_add_file">원본 결과보고서 파일찾기</button>
|
|
||||||
<c:if test="${info.orgnlRsltAtchFileId != null && info.orgnlRsltAtchFileId != ''}">
|
|
||||||
<button type="button" id="control1DownBtn" onclick="control1.download();" class="btnType01 cpy_btn_add_file">다운로드</button>
|
|
||||||
</c:if>
|
|
||||||
</div>
|
|
||||||
<div id="orgn"></div><br/>
|
|
||||||
<div class="file_cf">
|
|
||||||
<div class="cf_left">
|
|
||||||
<p>최대 <span class="orgnl_limitFileCount">1</span>개</p>
|
|
||||||
</div>
|
|
||||||
<div class="cf_right">
|
|
||||||
<p>등록된 파일 <span class="upload_number orgnl_totalfileCount">0</span>개</p>
|
|
||||||
<span class="upload_number orgnl_totalfileSize">0MB</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<dl class="filewrap_div">
|
|
||||||
<dt><p class="req_text"><span>필수입력 항목</span>*</p>평가용 결과보고서</dt>
|
|
||||||
<dd>
|
|
||||||
<div class="btn_wrap">
|
|
||||||
<button type="button" onclick="control2.openFileDialogSingle();" class="btnType01 cpy_btn_add_file">평가용 결과보고서 파일찾기</button>
|
|
||||||
<c:if test="${info.cpyRsltAtchFileId != null && info.cpyRsltAtchFileId != ''}">
|
|
||||||
<button type="button" id="control2DownBtn" onclick="control2.download();" class="btnType01 cpy_btn_add_file">다운로드</button>
|
|
||||||
</c:if>
|
|
||||||
</div>
|
|
||||||
<div id="cpy"></div><br/>
|
|
||||||
<div class="file_cf">
|
|
||||||
<div class="cf_left">
|
|
||||||
<p>최대 <span class="cpy_limitFileCount">1</span>개</p>
|
|
||||||
</div>
|
|
||||||
<div class="cf_right">
|
|
||||||
<p>등록된 파일 <span class="upload_number cpy_totalfileCount">0</span>개</p>
|
|
||||||
<span class="upload_number cpy_totalfileSize">0MB</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
<dl class="filewrap_div">
|
|
||||||
<dt><p class="req_text"><span>필수입력 항목</span>*</p>증빙사진</dt>
|
|
||||||
<dd>
|
|
||||||
<div class="btn_wrap">
|
|
||||||
<button type="button" onclick="control3.openFileDialogSingle();" class="btnType01 evdnc_btn_add_file">증빙 사진 파일찾기</button>
|
|
||||||
<c:if test="${info.evdncPhtAtchFileId != null && info.evdncPhtAtchFileId != ''}">
|
|
||||||
<button type="button" id="control3DownBtn" onclick="control3.download();" class="btnType01 cpy_btn_add_file">다운로드</button>
|
|
||||||
</c:if>
|
|
||||||
</div>
|
|
||||||
<div id="evdnc"></div><br/>
|
|
||||||
<div class="file_cf">
|
|
||||||
<div class="cf_left">
|
|
||||||
<p>최대 <span class="evdnc_limitFileCount">1</span>개</p>
|
|
||||||
</div>
|
|
||||||
<div class="cf_right">
|
|
||||||
<p>등록된 파일 <span class="upload_number evdnc_totalfileCount">0</span>개</p>
|
|
||||||
<span class="upload_number evdnc_totalfileSize">0MB</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
<dl class="filewrap_div">
|
|
||||||
<dt>원격연수 이수증</dt>
|
|
||||||
<dd>
|
|
||||||
<div class="btn_wrap">
|
|
||||||
<button type="button" onclick="control4.openFileDialogSingle();" class="btnType01 rmtTrn_btn_add_file">원격연수 이수증 파일찾기</button>
|
|
||||||
<c:if test="${info.rmtTrnAtchFileId != null && info.rmtTrnAtchFileId != ''}">
|
|
||||||
<button type="button" id="control4DownBtn" onclick="control4.download();" class="btnType01 cpy_btn_add_file">다운로드</button>
|
|
||||||
</c:if>
|
|
||||||
</div>
|
|
||||||
<div id="rmttrn"></div><br/>
|
|
||||||
<div class="file_cf">
|
|
||||||
<div class="cf_left">
|
|
||||||
<p>최대 <span class="rmtTrn_limitFileCount">1</span>개</p>
|
|
||||||
</div>
|
|
||||||
<div class="cf_right">
|
|
||||||
<p>등록된 파일 <span class="upload_number rmtTrn_totalfileCount">0</span>개</p>
|
|
||||||
<span class="upload_number rmtTrn_totalfileSize">0MB</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="btn_wrap btn_layout01">
|
|
||||||
<div class="btn_left"></div>
|
|
||||||
<div class="btn_center">
|
|
||||||
<button type="button" class="btnType06" onclick="fncSave();">결과제출</button>
|
|
||||||
<button type="button" class="btnType06" onclick="fncTmprrSave();">임시저장</button>
|
|
||||||
</div>
|
|
||||||
<div class="btn_right">
|
|
||||||
<div id="fileControl5" style="display:none"></div>
|
|
||||||
<button type="button" class="btnType02 m_btn_block" onclick="fncGoList();">취소</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
@ -0,0 +1,965 @@
|
|||||||
|
<%@ page contentType="text/html; charset=utf-8"%>
|
||||||
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
||||||
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
||||||
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
||||||
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
||||||
|
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
|
||||||
|
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
|
||||||
|
<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%>
|
||||||
|
<%@ taglib prefix="un" uri="http://jakarta.apache.org/taglibs/unstandard-1.0" %>
|
||||||
|
<un:useConstants var="VeConstants" className="kcc.ve.cmm.VeConstants" />
|
||||||
|
<% pageContext.setAttribute("replaceChar", "\n"); %>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
input:disabled {
|
||||||
|
background-color: #f9f9f9 !important;
|
||||||
|
}
|
||||||
|
input:read-only {
|
||||||
|
background-color: #f9f9f9 !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script type="text/javaScript" language="javascript">
|
||||||
|
$( document ).ready(function(){
|
||||||
|
|
||||||
|
// 원본 결과보고
|
||||||
|
$(".orgnl_btn_add_file").on('click', function(){
|
||||||
|
$("#orgnl_file_temp").click();
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).on("drop",".orgnl_file_drop",function(e){
|
||||||
|
e.preventDefault();
|
||||||
|
var files = e.originalEvent.dataTransfer.files;
|
||||||
|
var objDragAndDrop = $(".orgnl_file_drop");
|
||||||
|
orgnlFileUpload(files,objDragAndDrop); //파일업로드
|
||||||
|
});
|
||||||
|
$(function(){ //단일 파일업로드
|
||||||
|
$('#orgnl_file_temp').change(function(e){
|
||||||
|
var objUpload = $(".upload_area");
|
||||||
|
var files = $('#orgnl_file_temp')[0].files;
|
||||||
|
orgnlFileUpload(files,objUpload); //파일업로드
|
||||||
|
if($("#orgnl_file_temp").length > 0){
|
||||||
|
$("#orgnl_file_temp").val(""); //파일지우기
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
//첨부파일 영역 hide 처리
|
||||||
|
drawUploadArea();
|
||||||
|
});
|
||||||
|
var _orgnFileIdx = 0;
|
||||||
|
var _orgnFileForm = new Array();
|
||||||
|
function orgnlFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
var limitsize = 100*1024*1024; //파일 제한 체크(10개, 100MB)
|
||||||
|
var limitcount = $("input[name=orgnl_limitcount]").val()*1 ;
|
||||||
|
var allrowFileExtsn = $("input[name=orgnl_allrowFileExtsn]").val();
|
||||||
|
|
||||||
|
if($('#orgnl_tbody_fiielist').find('tr').length + files.length > limitcount ){
|
||||||
|
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 100MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(allrowFileExtsn != undefined && allrowFileExtsn != ""){
|
||||||
|
if(allrowFileExtsn.toLowerCase().indexOf(files[i].name.split(".")[1].toLowerCase()) < 0 ){
|
||||||
|
alert(allrowFileExtsn.toUpperCase() +" 파일 형식만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _orgnFileIdx;
|
||||||
|
tmpObj.type = "orgn";
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_orgnFileForm.push(tmpObj);
|
||||||
|
orgnlSendFileToServer(fd, obj, files[i], _orgnFileIdx);
|
||||||
|
_orgnFileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.orgnl_totalfileCount').text($('.orgnl_item_file_size').length);
|
||||||
|
$('.orgnl_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.orgnl_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function orgnlSendFileToServer(formData, obj , fileObj, _orgnFileIdx)
|
||||||
|
{
|
||||||
|
$('.orgnl_no_img_box').hide(); //list 박스 형식 변경
|
||||||
|
$('.orgnl_file_list_div').show();
|
||||||
|
var list_html = "";
|
||||||
|
var tt = "";
|
||||||
|
|
||||||
|
var fileNm = fileObj.name;
|
||||||
|
var fileExt = fileNm.split('.').pop().toLowerCase();
|
||||||
|
|
||||||
|
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
||||||
|
|
||||||
|
list_html += '<td class="td_filename file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesort file_extension"><span class="file_filesort_text" value='+fileExt+'>.'+fileExt+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesize file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
||||||
|
|
||||||
|
list_html += '<td class="file_del"><button type="button" class="btn_del" onclick="orgnlDelete_item(this, '+_orgnFileIdx+')" title="';
|
||||||
|
list_html += fileObj.name;
|
||||||
|
list_html += ' 삭제"><i></i></button></td>';
|
||||||
|
list_html += '<input type="hidden" name="fileSize" class="orgnl_item_file_size" value="'+fileObj.size+'">';
|
||||||
|
list_html += '</tr>';
|
||||||
|
$('#orgnl_tbody_fiielist').append(list_html);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 삭제버튼 클릭시 */
|
||||||
|
function orgnlDelete_item(obj, fileIdx){
|
||||||
|
$(obj).closest("tr").remove();
|
||||||
|
_orgnFileForm.forEach(function(fobj, idx) {
|
||||||
|
if (fobj.name == ("file_" + fileIdx)) _orgnFileForm[idx] = "";
|
||||||
|
});
|
||||||
|
|
||||||
|
if($('.orgnl_item_file_size').length == 0){
|
||||||
|
$('.orgnl_no_img_box').show();
|
||||||
|
$('.orgnl_file_list_div').hide();
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.orgnl_totalfileCount').text($('.orgnl_item_file_size').length) ;
|
||||||
|
$('.orgnl_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.orgnl_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}else{
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.orgnl_totalfileCount').text($('.orgnl_item_file_size').length) ;
|
||||||
|
$('.orgnl_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.orgnl_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
_orgnFileIdx--;
|
||||||
|
_orgnFileForm.splice(0,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 평가용 결과보고서 파일등록
|
||||||
|
$( document ).ready(function(){
|
||||||
|
// 평가용 결과보고
|
||||||
|
$(".cpy_btn_add_file").on('click', function(){
|
||||||
|
$("#cpy_file_temp").click();
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).on("drop",".cpy_file_drop",function(e){
|
||||||
|
e.preventDefault();
|
||||||
|
var files = e.originalEvent.dataTransfer.files;
|
||||||
|
var objDragAndDrop = $(".cpy_file_drop");
|
||||||
|
cpyFileUpload(files,objDragAndDrop); //파일업로드
|
||||||
|
});
|
||||||
|
$(function(){ //단일 파일업로드
|
||||||
|
$('#cpy_file_temp').change(function(e){
|
||||||
|
var objUpload = $(".upload_area");
|
||||||
|
var files = $('#cpy_file_temp')[0].files;
|
||||||
|
cpyFileUpload(files,objUpload); //파일업로드
|
||||||
|
if($("#cpy_file_temp").length > 0){
|
||||||
|
$("#cpy_file_temp").val(""); //파일지우기
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
var _cpyFileIdx = 0;
|
||||||
|
var _cpyFileForm = new Array();
|
||||||
|
function cpyFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
var limitsize = 100*1024*1024; //파일 제한 체크(10개, 100MB)
|
||||||
|
var limitcount = $("input[name=cpy_limitcount]").val()*1 ;
|
||||||
|
var allrowFileExtsn = $("input[name=cpy_allrowFileExtsn]").val();
|
||||||
|
|
||||||
|
if($('#cpy_tbody_fiielist').find('tr').length + files.length > limitcount ){
|
||||||
|
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 100MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(allrowFileExtsn != undefined && allrowFileExtsn != ""){
|
||||||
|
if(allrowFileExtsn.toLowerCase().indexOf(files[i].name.split(".")[1].toLowerCase()) < 0 ){
|
||||||
|
alert(allrowFileExtsn.toUpperCase() +" 파일 형식만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _cpyFileIdx;
|
||||||
|
tmpObj.type = "cpy";
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_cpyFileForm.push(tmpObj);
|
||||||
|
cpySendFileToServer(fd, obj, files[i], _cpyFileIdx);
|
||||||
|
_cpyFileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.cpy_totalfileCount').text($('.cpy_item_file_size').length) ;
|
||||||
|
$('.cpy_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.cpy_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function cpySendFileToServer(formData, obj , fileObj, _cpyFileIdx)
|
||||||
|
{
|
||||||
|
$('.cpy_no_img_box').hide(); //list 박스 형식 변경
|
||||||
|
$('.cpy_file_list_div').show();
|
||||||
|
var list_html = "";
|
||||||
|
var tt = "";
|
||||||
|
|
||||||
|
var fileNm = fileObj.name;
|
||||||
|
var fileExt = fileNm.split('.').pop().toLowerCase();
|
||||||
|
|
||||||
|
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
||||||
|
|
||||||
|
list_html += '<td class="td_filename file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesort file_extension"><span class="file_filesort_text" value='+fileExt+'>.'+fileExt+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesize file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
||||||
|
|
||||||
|
list_html += '<td class="file_del"><button type="button" class="btn_del" onclick="cpyDelete_item(this, '+_cpyFileIdx+')" title="';
|
||||||
|
list_html += fileObj.name;
|
||||||
|
list_html += ' 삭제"><i></i></button></td>';
|
||||||
|
list_html += '<input type="hidden" name="fileSize" class="cpy_item_file_size" value="'+fileObj.size+'">';
|
||||||
|
list_html += '</tr>';
|
||||||
|
$('#cpy_tbody_fiielist').append(list_html);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 삭제버튼 클릭시 */
|
||||||
|
function cpyDelete_item(obj, fileIdx){
|
||||||
|
$(obj).closest("tr").remove();
|
||||||
|
_cpyFileForm.forEach(function(fobj, idx) {
|
||||||
|
if (fobj.name == ("file_" + fileIdx)) _cpyFileForm[idx] = "";
|
||||||
|
});
|
||||||
|
|
||||||
|
if($('.cpy_item_file_size').length == 0){
|
||||||
|
$('.cpy_no_img_box ').show();
|
||||||
|
$('.cpy_file_list_div').hide();
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.cpy_totalfileCount').text($('.cpy_item_file_size').length) ;
|
||||||
|
$('.cpy_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.cpy_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}else{
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.cpy_totalfileCount').text($('.cpy_item_file_size').length) ;
|
||||||
|
$('.cpy_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.cpy_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
|
||||||
|
_cpyFileIdx--;
|
||||||
|
_cpyFileForm.splice(0,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 증빈사진 파일등록
|
||||||
|
$( document ).ready(function(){
|
||||||
|
// 증빙사진
|
||||||
|
$(".evdnc_btn_add_file").on('click', function(){
|
||||||
|
$("#evdnc_file_temp").click();
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).on("drop",".evdnc_file_drop",function(e){
|
||||||
|
e.preventDefault();
|
||||||
|
var files = e.originalEvent.dataTransfer.files;
|
||||||
|
var objDragAndDrop = $(".evdnc_file_drop");
|
||||||
|
evdncFileUpload(files,objDragAndDrop); //파일업로드
|
||||||
|
});
|
||||||
|
$(function(){ //단일 파일업로드
|
||||||
|
$('#evdnc_file_temp').change(function(e){
|
||||||
|
var objUpload = $(".upload_area");
|
||||||
|
var files = $('#evdnc_file_temp')[0].files;
|
||||||
|
evdncFileUpload(files,objUpload); //파일업로드
|
||||||
|
if($("#evdnc_file_temp").length > 0){
|
||||||
|
$("#evdnc_file_temp").val(""); //파일지우기
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
var _evdncFileIdx = 0;
|
||||||
|
var _evdncFileForm = new Array();
|
||||||
|
function evdncFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
var limitsize = 100*1024*1024; //파일 제한 체크(10개, 100MB)
|
||||||
|
var limitcount = $("input[name=evdnc_limitcount]").val()*1 ;
|
||||||
|
var allrowFileExtsn = $("input[name=evdnc_allrowFileExtsn]").val();
|
||||||
|
|
||||||
|
if($('#evdnc_tbody_fiielist').find('tr').length + files.length > limitcount ){
|
||||||
|
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 100MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(allrowFileExtsn != undefined && allrowFileExtsn != ""){
|
||||||
|
var _fileLen = files[i].name.length;
|
||||||
|
var _lastDot = files[i].name.lastIndexOf('.')+1;
|
||||||
|
if(allrowFileExtsn.toLowerCase().indexOf(files[i].name.substring(_lastDot, _fileLen).toLowerCase()) < 0 ){
|
||||||
|
alert(allrowFileExtsn.toUpperCase() +" 파일 형식만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _evdncFileIdx;
|
||||||
|
tmpObj.type = "evdnc";
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_evdncFileForm.push(tmpObj);
|
||||||
|
evdncSendFileToServer(fd, obj, files[i], _evdncFileIdx);
|
||||||
|
_evdncFileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.evdnc_totalfileCount').text($('.evdnc_item_file_size').length) ;
|
||||||
|
$('.evdnc_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.evdnc_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function evdncSendFileToServer(formData, obj , fileObj, _evdncFileIdx)
|
||||||
|
{
|
||||||
|
|
||||||
|
$('.evdnc_no_img_box').hide(); //list 박스 형식 변경
|
||||||
|
$('.evdnc_file_list_div').show();
|
||||||
|
var list_html = "";
|
||||||
|
var tt = "";
|
||||||
|
|
||||||
|
var fileNm = fileObj.name;
|
||||||
|
var fileExt = fileNm.split('.').pop().toLowerCase();
|
||||||
|
|
||||||
|
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
||||||
|
|
||||||
|
list_html += '<td class="td_filename file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesort file_extension"><span class="file_filesort_text" value='+fileExt+'>.'+fileExt+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesize file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
||||||
|
|
||||||
|
list_html += '<td class="file_del"><button type="button" class="btn_del" onclick="evdncDelete_item(this, '+_evdncFileIdx+')" title="';
|
||||||
|
list_html += fileObj.name;
|
||||||
|
list_html += ' 삭제"><i></i></button></td>';
|
||||||
|
list_html += '<input type="hidden" name="fileSize" class="evdnc_item_file_size" value="'+fileObj.size+'">';
|
||||||
|
list_html += '</tr>';
|
||||||
|
$('#evdnc_tbody_fiielist').append(list_html);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 삭제버튼 클릭시 */
|
||||||
|
function evdncDelete_item(obj, fileIdx){
|
||||||
|
$(obj).closest("tr").remove();
|
||||||
|
_evdncFileForm.forEach(function(fobj, idx) {
|
||||||
|
if (fobj.name == ("file_" + fileIdx)) _evdncFileForm[idx] = "";
|
||||||
|
});
|
||||||
|
|
||||||
|
if($('.evdnc_item_file_size').length == 0){
|
||||||
|
$('.evdnc_no_img_box').show();
|
||||||
|
$('.evdnc_file_list_div').hide();
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.evdnc_totalfileCount').text($('.evdnc_item_file_size').length) ;
|
||||||
|
$('.evdnc_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.evdnc_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}else{
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.evdnc_totalfileCount').text($('.evdnc_item_file_size').length) ;
|
||||||
|
$('.evdnc_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.evdnc_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
_evdncFileIdx--;
|
||||||
|
_evdncFileForm.splice(0,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 원격연수 이수증
|
||||||
|
$( document ).ready(function(){
|
||||||
|
// 원격연수
|
||||||
|
$(".rmtTrn_btn_add_file").on('click', function(){
|
||||||
|
$("#rmtTrn_file_temp").click();
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).on("drop",".rmtTrn_file_drop",function(e){
|
||||||
|
e.preventDefault();
|
||||||
|
var files = e.originalEvent.dataTransfer.files;
|
||||||
|
var objDragAndDrop = $(".rmtTrn_file_drop");
|
||||||
|
rmtTrnFileUpload(files,objDragAndDrop); //파일업로드
|
||||||
|
});
|
||||||
|
$(function(){ //단일 파일업로드
|
||||||
|
$('#rmtTrn_file_temp').change(function(e){
|
||||||
|
var objUpload = $(".upload_area");
|
||||||
|
var files = $('#rmtTrn_file_temp')[0].files;
|
||||||
|
rmtTrnFileUpload(files,objUpload); //파일업로드
|
||||||
|
if($("#rmtTrn_file_temp").length > 0){
|
||||||
|
$("#rmtTrn_file_temp").val(""); //파일지우기
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
var _rmtTrnFileIdx = 0;
|
||||||
|
var _rmtTrnFileForm = new Array();
|
||||||
|
function rmtTrnFileUpload(files,obj) //업로드 function
|
||||||
|
{
|
||||||
|
var limitsize = 100*1024*1024; //파일 제한 체크(10개, 100MB)
|
||||||
|
var limitcount = $("input[name=rmtTrn_limitcount]").val()*1 ;
|
||||||
|
var allrowFileExtsn = $("input[name=rmtTrn_allrowFileExtsn]").val();
|
||||||
|
|
||||||
|
if($('#rmtTrn_tbody_fiielist').find('tr').length + files.length > limitcount ){
|
||||||
|
alert("업로드 파일은 최대 "+limitcount+"개 입니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
if(files[i].size > limitsize){
|
||||||
|
alert(files[i].name+"파일 사이즈가"+getStrFileSize(files[i].size)+"로 100MB이하만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(allrowFileExtsn != undefined && allrowFileExtsn != ""){
|
||||||
|
if(allrowFileExtsn.toLowerCase().indexOf(files[i].name.split(".")[1].toLowerCase()) < 0 ){
|
||||||
|
alert(allrowFileExtsn.toUpperCase() +" 파일 형식만 업로드 가능합니다.");
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var i = 0; i < files.length; i++)
|
||||||
|
{
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('file', files[i]);
|
||||||
|
var tmpObj = new Object();
|
||||||
|
tmpObj.name = "file_" + _rmtTrnFileIdx;
|
||||||
|
tmpObj.type = "rmtTrn";
|
||||||
|
tmpObj.fileObj = files[i];
|
||||||
|
|
||||||
|
_rmtTrnFileForm.push(tmpObj);
|
||||||
|
rmtTrnSendFileToServer(fd, obj, files[i], _rmtTrnFileIdx);
|
||||||
|
_rmtTrnFileIdx++;
|
||||||
|
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.rmtTrn_totalfileCount').text($('.rmtTrn_item_file_size').length) ;
|
||||||
|
$('.rmtTrn_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.rmtTrn_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function rmtTrnSendFileToServer(formData, obj , fileObj, _fileIdx)
|
||||||
|
{
|
||||||
|
$('.rmtTrn_no_img_box').hide(); //list 박스 형식 변경
|
||||||
|
$('.rmtTrn_file_list_div').show();
|
||||||
|
var list_html = "";
|
||||||
|
var tt = "";
|
||||||
|
|
||||||
|
var fileNm = fileObj.name;
|
||||||
|
var fileExt = fileNm.split('.').pop().toLowerCase();
|
||||||
|
|
||||||
|
list_html += '<tr class="item_'+tt+' uploaded_obj">';
|
||||||
|
|
||||||
|
list_html += '<td class="td_filename file_name"><img src="'+getfile_img(fileObj.name)+'" alt=""><span class="file_name_text">'+fileObj.name+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesort file_extension"><span class="file_filesort_text" value='+fileExt+'>.'+fileExt+'</span></td>';
|
||||||
|
list_html += '<td class="td_filesize file_size"><span class="file_size_text" value='+fileObj.size+'>'+getStrFileSize(fileObj.size)+'</span></td>';
|
||||||
|
|
||||||
|
list_html += '<td class="file_del"><button type="button" class="btn_del" onclick="rmtTrnDelete_item(this, '+_fileIdx+')" title="';
|
||||||
|
list_html += fileObj.name;
|
||||||
|
list_html += ' 삭제"><i></i></button></td>';
|
||||||
|
list_html += '<input type="hidden" name="fileSize" class="rmtTrn_item_file_size" value="'+fileObj.size+'">';
|
||||||
|
list_html += '</tr>';
|
||||||
|
$('#rmtTrn_tbody_fiielist').append(list_html);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 삭제버튼 클릭시 */
|
||||||
|
function rmtTrnDelete_item(obj, fileIdx){
|
||||||
|
$(obj).closest("tr").remove();
|
||||||
|
_rmtTrnFileForm.forEach(function(fobj, idx) {
|
||||||
|
if (fobj.name == ("file_" + fileIdx)) _rmtTrnFileForm[idx] = "";
|
||||||
|
});
|
||||||
|
|
||||||
|
if($('.rmtTrn_item_file_size').length == 0){
|
||||||
|
$('.rmtTrn_no_img_box ').show();
|
||||||
|
$('.rmtTrn_file_list_div').hide();
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.rmtTrn_totalfileCount').text($('.rmtTrn_item_file_size').length) ;
|
||||||
|
$('.rmtTrn_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.rmtTrn_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}else{
|
||||||
|
var totalfileSize = 0;
|
||||||
|
$('.rmtTrn_totalfileCount').text($('.rmtTrn_item_file_size').length) ;
|
||||||
|
$('.rmtTrn_item_file_size').each(function(){
|
||||||
|
totalfileSize += $(this).val()*1 ;
|
||||||
|
});
|
||||||
|
$('.rmtTrn_totalfileSize').text(getStrFileSize(totalfileSize)) ;
|
||||||
|
}
|
||||||
|
_rmtTrnFileIdx --;
|
||||||
|
_rmtTrnFileForm.splice(0,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
function fncGoList()
|
||||||
|
{
|
||||||
|
var linkForm = document.linkForm ;
|
||||||
|
linkForm.action = "<c:url value='/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndDetail.do'/>";
|
||||||
|
linkForm.submit();
|
||||||
|
}
|
||||||
|
|
||||||
|
function fncSave(){
|
||||||
|
var data = new FormData(document.getElementById("fileUploadForm"));
|
||||||
|
if(_orgnFileForm.length == '0'){
|
||||||
|
alert("원본 결과보고서를 첨부해주세요.")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
_orgnFileForm.forEach(function(obj, idx) {
|
||||||
|
if (obj) data.append("fileOrgn"+idx, obj.fileObj);
|
||||||
|
});
|
||||||
|
|
||||||
|
if(_cpyFileForm.length == '0'){
|
||||||
|
alert("평가용 결과보고서를 첨부해주세요.")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
_cpyFileForm.forEach(function(obj, idx) {
|
||||||
|
if (obj) data.append("fileCpy"+idx, obj.fileObj);
|
||||||
|
});
|
||||||
|
|
||||||
|
if(_evdncFileForm.length == '0'){
|
||||||
|
alert("증빙사진을 첨부해주세요.")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
_evdncFileForm.forEach(function(obj, idx) {
|
||||||
|
if (obj) data.append("fileEvdnc"+idx, obj.fileObj);
|
||||||
|
});
|
||||||
|
/*
|
||||||
|
if(_rmtTrnFileForm.length == '0'){
|
||||||
|
alert("원격연수 이수증을 첨부해주세요.")
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
_rmtTrnFileForm.forEach(function(obj, idx) {
|
||||||
|
if (obj) data.append("fileRmtTrn"+idx, obj.fileObj);
|
||||||
|
});
|
||||||
|
|
||||||
|
if(confirm("결과보고를 제출하시겠습니까?")){
|
||||||
|
$.ajax({
|
||||||
|
type: "POST"
|
||||||
|
, enctype: 'multipart/form-data'
|
||||||
|
, url: "${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndRsltAjax.do"
|
||||||
|
, data: data
|
||||||
|
, dataType:'json'
|
||||||
|
, async: false
|
||||||
|
, processData: false
|
||||||
|
, contentType: false
|
||||||
|
, cache: false
|
||||||
|
, success: function (returnData, status) {
|
||||||
|
if(status == 'success'){
|
||||||
|
alert("등록 되었습니다.");
|
||||||
|
fncGoList(); //현재 메인화면 이동
|
||||||
|
} else if(status== 'fail'){
|
||||||
|
alert("등록에 실패하였습니다.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
, error: function (e) {
|
||||||
|
alert("저장에 실패하였습니다."); console.log("ERROR : ", e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<form:form id="listForm" name="listForm" commandName="vEEduAplctVO" onsubmit="return false;" method="post">
|
||||||
|
<input type="hidden" name="pageIndex" value="<c:out value='${vEEduAplctVO.pageIndex}' default='1' />"/>
|
||||||
|
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEEduAplctVO.searchSortCnd}" />" />
|
||||||
|
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEEduAplctVO.searchSortOrd}" />" />
|
||||||
|
<input type="hidden" name="searchStatus" value="<c:out value="${vEEduAplctVO.searchStatus}" />" />
|
||||||
|
</form:form>
|
||||||
|
|
||||||
|
<form:form id="linkForm" name="linkForm" commandName="vEEduAplctVO" onsubmit="return false;" method="post">
|
||||||
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
|
||||||
|
</form:form>
|
||||||
|
|
||||||
|
<form id="fileUploadForm">
|
||||||
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<div class="cont_wrap" id="sub">
|
||||||
|
<div class="cont_tit">
|
||||||
|
<h2>결과보고</h2>
|
||||||
|
<div class="sns_go">
|
||||||
|
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/facebook_icon.png" alt="페이스북 바로가기"></button>
|
||||||
|
<button type="button" title="새창열림"><img src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/twitter_icon.png" alt="트위터 바로가기"></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="tb_tit01">
|
||||||
|
<div class="tb_tit01_left">
|
||||||
|
<p>결과보고 정보</p>
|
||||||
|
<span class="cf_text" style="font-size: 16px; font-weight: 400; color: #e40000;line-height: 1.5;margin-left:100px;"
|
||||||
|
>※ 업로드 가능한 용량은 전체 파일을 합산한 기준으로 500MB 제한이 있습니다.
|
||||||
|
<br/> 용량을 초과할 경우, 오류 발생으로 인해 업로드가 되지 않으니 유의하시기 바랍니다.
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="exprnClsrmEndRslt_wrap">
|
||||||
|
<dl class="filewrap_div">
|
||||||
|
<dt><p class="req_text"><span>필수입력 항목</span>*</p>원본 결과보고서</dt>
|
||||||
|
<dd>
|
||||||
|
<div class="btn_wrap">
|
||||||
|
<button type="button" class="btnType01 orgnl_btn_add_file">원본 결과보고서 업로드</button>
|
||||||
|
<input type="file" id="orgnl_file_temp" name="orgnl_file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap no_img_box orgnl_no_img_box">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기 정보 제공</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before orgnl_file_drop">
|
||||||
|
<tr>
|
||||||
|
<td colspan="3">
|
||||||
|
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap file_list_div orgnl_file_list_div">
|
||||||
|
<table>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 100px;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody id="orgnl_tbody_fiielist" class="orgnl_tb_file_after 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="orgnl_item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<button type="button" class="btn_del" title="df" onclick="delAtchFile('${fileList.atchFileId}', '${fileList.fileSn}'); return false;"><i></i></button>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</c:forEach>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_cf">
|
||||||
|
<input type="hidden" name="orgnl_limitcount" id="orgnl_limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||||
|
<input type="hidden" name="orgnl_allrowFileExtsn" id="orgnl_allrowFileExtsn" value="" /><!-- 허용 확장자 -->
|
||||||
|
<div class="cf_left">
|
||||||
|
<p>최대 <span class="orgnl_limitFileCount">1</span>개</p>
|
||||||
|
<p><span>100MB</span>제한</p>
|
||||||
|
</div>
|
||||||
|
<div class="cf_right">
|
||||||
|
<p>등록된 파일 <span class="upload_number orgnl_totalfileCount">0</span>개</p>
|
||||||
|
<span class="upload_number orgnl_totalfileSize">0MB</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<dl class="filewrap_div">
|
||||||
|
<dt><p class="req_text"><span>필수입력 항목</span>*</p>평가용 결과보고서</dt>
|
||||||
|
<dd>
|
||||||
|
<div class="btn_wrap">
|
||||||
|
<button type="button" class="btnType01 cpy_btn_add_file">평가용 결과보고서 업로드</button>
|
||||||
|
<input type="file" id="cpy_file_temp" name="cpy_file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap no_img_box cpy_no_img_box">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기 정보 제공</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before cpy_file_drop">
|
||||||
|
<tr>
|
||||||
|
<td colspan="3">
|
||||||
|
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap file_list_div cpy_file_list_div">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기, 삭제 정보 제공</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 100px;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th scope="col">파일 명</th>
|
||||||
|
<th scope="col">종류</th>
|
||||||
|
<th scope="col">크기</th>
|
||||||
|
<th scope="col">삭제</th>
|
||||||
|
</thead>
|
||||||
|
<tbody id="cpy_tbody_fiielist" class="cpy_tb_file_after 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="cpy_item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</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="file_cf">
|
||||||
|
<input type="hidden" name="cpy_limitcount" id="cpy_limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||||
|
<input type="hidden" name="cpy_allrowFileExtsn" id="cpy_allrowFileExtsn" value="" /><!-- 허용 확장자 -->
|
||||||
|
<div class="cf_left">
|
||||||
|
<p>최대 <span class="cpy_limitFileCount">1</span>개</p>
|
||||||
|
<p><span>100MB</span>제한</p>
|
||||||
|
</div>
|
||||||
|
<div class="cf_right">
|
||||||
|
<p>등록된 파일 <span class="upload_number cpy_totalfileCount">0</span>개</p>
|
||||||
|
<span class="upload_number cpy_totalfileSize">0MB</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
<dl class="filewrap_div">
|
||||||
|
<dt><p class="req_text"><span>필수입력 항목</span>*</p>증빙사진</dt>
|
||||||
|
<dd>
|
||||||
|
<div class="btn_wrap">
|
||||||
|
<button type="button" class="btnType01 evdnc_btn_add_file">증빙 사진 업로드</button>
|
||||||
|
<input type="file" id="evdnc_file_temp" name="evdnc_file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap no_img_box evdnc_no_img_box">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기 정보 제공</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th>파일 명</th>
|
||||||
|
<th>종류</th>
|
||||||
|
<th>크기</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before evdnc_file_drop">
|
||||||
|
<tr>
|
||||||
|
<td colspan="3">
|
||||||
|
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap file_list_div evdnc_file_list_div">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기, 삭제 정보 제공</caption>
|
||||||
|
<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="evdnc_tbody_fiielist" class="evdnc_tb_file_after 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="evdnc_item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</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="file_cf">
|
||||||
|
<input type="hidden" name="evdnc_limitcount" id="evdnc_limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||||
|
<input type="hidden" name="evdnc_allrowFileExtsn" id="evdnc_allrowFileExtsn" value="ZIP" /><!-- 허용 확장자 -->
|
||||||
|
<div class="cf_left">
|
||||||
|
<p>최대 <span class="evdnc_limitFileCount">1</span>개</p>
|
||||||
|
<p><span>100MB</span>제한</p>
|
||||||
|
</div>
|
||||||
|
<div class="cf_right">
|
||||||
|
<p>등록된 파일 <span class="upload_number evdnc_totalfileCount">0</span>개</p>
|
||||||
|
<span class="upload_number evdnc_totalfileSize">0MB</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
<dl class="filewrap_div">
|
||||||
|
<dt>원격연수 이수증</dt>
|
||||||
|
<dd>
|
||||||
|
<div class="btn_wrap">
|
||||||
|
<button type="button" class="btnType01 rmtTrn_btn_add_file">원격연수 이수증 업로드</button>
|
||||||
|
<input type="file" id="rmtTrn_file_temp" name="rmtTrn_file_temp" class="uploadFile" style="display:none"/>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap no_img_box rmtTrn_no_img_box">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기 정보 제공</caption>
|
||||||
|
<colgroup>
|
||||||
|
<col style="width: auto;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
<col style="width: 15%;">
|
||||||
|
</colgroup>
|
||||||
|
<thead>
|
||||||
|
<th>파일 명</th>
|
||||||
|
<th>종류</th>
|
||||||
|
<th>크기</th>
|
||||||
|
</thead>
|
||||||
|
<tbody class="tb_file_before rmtTrn_file_drop">
|
||||||
|
<tr>
|
||||||
|
<td colspan="3">
|
||||||
|
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<div class="file_wrap file_list_div rmtTrn_file_list_div">
|
||||||
|
<table>
|
||||||
|
<caption>첨부파일 파일명, 종류, 크기, 삭제 정보 제공</caption>
|
||||||
|
<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="rmtTrn_tbody_fiielist" class="rmtTrn_tb_file_after 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="rmtTrn_item_file_size" value="${fileList.fileSize}">
|
||||||
|
<td class="td_filename">
|
||||||
|
<span class="file_name_text">${fileList.orignlFileNm}</span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesort">
|
||||||
|
<span class="file_filesort_text" value="<c:out value="${fileList.fileExtsn}"/>"><c:out value="${fileList.fileExtsn}"/></span>
|
||||||
|
</td>
|
||||||
|
<td class="td_filesize">
|
||||||
|
<span class="file_size_text" value="<c:out value="${fileList.fileMg}"/>"><c:out value="${fileList.fileMg}"/></span>
|
||||||
|
</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="file_cf">
|
||||||
|
<input type="hidden" name="rmtTrn_limitcount" id="rmtTrn_limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
|
||||||
|
<input type="hidden" name="rmtTrn_allrowFileExtsn" id="rmtTrn_allrowFileExtsn" value="" /><!-- 허용 확장자 -->
|
||||||
|
<div class="cf_left">
|
||||||
|
<p>최대 <span class="rmtTrn_limitFileCount">1</span>개</p>
|
||||||
|
<p><span>100MB</span>제한</p>
|
||||||
|
</div>
|
||||||
|
<div class="cf_right">
|
||||||
|
<p>등록된 파일 <span class="upload_number rmtTrn_totalfileCount">0</span>개</p>
|
||||||
|
<span class="upload_number rmtTrn_totalfileSize">0MB</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="btn_wrap btn_layout01">
|
||||||
|
<div class="btn_left">
|
||||||
|
</div>
|
||||||
|
<div class="btn_center">
|
||||||
|
<button type="button" class="btnType06" onclick="fncSave();">결과제출</button>
|
||||||
|
</div>
|
||||||
|
<div class="btn_right">
|
||||||
|
<button type="button" class="btnType02 m_btn_block" onclick="fncGoList();">취소</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
@ -148,9 +148,9 @@
|
|||||||
</th>
|
</th>
|
||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty info.sbmtPnttm}">
|
<c:when test="${not empty info.sbmtPnttmDetail}">
|
||||||
<fmt:parseDate value="${info.sbmtPnttm}" var="sbmtPnttm" pattern="yyyy-MM-dd"/>
|
<fmt:parseDate value="${info.sbmtPnttmDetail}" var="sbmtPnttm" pattern="yyyy-MM-dd HH:mm:ss"/>
|
||||||
<fmt:formatDate value="${sbmtPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${sbmtPnttm}" pattern="yyyy.MM.dd HH시 mm분"/>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -164,7 +164,7 @@
|
|||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty info.endPnttm}">
|
<c:when test="${not empty info.endPnttm}">
|
||||||
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
@ -196,7 +196,7 @@
|
|||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty info.endPnttm}">
|
<c:when test="${not empty info.endPnttm}">
|
||||||
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${info.endPnttm}" var="endPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
|
|||||||
@ -18,7 +18,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function openPop(){
|
function openPop(){
|
||||||
if(!checkAplctPsbl()) return;
|
//if(!checkAplctPsbl()) return;
|
||||||
|
|
||||||
commonPopLayeropen(
|
commonPopLayeropen(
|
||||||
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/cautionGuide.do"
|
"${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/popup/cautionGuide.do"
|
||||||
|
|||||||
@ -24,7 +24,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function goWrite(){
|
function goWrite(){
|
||||||
if(!checkAplctPsbl()) return;
|
/* if(!checkAplctPsbl()) return; */
|
||||||
|
|
||||||
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctGuide.do").submit();
|
$("#listForm").attr("action","${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctGuide.do").submit();
|
||||||
}
|
}
|
||||||
@ -98,9 +98,9 @@
|
|||||||
<option ${vEEduAplctVO.searchStatus2 eq '' ? 'selected' : ''} value="">전체</option>
|
<option ${vEEduAplctVO.searchStatus2 eq '' ? 'selected' : ''} value="">전체</option>
|
||||||
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_10 ? 'selected' : ''} value="${VeConstants.APRVL_CD_10}">운영신청</option>
|
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_10 ? 'selected' : ''} value="${VeConstants.APRVL_CD_10}">운영신청</option>
|
||||||
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_70 ? 'selected' : ''} value="${VeConstants.APRVL_CD_70}">수정요청</option>
|
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_70 ? 'selected' : ''} value="${VeConstants.APRVL_CD_70}">수정요청</option>
|
||||||
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_80 ? 'selected' : ''} value="${VeConstants.APRVL_CD_80}">수정요청완료</option>
|
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_80 ? 'selected' : ''} value="${VeConstants.APRVL_CD_80}">수정완료</option>
|
||||||
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_60 ? 'selected' : ''} value="${VeConstants.APRVL_CD_60}">교육확정</option>
|
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_60 ? 'selected' : ''} value="${VeConstants.APRVL_CD_60}">운영확정</option>
|
||||||
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_90 ? 'selected' : ''} value="${VeConstants.APRVL_CD_90}">교육미확정</option>
|
<option ${vEEduAplctVO.searchStatus2 eq VeConstants.APRVL_CD_90 ? 'selected' : ''} value="${VeConstants.APRVL_CD_90}">운영미확정</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_wrap">
|
<div class="btn_wrap">
|
||||||
@ -154,8 +154,8 @@
|
|||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
|
<a href="javascript:fncGoDetail('${list.eduAplctOrd}');" >
|
||||||
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
<%--<c:choose>
|
<%--<c:choose>
|
||||||
<c:when test="${not empty list.rprtSbmtDt}">
|
<c:when test="${not empty list.rprtSbmtDt}">
|
||||||
<fmt:parseDate value="${list.rprtSbmtDt}" var="eduHopeDt" pattern="yyyyMMdd"/>
|
<fmt:parseDate value="${list.rprtSbmtDt}" var="eduHopeDt" pattern="yyyyMMdd"/>
|
||||||
@ -187,13 +187,13 @@
|
|||||||
<span class="app_status3">수정요청</span>
|
<span class="app_status3">수정요청</span>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_80}">
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_80}">
|
||||||
<span class="app_status3">수정요청완료</span>
|
<span class="app_status3">수정완료</span>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_60}">
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_60}">
|
||||||
<span class="app_status1">교육확정</span>
|
<span class="app_status1">운영확정</span>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_90}">
|
<c:when test="${list.aprvlCd eq VeConstants.APRVL_CD_90}">
|
||||||
<span class="app_status1">교육미확정</span>
|
<span class="app_status1">운영미확정</span>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -227,8 +227,8 @@
|
|||||||
<li>
|
<li>
|
||||||
<span>접수종료일</span>
|
<span>접수종료일</span>
|
||||||
<span>
|
<span>
|
||||||
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyMMddHHmmss"/>
|
<fmt:parseDate value="${list.endPnttm}" var="endPnttm" pattern="yyyyMMddHHmm"/>
|
||||||
<fmt:formatDate value="${endPnttm}" pattern="20yy.MM.dd"/>
|
<fmt:formatDate value="${endPnttm}" pattern="yyyy.MM.dd"/>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
|||||||
@ -107,7 +107,7 @@
|
|||||||
$(".tb_write").find("input[type=radio]:first-child").attr('checked',true);
|
$(".tb_write").find("input[type=radio]:first-child").attr('checked',true);
|
||||||
$(".addClassRowClsrm > tbody").find(">tr:gt(5)").remove();
|
$(".addClassRowClsrm > tbody").find(">tr:gt(5)").remove();
|
||||||
$("#agree").prop('checked',false);
|
$("#agree").prop('checked',false);
|
||||||
$("#agree1").prop('checked',false);
|
/* $("#agree1").prop('checked',false); */
|
||||||
$("input[name=onlnPrcsOrd]").prop('checked',false);
|
$("input[name=onlnPrcsOrd]").prop('checked',false);
|
||||||
|
|
||||||
var fileVo = new Array();
|
var fileVo = new Array();
|
||||||
@ -234,8 +234,19 @@
|
|||||||
$('#exprnClsrnYear').val(arr);
|
$('#exprnClsrnYear').val(arr);
|
||||||
}
|
}
|
||||||
|
|
||||||
$('#oprtnStrtDt').val($('#oprtnStrtDt').val().replace(/[.]/gi, ''));
|
if($('#oprtnStrtDt').val() != null){
|
||||||
$('#oprtnEndDt').val($('#oprtnEndDt').val().replace(/[.]/gi, ''));
|
$('#oprtnStrtDt').val($('#oprtnStrtDt').val().replace(/[.]/gi, ''));
|
||||||
|
}
|
||||||
|
if($('#oprtnEndDt').val() != null){
|
||||||
|
$('#oprtnEndDt').val($('#oprtnEndDt').val().replace(/[.]/gi, ''));
|
||||||
|
}
|
||||||
|
//임시저장 데이터 불러왔을 시 duet-date-picker에서 날짜 input에 id를 넣어주지 않음
|
||||||
|
if($('duet-date-picker[name=oprtnStrtDt]').val() != null){
|
||||||
|
$('duet-date-picker[name=oprtnStrtDt]').val($('duet-date-picker[name=oprtnStrtDt]').val().replace(/[.]/gi, ''))
|
||||||
|
}
|
||||||
|
if($('duet-date-picker[name=oprtnEndDt]').val() != null){
|
||||||
|
$('duet-date-picker[name=oprtnEndDt]').val($('duet-date-picker[name=oprtnEndDt]').val().replace(/[.]/gi, ''))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function validCheck(){
|
function validCheck(){
|
||||||
@ -382,8 +393,10 @@
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var oprtnStrtDt = $('#oprtnStrtDt').val();
|
/* var oprtnStrtDt = $('#oprtnStrtDt').val();
|
||||||
var oprtnEndDt = $('#oprtnEndDt').val();
|
var oprtnEndDt = $('#oprtnEndDt').val(); */
|
||||||
|
var oprtnStrtDt = $('duet-date-picker[name=oprtnStrtDt]').val();
|
||||||
|
var oprtnEndDt = $('duet-date-picker[name=oprtnEndDt]').val();
|
||||||
|
|
||||||
oprtnStrtDt = oprtnStrtDt.replace(/[.]/gi, '');
|
oprtnStrtDt = oprtnStrtDt.replace(/[.]/gi, '');
|
||||||
oprtnEndDt = oprtnEndDt.replace(/[.]/gi, '');
|
oprtnEndDt = oprtnEndDt.replace(/[.]/gi, '');
|
||||||
@ -394,7 +407,8 @@
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
var oprtnStrtDtDate = $('#oprtnStrtDt').val();
|
/* var oprtnStrtDtDate = $('#oprtnStrtDt').val(); */
|
||||||
|
var oprtnStrtDtDate = $('duet-date-picker[name=oprtnStrtDt]').val();
|
||||||
var yyyy = oprtnStrtDtDate.substr(0,4);
|
var yyyy = oprtnStrtDtDate.substr(0,4);
|
||||||
var mm = oprtnStrtDtDate.substr(5,2);
|
var mm = oprtnStrtDtDate.substr(5,2);
|
||||||
var dd = oprtnStrtDtDate.substr(8,2);
|
var dd = oprtnStrtDtDate.substr(8,2);
|
||||||
@ -417,10 +431,10 @@
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($("#agree1").length > 0 && $('#agree1').val() != 'Y'){
|
/* if($("#agree1").length > 0 && !$('#agree1').prop('checked')){
|
||||||
alert('개인정보 이용 약관에 동의해주세요.');
|
alert('개인정보 이용 약관에 동의해주세요.');
|
||||||
return false;
|
return false;
|
||||||
}
|
} */
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -501,7 +515,10 @@
|
|||||||
// cmpltNoFormat(document.getElementById('cmpltNum'));
|
// cmpltNoFormat(document.getElementById('cmpltNum'));
|
||||||
// }
|
// }
|
||||||
|
|
||||||
$("#exprnClsrnCd").val(info.exprnClsrnCd);
|
$('input[name=exprnClsrnCd][value='+info.exprnClsrnCd+']').prop('checked', true);
|
||||||
|
if(info.exprnClsrnCd == '02'){
|
||||||
|
$('input[name="eClsrnYear"]').attr('disabled',true);
|
||||||
|
}
|
||||||
$('input[name=eClsrnYear]').prop('checked',false);
|
$('input[name=eClsrnYear]').prop('checked',false);
|
||||||
if(isNotEmpty(info.exprnClsrnYear)){
|
if(isNotEmpty(info.exprnClsrnYear)){
|
||||||
var yearList = info.exprnClsrnYear.split(',');
|
var yearList = info.exprnClsrnYear.split(',');
|
||||||
@ -510,7 +527,7 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$("#exprnClsrnAplct").val(info.exprnClsrnAplct);
|
$('input[name=exprnClsrnAplct][value='+info.exprnClsrnAplct+']').prop('checked', true);
|
||||||
if(info.exprnClsrnAplct == '04'){
|
if(info.exprnClsrnAplct == '04'){
|
||||||
$("#exprnClsrnAplctCn").prop('disabled' , false);
|
$("#exprnClsrnAplctCn").prop('disabled' , false);
|
||||||
$("#exprnClsrnAplctCn").val(info.exprnClsrnAplctCn);
|
$("#exprnClsrnAplctCn").val(info.exprnClsrnAplctCn);
|
||||||
@ -524,11 +541,15 @@
|
|||||||
$("#trgtPrsnl").val(info.trgtPrsnl);
|
$("#trgtPrsnl").val(info.trgtPrsnl);
|
||||||
|
|
||||||
if(isNotEmpty(info.oprtnStrtDt)){
|
if(isNotEmpty(info.oprtnStrtDt)){
|
||||||
$("#oprtnStrtDt").val(dateFormat(info.oprtnStrtDt.replace(/[.]/gi,''), 'date'));
|
/* $("#oprtnStrtDt").val(dateFormat(info.oprtnStrtDt.replace(/[.]/gi,''), 'date')); */
|
||||||
|
$('duet-date-picker[name=oprtnStrtDt]').val(dateFormat(info.oprtnStrtDt.replace(/[.]/gi,''), 'date'))
|
||||||
|
$('#oprtnStrtDt').val(dateFormat(info.oprtnStrtDt.replace(/[.]/gi,''), 'date'));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isNotEmpty(info.oprtnEndDt)){
|
if(isNotEmpty(info.oprtnEndDt)){
|
||||||
$("#oprtnEndDt").val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date'));
|
/* $("#oprtnEndDt").val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date')); */
|
||||||
|
$('duet-date-picker[name=oprtnEndDt]').val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date'))
|
||||||
|
$('#oprtnEndDt').val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date'));
|
||||||
}
|
}
|
||||||
|
|
||||||
$("#oprtnFileId").val(info.oprtnFileId);
|
$("#oprtnFileId").val(info.oprtnFileId);
|
||||||
@ -536,6 +557,7 @@
|
|||||||
var fileTbody = $("#tbody_fiielist");
|
var fileTbody = $("#tbody_fiielist");
|
||||||
$.each(fileList, function(idx, obj){
|
$.each(fileList, function(idx, obj){
|
||||||
var tr = $("<tr/>").addClass('item_'+obj.atchFileId+'_'+obj.fileSn).addClass('uploaded_obj');
|
var tr = $("<tr/>").addClass('item_'+obj.atchFileId+'_'+obj.fileSn).addClass('uploaded_obj');
|
||||||
|
var hiddenInput = $('<input/>').attr('type', 'hidden').attr('name', 'fileSize').addClass('item_file_size').val(obj.fileSize);
|
||||||
var td1 = $('<td/>').addClass('td_filename');
|
var td1 = $('<td/>').addClass('td_filename');
|
||||||
var td2 = $('<td/>').addClass('td_filesort');
|
var td2 = $('<td/>').addClass('td_filesort');
|
||||||
var td3 = $('<td/>').addClass('td_filesize');
|
var td3 = $('<td/>').addClass('td_filesize');
|
||||||
@ -551,7 +573,7 @@
|
|||||||
td2.append(span2);
|
td2.append(span2);
|
||||||
td3.append(span3);
|
td3.append(span3);
|
||||||
td4.append(button);
|
td4.append(button);
|
||||||
tr.append(td1).append(td2).append(td3).append(td4);
|
tr.append(hiddenInput).append(td1).append(td2).append(td3).append(td4);
|
||||||
fileTbody.append(tr);
|
fileTbody.append(tr);
|
||||||
});
|
});
|
||||||
if(fileList.length > 0){
|
if(fileList.length > 0){
|
||||||
@ -593,6 +615,8 @@
|
|||||||
<input type="hidden" name="mode" id="mode" value="${modelVO.mode}" />
|
<input type="hidden" name="mode" id="mode" value="${modelVO.mode}" />
|
||||||
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
|
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
|
||||||
<input type="hidden" name="oprtnFileId" id="oprtnFileId" value="${info.oprtnFileId}" />
|
<input type="hidden" name="oprtnFileId" id="oprtnFileId" value="${info.oprtnFileId}" />
|
||||||
|
<input type="hidden" name="prcsOrd" id="prcsOrd" value="${detailVO.prcsAplctPrdOrd}" /> <!-- 교육과정신청기간 ID -->
|
||||||
|
|
||||||
|
|
||||||
<div class="cont_tit">
|
<div class="cont_tit">
|
||||||
<h2>운영신청서 작성</h2>
|
<h2>운영신청서 작성</h2>
|
||||||
@ -1069,7 +1093,7 @@
|
|||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
|
|
||||||
<div class="agree_wrap">
|
<!-- <div class="agree_wrap">
|
||||||
<div class="tb_tit01">
|
<div class="tb_tit01">
|
||||||
<p>개인정보 이용 동의</p>
|
<p>개인정보 이용 동의</p>
|
||||||
</div>
|
</div>
|
||||||
@ -1093,11 +1117,11 @@
|
|||||||
<div>
|
<div>
|
||||||
<input type="checkbox" id="agree1" name="agree1" value="Y">
|
<input type="checkbox" id="agree1" name="agree1" value="Y">
|
||||||
<label for="agree1">위 사항에 동의합니다.</label>
|
<label for="agree1">위 사항에 동의합니다.</label>
|
||||||
<input type="hidden" id="agreeError" name="agreeError"> <!-- IE에서 체크박스가 마지막에 있을 시 이상한 오류 발생. 오류 방지를 위해히든 하나 넣어둠 -->
|
<input type="hidden" id="agreeError" name="agreeError"> IE에서 체크박스가 마지막에 있을 시 이상한 오류 발생. 오류 방지를 위해히든 하나 넣어둠
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<div class="btn_wrap btn_layout01">
|
<div class="btn_wrap btn_layout01">
|
||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -31,11 +31,16 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function goWrite(){
|
function goWrite(){
|
||||||
location.href= "${pageContext.request.contextPath}/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctReg.do";
|
var frm = document.getElementById("prcsOrdForm");
|
||||||
|
frm.action = "<c:url value='/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmInfo/exprnClsrmAplctReg.do'/>";
|
||||||
|
frm.submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
<form id="prcsOrdForm" name="prcsOrdForm">
|
||||||
|
<input type="hidden" name="prcsOrd" id="prcsOrd" value="${detailVO.prcsAplctPrdOrd}" /> <!-- 교육과정신청기간 ID -->
|
||||||
|
</form>
|
||||||
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub40_pop01" data-focus="sub40_pop01" data-focus-prev="list_popup_close">
|
<div class="popup_wrap popType05" tabindex="0" data-tooltip-con="sub40_pop01" data-focus="sub40_pop01" data-focus-prev="list_popup_close">
|
||||||
<div class="popup_tit">
|
<div class="popup_tit">
|
||||||
<p>신청서 작성 안내</p> <button class="btn_popup_close tooltip-close" data-focus="list_popup_close" title="팝업 닫기"><i></i></button>
|
<p>신청서 작성 안내</p> <button class="btn_popup_close tooltip-close" data-focus="list_popup_close" title="팝업 닫기"><i></i></button>
|
||||||
@ -46,7 +51,12 @@
|
|||||||
<div class="info_box">
|
<div class="info_box">
|
||||||
<dl>
|
<dl>
|
||||||
<dt>알려드립니다</dt>
|
<dt>알려드립니다</dt>
|
||||||
<dd>2023년도 저작권 체험교실 운영 신청은 2023년 02월27(월) ~ 03월06일(월),<br>9:00 ~ 18:00에 진행되오니 많은 관심 부탁드립니다. 감사합니다.</dd>
|
<c:if test="${detailVO.checkYn eq 'Y' }">
|
||||||
|
<dd><c:out value='${nowYear}'/>년도 저작권 체험교실 운영 신청은 <c:out value='${detailVO.strtPnttm }'/> ~ <c:out value='${detailVO.endPnttm}'/>,<br>9:00 ~ 18:00에 진행되오니 많은 관심 부탁드립니다. 감사합니다.</dd>
|
||||||
|
</c:if>
|
||||||
|
<c:if test="${detailVO.checkYn ne 'Y' }">
|
||||||
|
<dd><c:out value='${nowYear}'/>년도 저작권 체험교실 운영 신청은 <c:out value='${detailVO.strtPnttm }'/> ~ <c:out value='${detailVO.endPnttm}'/>,<br>9:00 ~ 18:00에 진행되었습니다.<br> 현재는 신청기간이 아니므로 찾아가는 저작권 교육을 이용하여 주시기 바랍니다. 감사합니다.</dd>
|
||||||
|
</c:if>
|
||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
<div class="title">· 신청서 접수 시 유의사항</div>
|
<div class="title">· 신청서 접수 시 유의사항</div>
|
||||||
@ -69,7 +79,9 @@
|
|||||||
<div class="btn_left">
|
<div class="btn_left">
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_center">
|
<div class="btn_center">
|
||||||
<button type="button" class="btnType05" onclick="goWrite();">확인</button>
|
<c:if test="${detailVO.checkYn eq 'Y' }">
|
||||||
|
<button type="button" class="btnType05" onclick="goWrite();">확인</button>
|
||||||
|
</c:if>
|
||||||
<button type="button" class="btnType02 tooltip-close" data-focus="list_popup_close" data-focus-next="sub40_pop01">취소</button>
|
<button type="button" class="btnType02 tooltip-close" data-focus="list_popup_close" data-focus-next="sub40_pop01">취소</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn_right">
|
<div class="btn_right">
|
||||||
|
|||||||
@ -269,7 +269,8 @@ function delAtchFile(itemId , fileSn){
|
|||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
url: "/offeduadvc/uss/ion/fms/fmsfileDeleteAjax.do",
|
/*url: "/offeduadvc/uss/ion/fms/fmsfileDeleteAjax.do",*/
|
||||||
|
url: "/offeduadvc/web/fms/fmsfileDeleteAjax.do",
|
||||||
data:{ "atchFileId" : itemId , "fileSn" : fileSn},
|
data:{ "atchFileId" : itemId , "fileSn" : fileSn},
|
||||||
dataType:'json',
|
dataType:'json',
|
||||||
cache: false,
|
cache: false,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user