This commit is contained in:
subsub 2024-01-16 17:51:45 +09:00
commit 81654a50e1
12 changed files with 760 additions and 496 deletions

View File

@ -197,6 +197,10 @@ public class ExprnClsrmAplctServiceImpl implements ExprnClsrmAplctService {
//저장전 암호화 - VO 단위로 만들어서 사용 //저장전 암호화 - VO 단위로 만들어서 사용
vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO); vEEduAplctVO = egovCryptoUtil.encryptVEEduAplctVOInfo(vEEduAplctVO);
//체험교실 결과보고 완료 관리자가 상태를 서류제출로 변경 > 사용자가 서류 제출 상태값이 50이 되지만 이미 결과보고도 완료한 상태이기 때문에 상태값을 60(결과보고완료)으로 업데이트
if("30".equals(vEEduAplctVO.getLctrDivCd()) && "50".equals(vEEduAplctVO.getAprvlCd()) && "10".equals(vEEduAplctVO.getExprnAprvlCd())) {
vEEduAplctVO.setAprvlCd("60");
}
//수정 //수정
vEEduAplctService.update(vEEduAplctVO); vEEduAplctService.update(vEEduAplctVO);
@ -211,7 +215,14 @@ public class ExprnClsrmAplctServiceImpl implements ExprnClsrmAplctService {
veEduOprtnService.update(oprtn); veEduOprtnService.update(oprtn);
//저작권 체험교실 서류제출 차시별 운영계획서 제출 //저작권 체험교실 서류제출 차시별 운영계획서 제출
if("30".equals(vEEduAplctVO.getLctrDivCd()) && "50".equals(vEEduAplctVO.getAprvlCd())) { if("30".equals(vEEduAplctVO.getLctrDivCd()) && ("50".equals(vEEduAplctVO.getAprvlCd()) || "60".equals(vEEduAplctVO.getAprvlCd()))) {
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); //교육신청순번
vEEduChasiVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
//기존 차시 삭제
vVEEduChasiDAO.delete(vEEduChasiVO);
//차시 저장 //차시 저장
String[] s_eduHopeDt = request.getParameterValues("eduHopeDt"); String[] s_eduHopeDt = request.getParameterValues("eduHopeDt");
String[] s_strtTm = request.getParameterValues("strtTm"); String[] s_strtTm = request.getParameterValues("strtTm");
@ -221,9 +232,6 @@ public class ExprnClsrmAplctServiceImpl implements ExprnClsrmAplctService {
String[] s_lrnCn = request.getParameterValues("lrnCn"); String[] s_lrnCn = request.getParameterValues("lrnCn");
String[] s_rmrks = request.getParameterValues("rmrks"); String[] s_rmrks = request.getParameterValues("rmrks");
VEEduChasiVO vEEduChasiVO = new VEEduChasiVO();
vEEduChasiVO.setEduAplctOrd(vEEduAplctVO.getEduAplctOrd()); //교육신청순번
vEEduChasiVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
for (int i=0;i<s_eduHopeDt.length;i++) { for (int i=0;i<s_eduHopeDt.length;i++) {
String eduChasiOrd = eduChasiGnrService.getNextStringId(); // 교육차시 순번 String eduChasiOrd = eduChasiGnrService.getNextStringId(); // 교육차시 순번

View File

@ -187,6 +187,7 @@ public class ExprnClsrmEndController {
model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("paginationInfo", paginationInfo);
//대상 리스트, 페이징 정보 전달 //대상 리스트, 페이징 정보 전달
model.addAttribute("list", vEEduAplctVOList); model.addAttribute("list", vEEduAplctVOList);
model.addAttribute("cnt", vEEduAplctVOList.size());
return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList"; return "/web/ve/aplct/cpyrgExprnClsrm/exprnClsrmEnd/exprnClsrmEndList";
} }

View File

@ -141,8 +141,8 @@ input:read-only {
} }
function fileDownLoad() { function fileDownLoad() {
alert("개발전"); /* alert("개발전");
return; return; */
var listForm = document.listForm; var listForm = document.listForm;
listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctFileAllDownLoad.do'/>"; listForm.action = "<c:url value='/kccadr/oprtn/cpyrgExprnClsrm/oprtnAplctFileAllDownLoad.do'/>";
listForm.submit(); listForm.submit();
@ -304,7 +304,7 @@ input:read-only {
<option value='100' <option value='100'
<c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option> <c:if test="${vEEduAplctVO.pageUnit == '100'}">selected</c:if>>100줄</option>
</select> </select>
<button type="button" <button type="button" class="btn_type06" style="height:40px; border:1px solid #3a72db; font-size:16px; border-radius:5px; vertical-align:middle;"
onclick="fileDownLoad();">첨부파일 다운로드</button> onclick="fileDownLoad();">첨부파일 다운로드</button>
<button type="button" class="btn_down_excel" <button type="button" class="btn_down_excel"
onclick="excelDownLoad();">엑셀 다운로드</button> onclick="excelDownLoad();">엑셀 다운로드</button>

View File

@ -144,6 +144,7 @@
<input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" /> <input type="hidden" name="searchSortCnd" value="<c:out value="${vEPrcsDetailVO.searchSortCnd}" />" />
<input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" /> <input type="hidden" name="searchSortOrd" value="<c:out value="${vEPrcsDetailVO.searchSortOrd}" />" />
<input type="hidden" name="eduAplctOrd" value="" /> <input type="hidden" name="eduAplctOrd" value="" />
<input type="hidden" name="searchClass" value="Y" />
<input type="hidden" name="aprvlCd" value="60" /> <input type="hidden" name="aprvlCd" value="60" />
<div class="cont_wrap"> <div class="cont_wrap">
<div class="box"> <div class="box">

View File

@ -41,6 +41,7 @@ $(document).ready(function(){
</select> </select>
</div> </div>
<div class="btn_wrap"> <div class="btn_wrap">
<label for="subsearchTxt" class="label">검색어 입력</label>
<input type="text" id="subsearchTxt" placeholder="검색어를 입력해주세요" title="검색어 입력" size="30" value="<c:out value='${searchVO.searchWrd}'/>" > <input type="text" id="subsearchTxt" placeholder="검색어를 입력해주세요" title="검색어 입력" size="30" value="<c:out value='${searchVO.searchWrd}'/>" >
<button type="button" class="btnType01" onclick="javascript:linkPage('1'); return false;" onkeyup="enterkey()"; >검색</button> <button type="button" class="btnType01" onclick="javascript:linkPage('1'); return false;" onkeyup="enterkey()"; >검색</button>
</div> </div>

View File

@ -198,6 +198,7 @@ var _searchYear = "${boardVO.searchYear}";
</select> </select>
</div> </div>
<div class="btn_wrap"> <div class="btn_wrap">
<label for="subsearchTxt" class="label">검색어 입력</label>
<input type="text" id="subsearchTxt" name="searchWrd" placeholder="검색어를 입력해주세요" title="검색어 입력" size="30" value="<c:out value='${searchVO.searchWrd}'/>" > <input type="text" id="subsearchTxt" name="searchWrd" placeholder="검색어를 입력해주세요" title="검색어 입력" size="30" value="<c:out value='${searchVO.searchWrd}'/>" >
<button type="button" class="btnType01" onclick="javascript:linkPage('1'); return false;">검색</button> <button type="button" class="btnType01" onclick="javascript:linkPage('1'); return false;">검색</button>
</div> </div>

View File

@ -269,7 +269,7 @@
return false; return false;
} }
if($('#trgtGrade').val() == ''){ /* if($('#trgtGrade').val() == ''){
alert('대상학년/반을 입력해주세요.'); alert('대상학년/반을 입력해주세요.');
$("#trgtGrade").focus(); $("#trgtGrade").focus();
return false; return false;
@ -327,7 +327,7 @@
if(oprtnStrtDtDate < todayDate) { if(oprtnStrtDtDate < todayDate) {
alert('시작일 오늘 이후의 날짜로 입력해주세요.'); alert('시작일 오늘 이후의 날짜로 입력해주세요.');
return flag = false; return flag = false;
} } */
var trObj = $('.addClassRow').find('tbody > tr').not('.calendar_wrap tr'); var trObj = $('.addClassRow').find('tbody > tr').not('.calendar_wrap tr');
if(trObj.length == 0){ if(trObj.length == 0){
@ -597,7 +597,6 @@
</tr> </tr>
<!-- 서류요청 제출 시만 거래선, 서약서 제출 가능 --> <!-- 서류요청 제출 시만 거래선, 서약서 제출 가능 -->
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<tr> <tr>
<th scope="row"><p>거래선 양식</p></th> <th scope="row"><p>거래선 양식</p></th>
<td> <td>
@ -607,6 +606,7 @@
</p> </p>
</td> </td>
</tr> </tr>
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<tr> <tr>
<th scope="row"><p>서약서 제출</p></th> <th scope="row"><p>서약서 제출</p></th>
<td> <td>
@ -722,93 +722,198 @@
<input type="hidden" name="aprvlCd" id="aprvlCd" value=""/><!-- 승인코드 --> <input type="hidden" name="aprvlCd" id="aprvlCd" value=""/><!-- 승인코드 -->
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}"> <c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<!-- 240115 고객 요청으로 교육신청 단계로 이동 -->
<%-- <div class="tb_tit01">
<div class="tb_tit01_left">
<p>운영 계획</p>
<span class="cf_text">* 항목은 필수 입력 사항입니다.</span>
</div>
</div>
<div class="tb_type01 tb_write tb_input">
<table>
<caption>운영 계획 (th 명)을 입력하는 표</caption>
<colgroup>
<col style="width: 150px;">
<col style="width: auto;">
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p class="req_text"><span>필수입력 항목</span>*</p>
<p>대상학년/반</p>
</th>
<td>
<label for="trgtGrade" class="label">대상 학년 입력</label>
<input type="text" name="trgtGrade" id="trgtGrade" maxlength="20" value="${info.trgtGrade}" size="20">
</td>
</tr>
<tr>
<th scope="row">
<p class="req_text"><span>필수입력 항목</span>*</p>
<p>전체학생 수</p>
</th>
<td>
<label for="trgtPrsnl" class="label">학생 수 입력</label>
<input type="text" name="trgtPrsnl" id="trgtPrsnl" onkeyup="onlyNumber(this);" maxlength="4" value="${info.trgtPrsnl}" size="20"> 명
</td>
<th scope="row">
<p class="req_text"><span>필수입력 항목</span>*</p>
<p>운영시기</p>
</th>
<td class="calendar_td">
<div class="calendar_wrap">
<duet-date-picker identifier="date" name="oprtnStrtDt" value="" pattern="yyyy.MM.dd"/></duet-date-picker>
</div>
~
<div class="calendar_wrap">
<duet-date-picker identifier="date" name="oprtnEndDt" value="" pattern="yyyy.MM.dd"/></duet-date-picker>
</div>
<script src="${pageContext.request.contextPath}/visitEdu/usr/publish/script/duetdatepicker.js"></script>
<script>
$(window).on("load",function(){
//title 변경
$(".startDate .duet-date__input").attr("title","운영시기 시작날짜를 YYYY.MM.DD 형식으로 입력해주세요");
$(".endDate .duet-date__input").attr("title","운영시기 종료날짜를 YYYY.MM.DD 형식으로 입력해주세요");
});
</script>
</td>
</tr>
<tr>
<th scope="row">
<p class="req_text"><span>필수입력 항목</span>*</p>
<p>필요 교재 수량</p>
</th>
<td>
<label for="needTxtbNum" class="label">필요 교재 수량 입력</label>
<input type="text" name="needTxtbNum" id="needTxtbNum" onkeyup="onlyNumber(this);" value="${info.needTxtbNum}" title="필요 교재 수량" size="20" maxlength="4">
</td>
</tr>
</tbody>
</table>
</div> --%>
<div class="tb_tit01"> <div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;"> <div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p> <p>차시별 운영계획</p>
<span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 웅영에따 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span> <span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 운영에 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span>
</div> </div>
<div class="btn_wrap"> <div class="btn_wrap">
<button type="button" class="btnType05" title="교육차시 입력테이블 추가생성" onclick="addEduClassCopyTngr('addClassRow')">교육추가</button> <button type="button" class="btnType05" title="교육차시 입력테이블 추가생성" onclick="addEduClassCopyTngr('addClassRow')">교육추가</button>
</div> </div>
</div> </div>
<c:choose>
<c:when test="${fn:length(chasiList) ne 0}">
<div class="tb_type02 tb_type02_write">
<table class="addClassRow" rowLimit="1" >
<colgroup>
<col style="width: 13%;">
<col style="width: 25%;">
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 10%;">
<col style="width: 6%;">
</colgroup>
<thead>
<tr>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>교육희망일</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>시간</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>학습주제</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>지도내용</th>
<th scope="col">비고</th>
<th scope="col">삭제</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${chasiList}" varStatus="status">
<tr>
<th class="calendar_th">
<div class="calendar_wrap">
<duet-date-picker identifier="date" class="startDate" name="eduHopeDt" value="${list.eduHopeDt}"></duet-date-picker>
</div>
</th>
<td>
<div class="table_time_wrap">
<div class="time_wrap time_select_wrap">
<fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/>
<fmt:formatDate value="${strtTm}" var="strtTt" pattern="kk" />
<fmt:formatDate value="${strtTm}" var="strtMm" pattern="mm"/>
<input type="text" class="time" value="<fmt:formatDate value="${strtTm}" pattern="kk:mm"/>" name="strtTm" title="시작 시간 입력" readonly>
<button type="button" title="팝업 열림" class="time_set_btn"><img src="<c:url value='/visitEdu/usr/publish/images/content/timeIcon.png'/>" alt="시작 시간 선택"></button>
<div class="time_layer">
<div class="time_top">
<p>시간 선택</p>
</div>
<div class="time_cont">
<div class="hours">
<select name="st_hours" class="hours_select" title="시 선택">
<option value="선택">선택</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
</select>
</div>
:
<div class="min">
<select name="st_minute" class="min_select" title="분 선택">
<option value="선택">선택</option>
<option value="00">00</option>
<option value="05">05</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
<option value="30">30</option>
<option value="35">35</option>
<option value="40">40</option>
<option value="45">45</option>
<option value="50">50</option>
<option value="55">55</option>
</select>
</div>
</div>
<button type="button" class="time_close" onclick="timeLayerUtil()" title="팝업 닫기"><i></i>닫기</button>
</div>
</div>
<div class="time_wrap time_select_wrap">
<fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/>
<fmt:formatDate value="${endTm}" var="endTt" pattern="kk" />
<fmt:formatDate value="${endTm}" var="endMm" pattern="mm"/>
<input type="text" class="time" value="<fmt:formatDate value="${endTm}" pattern="kk:mm"/>" name="endTm" title="종료 시간 입력" readonly>
<button type="button" title="팝업 열림" class="time_set_btn"><img src="<c:url value='/visitEdu/usr/publish/images/content/timeIcon.png'/>" alt="종료 시간 선택"></button>
<div class="time_layer">
<div class="time_top">
<p>시간 선택</p>
</div>
<div class="time_cont">
<div class="hours">
<select name="en_hours" class="hours_select" title="시 선택">
<option value="선택">선택</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
</select>
</div>
:
<div class="min">
<select name="en_minute" class="min_select" title="분 선택">
<option value="선택">선택</option>
<option value="00">00</option>
<option value="05">05</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
<option value="30">30</option>
<option value="35">35</option>
<option value="40">40</option>
<option value="45">45</option>
<option value="50">50</option>
<option value="55">55</option>
</select>
</div>
</div>
<button type="button" class="time_close" onclick="timeLayerUtil()" title="팝업 닫기"><i></i>닫기</button>
</div>
</div>(<input type="text" readonly="readonly" value="${list.lrnTm}" class="input_time" name="lrnTm" title="교육 시간">분)
</div>
</td>
<td>
<label for="lrnSbjct" class="label">학습주제</label>
<input type="text" id="lrnSbjct" name="lrnSbjct" value="${list.lrnSbjct}" maxlength="50" placeholder="(예시) 교육 전 저작권 의식조사">
</td>
<td>
<label for="lrnCn" class="label">지도내용</label>
<input type="text"" id="lrnCn" name="lrnCn" value="${list.lrnCn}" maxlength="50">
</td>
<td>
<label for="text" class="label">비고</label>
<input type="text" id="rmrks" name="rmrks" value="${list.rmrks}"maxlength="50" >
</td>
<td><button type="button" class="table_del" onclick="tableDel(this)" title="해당 교육차시 정보 삭제"><img alt="" src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/del_btn.png"></button></td>
</tr>
</c:forEach>
</tbody>
</table>
<script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script>
</div>
</c:when>
<c:otherwise>
<div class="tb_type02 tb_type02_write"> <div class="tb_type02 tb_type02_write">
<table class="addClassRow" rowLimit="1" > <table class="addClassRow" rowLimit="1" >
<colgroup> <colgroup>
@ -977,65 +1082,18 @@
</table> </table>
<script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script> <script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script>
</div> </div>
</c:otherwise>
</c:choose>
</c:if> </c:if>
<c:if test="${info.aprvlCd > VeConstants.EXPRN_APRVL_CD_40}"> <c:if test="${info.aprvlCd > VeConstants.EXPRN_APRVL_CD_40}">
<div class="tb_tit01">
<div class="tb_tit01_left">
<p>운영계획</p>
</div>
</div>
<div class="tb_type01 tb_write">
<table>
<caption>운영계획 (th 명)을 보여주는 표</caption>
<colgroup>
<col style="width: 220px;">
<col style="width: auto;">
<col style="width: 220px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>대상학년/반</p>
</th>
<td>${info.trgtGrade}</td>
</tr>
<tr>
<th scope="row">
<p>대상학생수</p>
</th>
<td>
${info.trgtPrsnl}
</td>
<th scope="row">
<p>운영시기</p>
</th>
<td>
<fmt:parseDate value="${info.oprtnStrtDt}" var="oprtnStrtDt" pattern="yyyyMMdd"/>
<fmt:formatDate value="${oprtnStrtDt}" pattern="yyyy.MM.dd"/>
~
<fmt:parseDate value="${info.oprtnEndDt}" var="oprtnEndDt" pattern="yyyyMMdd"/>
<fmt:formatDate value="${oprtnEndDt}" pattern="yyyy.MM.dd"/>
</td>
</tr>
<tr>
<th scope="row">
<p>필요 교재 수량</p>
</th>
<td>
${info.needTxtbNum}
</td>
</tr>
</tbody>
</table>
</div>
<div class="tb_tit01"> <div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;"> <div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p> <p>차시별 운영계획</p>
<span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 웅영에따 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span> <span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 운영에 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span>
</div> </div>
</div> </div>
<div class="tb_type02 tb_type02_write"> <div class="tb_type02 tb_type02_write">
@ -1070,11 +1128,14 @@
</c:choose> </c:choose>
</th> </th>
<td> <td>
<fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/> ${list.strtTm}
~
${list.endTm}
<%-- <fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/>
<fmt:formatDate value="${strtTm}" pattern="kk:mm"/> <fmt:formatDate value="${strtTm}" pattern="kk:mm"/>
~ ~
<fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/> <fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/>
<fmt:formatDate value="${endTm}" pattern="kk:mm"/> <fmt:formatDate value="${endTm}" pattern="kk:mm"/> --%>
(${list.lrnTm}분) (${list.lrnTm}분)
</td> </td>
<td>${list.lrnSbjct}</td> <td>${list.lrnSbjct}</td>

View File

@ -105,7 +105,7 @@
</div> </div>
</div> </div>
<c:out value="${fn:replace(fn:replace(fn:replace(info.anncmCn, crlt , '<'), crgt , '>'), crlf , '<br/>')}" escapeXml="false"/> <c:out value="${fn:replace(fn:replace(fn:replace(detailVO.anncmCn, crlt , '<'), crgt , '>'), crlf , '<br/>')}" escapeXml="false"/>
<div class="btn_wrap btn_layout01"> <div class="btn_wrap btn_layout01">
<div class="btn_center" style="width: 100%;"> <div class="btn_center" style="width: 100%;">

View File

@ -509,7 +509,7 @@
$('input[name=ppulDclnYn][value='+info.ppulDclnYn+']').prop('checked', true); $('input[name=ppulDclnYn][value='+info.ppulDclnYn+']').prop('checked', true);
$("#chrgNm").val(info.chrgNm); $("#chrgNm").val(info.chrgNm);
$("#chrgSexCd").val(info.chrgSexCd); $('input[name=chrgSexCd][value='+info.chrgSexCd+']').prop('checked', true);
if( isNotEmpty(info.email) && email.length > 0){ if( isNotEmpty(info.email) && email.length > 0){
$("#email1").val(email[0]); $("#email1").val(email[0]);

View File

@ -199,14 +199,19 @@
if(confirm("계획서를 제출하시겠습니까?")){ if(confirm("계획서를 제출하시겠습니까?")){
$("#aprvlCd").val('50'); $("#aprvlCd").val('50');
//결과보고까지 완료 후 서류제출로 원복 된 경우 결과보고 파일이 이미 있으므로 결과보고 완료 상태로 변경
if($('exprnAprvlCd').val() == '10'){
$("#aprvlCd").val('60');
}
$('input[name="scholDivCd"]').val(""); /* 차시 최소시간 체크를 제외하기 위한 임시 scholDivCd를 update 처리에서 제외하기 위함 */ $('input[name="scholDivCd"]').val(""); /* 차시 최소시간 체크를 제외하기 위한 임시 scholDivCd를 update 처리에서 제외하기 위함 */
if($('input[name=oprtnStrtDt]').val() != null){ /* if($('input[name=oprtnStrtDt]').val() != null){
$('input[name=oprtnStrtDt]').val($('input[name=oprtnStrtDt]').val().replace(/[.]/gi, '')); $('input[name=oprtnStrtDt]').val($('input[name=oprtnStrtDt]').val().replace(/[.]/gi, ''));
} }
if($('input[name=oprtnEndDt]').val() != null){ if($('input[name=oprtnEndDt]').val() != null){
$('input[name=oprtnEndDt]').val($('input[name=oprtnEndDt]').val().replace(/[.]/gi, '')); $('input[name=oprtnEndDt]').val($('input[name=oprtnEndDt]').val().replace(/[.]/gi, ''));
} } */
var data = new FormData(document.getElementById("createForm")); var data = new FormData(document.getElementById("createForm"));
@ -244,7 +249,7 @@
return false; return false;
} }
if($('#trgtGrade').val() == ''){ /* if($('#trgtGrade').val() == ''){
alert('대상학년/반을 입력해주세요.'); alert('대상학년/반을 입력해주세요.');
$("#trgtGrade").focus(); $("#trgtGrade").focus();
return false; return false;
@ -302,7 +307,7 @@
if(oprtnStrtDtDate < todayDate) { if(oprtnStrtDtDate < todayDate) {
alert('시작일 오늘 이후의 날짜로 입력해주세요.'); alert('시작일 오늘 이후의 날짜로 입력해주세요.');
return flag = false; return flag = false;
} } */
var trObj = $('.addClassRow').find('tbody > tr').not('.calendar_wrap tr'); var trObj = $('.addClassRow').find('tbody > tr').not('.calendar_wrap tr');
if(trObj.length == 0){ if(trObj.length == 0){
@ -427,7 +432,6 @@
<col style="width: auto;"> <col style="width: auto;">
</colgroup> </colgroup>
<tbody> <tbody>
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<tr> <tr>
<th scope="row"><p>거래선 양식</p></th> <th scope="row"><p>거래선 양식</p></th>
<td> <td>
@ -437,6 +441,7 @@
</p> </p>
</td> </td>
</tr> </tr>
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<tr> <tr>
<th scope="row"><p>서약서 제출</p></th> <th scope="row"><p>서약서 제출</p></th>
<td> <td>
@ -472,9 +477,11 @@
<form:form id="createForm" name="createForm" commandName="modelVO" onsubmit="return false;"> <form:form id="createForm" name="createForm" commandName="modelVO" onsubmit="return false;">
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" /> <input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
<input type="hidden" name="aprvlCd" id="aprvlCd" value=""/><!-- 승인코드 --> <input type="hidden" name="aprvlCd" id="aprvlCd" value=""/><!-- 승인코드 -->
<input type="hidden" name="exprnAprvlCd" id="exprnAprvlCd" value="${info.exprnAprvlCd}"/><!-- 승인코드 -->
<c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}"> <c:if test="${info.aprvlCd eq VeConstants.EXPRN_APRVL_CD_40}">
<div class="tb_tit01"> <!-- 240116 운영계획 신청단계로 이동 -->
<%-- <div class="tb_tit01">
<div class="tb_tit01_left"> <div class="tb_tit01_left">
<p>운영 계획</p> <p>운영 계획</p>
<span class="cf_text">* 항목은 필수 입력 사항입니다.</span> <span class="cf_text">* 항목은 필수 입력 사항입니다.</span>
@ -547,19 +554,200 @@
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div> --%>
<div class="tb_tit01"> <div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;"> <div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p> <p>차시별 운영계획</p>
<span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 웅영에따 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span> <span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 운영에 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span>
</div> </div>
<div class="btn_wrap"> <div class="btn_wrap">
<button type="button" class="btnType05" title="교육차시 입력테이블 추가생성" onclick="addEduClassCopyTngr('addClassRow')">교육추가</button> <button type="button" class="btnType05" title="교육차시 입력테이블 추가생성" onclick="addEduClassCopyTngr('addClassRow')">교육추가</button>
</div> </div>
</div> </div>
<c:choose>
<c:when test="${fn:length(chasiList) ne 0}">
<div class="tb_type02 tb_type02_write">
<table class="addClassRow" rowLimit="1" >
<colgroup>
<col style="width: 13%;">
<col style="width: 25%;">
<col style="width: auto;">
<col style="width: 15%;">
<col style="width: 10%;">
<col style="width: 6%;">
</colgroup>
<thead>
<tr>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>교육희망일</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>시간</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>학습주제</th>
<th scope="col"><p class="req_text"><span>필수입력 항목</span>*</p>지도내용</th>
<th scope="col">비고</th>
<th scope="col">삭제</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${chasiList}" varStatus="status">
<tr>
<th class="calendar_th">
<div class="calendar_wrap">
<duet-date-picker identifier="date" class="startDate" name="eduHopeDt" value="${list.eduHopeDt}"></duet-date-picker>
</div>
</th>
<td>
<div class="table_time_wrap">
<div class="time_wrap time_select_wrap">
<fmt:parseDate value="${list.strtTm}" var="strtTm" pattern="kkmm"/>
<fmt:formatDate value="${strtTm}" var="strtTt" pattern="kk" />
<fmt:formatDate value="${strtTm}" var="strtMm" pattern="mm"/>
<input type="text" value="<fmt:formatDate value="${strtTm}" pattern="kk:mm"/>" class="time" name="strtTm" title="시작 시간 입력" readonly>
<button type="button" title="팝업 열림" class="time_set_btn"><img src="<c:url value='/visitEdu/usr/publish/images/content/timeIcon.png'/>" alt="시작 시간 선택"></button>
<div class="time_layer">
<div class="time_top">
<p>시간 선택</p>
</div>
<div class="time_cont">
<div class="hours">
<select name="st_hours" class="hours_select" title="시 선택">
<option value="선택">선택</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
</select>
</div>
:
<div class="min">
<select name="st_minute" class="min_select" title="분 선택">
<option value="선택">선택</option>
<option value="00">00</option>
<option value="05">05</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
<option value="30">30</option>
<option value="35">35</option>
<option value="40">40</option>
<option value="45">45</option>
<option value="50">50</option>
<option value="55">55</option>
</select>
</div>
</div>
<button type="button" class="time_close" onclick="timeLayerUtil()" title="팝업 닫기"><i></i>닫기</button>
</div>
</div>
<div class="time_wrap time_select_wrap">
<fmt:parseDate value="${list.endTm}" var="endTm" pattern="kkmm"/>
<fmt:formatDate value="${endTm}" var="endTt" pattern="kk" />
<fmt:formatDate value="${endTm}" var="endMm" pattern="mm"/>
<input type="text" value="<fmt:formatDate value="${endTm}" pattern="kk:mm"/>" class="time" name="endTm" title="종료 시간 입력" readonly>
<button type="button" title="팝업 열림" class="time_set_btn"><img src="<c:url value='/visitEdu/usr/publish/images/content/timeIcon.png'/>" alt="종료 시간 선택"></button>
<div class="time_layer">
<div class="time_top">
<p>시간 선택</p>
</div>
<div class="time_cont">
<div class="hours">
<select name="en_hours" class="hours_select" title="시 선택">
<option value="선택">선택</option>
<option value="01">01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
<option value="06">06</option>
<option value="07">07</option>
<option value="08">08</option>
<option value="09">09</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
</select>
</div>
:
<div class="min">
<select name="en_minute" class="min_select" title="분 선택">
<option value="선택">선택</option>
<option value="00">00</option>
<option value="05">05</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
<option value="25">25</option>
<option value="30">30</option>
<option value="35">35</option>
<option value="40">40</option>
<option value="45">45</option>
<option value="50">50</option>
<option value="55">55</option>
</select>
</div>
</div>
<button type="button" class="time_close" onclick="timeLayerUtil()" title="팝업 닫기"><i></i>닫기</button>
</div>
</div>(<input type="text" readonly="readonly" value="${list.lrnTm}" class="input_time" name="lrnTm" title="교육 시간">분)
</div>
</td>
<td>
<label for="lrnSbjct" class="label">학습주제</label>
<input type="text" id="lrnSbjct" name="lrnSbjct" value="${list.lrnSbjct}" maxlength="50" placeholder="(예시) 교육 전 저작권 의식조사">
</td>
<td>
<label for="lrnCn" class="label">지도내용</label>
<input type="text"" id="lrnCn" name="lrnCn" value="${list.lrnCn}" maxlength="50">
</td>
<td>
<label for="text" class="label">비고</label>
<input type="text" id="rmrks" name="rmrks"value="${list.rmrks}" maxlength="50" >
</td>
<td><button type="button" class="table_del" onclick="tableDel(this)" title="해당 교육차시 정보 삭제"><img alt="" src="${pageContext.request.contextPath}/visitEdu/usr/publish/images/content/del_btn.png"></button></td>
</tr>
</c:forEach>
</tbody>
</table>
<script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script>
</div>
</c:when>
<c:otherwise>
<div class="tb_type02 tb_type02_write"> <div class="tb_type02 tb_type02_write">
<table class="addClassRow" rowLimit="1" > <table class="addClassRow" rowLimit="1" >
<colgroup> <colgroup>
@ -728,12 +916,16 @@
</table> </table>
<script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script> <script src="<c:url value='/visitEdu/usr/publish/script/duetdatepicker2.js' /> "></script>
</div> </div>
</c:otherwise>
</c:choose>
</c:if> </c:if>
<c:if test="${info.aprvlCd > VeConstants.EXPRN_APRVL_CD_40}"> <c:if test="${info.aprvlCd > VeConstants.EXPRN_APRVL_CD_40}">
<div class="tb_tit01"> <%-- <div class="tb_tit01">
<div class="tb_tit01_left"> <div class="tb_tit01_left">
<p>운영계획</p> <p>운영계획</p>
</div> </div>
@ -782,11 +974,11 @@
</tr> </tr>
</tbody> </tbody>
</table> </table>
</div> </div> --%>
<div class="tb_tit01"> <div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;"> <div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p> <p>차시별 운영계획</p>
<span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 웅영에따 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span> <span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 운영에 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span>
</div> </div>
</div> </div>
<div class="tb_type02 tb_type02_write"> <div class="tb_type02 tb_type02_write">

View File

@ -373,10 +373,10 @@
<p>생년월일</p> <p>생년월일</p>
</th> </th>
<td> <td>
<c:if test="${not empty info.dBirth}"> <c:if test="${not empty info.DBirth}">
<c:set var="birthYear" value="${fn:substring(info.dBirth, 0, 4)}"/> <c:set var="birthYear" value="${fn:substring(info.DBirth, 0, 4)}"/>
<c:set var="birthMonth" value="${fn:substring(info.dBirth, 4, 6)}"/> <c:set var="birthMonth" value="${fn:substring(info.DBirth, 4, 6)}"/>
<c:set var="birthDay" value="${fn:substring(info.dBirth, 6, 8)}"/> <c:set var="birthDay" value="${fn:substring(info.DBirth, 6, 8)}"/>
</c:if> </c:if>
${birthYear}년 ${birthMonth}월 ${birthDay}일 ${birthYear}년 ${birthMonth}월 ${birthDay}일
</td> </td>
@ -460,11 +460,12 @@
<p>운영시기</p> <p>운영시기</p>
</th> </th>
<td> <td>
<fmt:parseDate value="${info.oprtnStrtDt}" var="oprtnStrtDt" pattern="yyyyMMdd"/> ${info.oprtnStrtDt} ~ ${info.oprtnEndDt}
<%-- <fmt:parseDate value="${info.oprtnStrtDt}" var="oprtnStrtDt" pattern="yyyyMMdd"/>
<fmt:formatDate value="${oprtnStrtDt}" pattern="yyyy.MM.dd"/> <fmt:formatDate value="${oprtnStrtDt}" pattern="yyyy.MM.dd"/>
~ ~
<fmt:parseDate value="${info.oprtnEndDt}" var="oprtnEndDt" pattern="yyyyMMdd"/> <fmt:parseDate value="${info.oprtnEndDt}" var="oprtnEndDt" pattern="yyyyMMdd"/>
<fmt:formatDate value="${oprtnEndDt}" pattern="yyyy.MM.dd"/> <fmt:formatDate value="${oprtnEndDt}" pattern="yyyy.MM.dd"/> --%>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -482,7 +483,7 @@
<div class="tb_tit01"> <div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;"> <div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p> <p>차시별 운영계획</p>
<span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 웅영에따 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span> <span class="cf_text2" style="display:block; padding-left:0; padding-top: 6px;">※ 운영지원금 지원을 위한 계획서(계획은 운영에 따라 변경 가능)<br/>※ 담당교사의 재량으로 자율 편성하되, 1일 최대 2차시까지만 운영 가능</span>
</div> </div>
</div> </div>
<div class="tb_type02 tb_type02_write"> <div class="tb_type02 tb_type02_write">

View File

@ -72,11 +72,9 @@
<li><span class="number">2.</span>신청 시 공문양식을 다운로드 받아서 반드시 학교장 직인된 공문을 첨부해야 합니다.</li> <li><span class="number">2.</span>신청 시 공문양식을 다운로드 받아서 반드시 학교장 직인된 공문을 첨부해야 합니다.</li>
<li><span class="number">3.</span>신청 시 반드시 본인 계정으로 신청해야 하며, 타인 계정으로 신청 시 신청 취소 처리됩니다.</li> <li><span class="number">3.</span>신청 시 반드시 본인 계정으로 신청해야 하며, 타인 계정으로 신청 시 신청 취소 처리됩니다.</li>
<li><span class="number">4.</span>체험교실 신규 운영 교사는 체험교실 운영 교사 연수(1일, 8시간)를 반드시 이수해야 하며, 체험교실 운영 기간내에 저작권 e-배움터에서 제공하는 온라인 강좌를 의무 이수해야 합니다.</li> <li><span class="number">4.</span>체험교실 신규 운영 교사는 체험교실 운영 교사 연수(1일, 8시간)를 반드시 이수해야 하며, 체험교실 운영 기간내에 저작권 e-배움터에서 제공하는 온라인 강좌를 의무 이수해야 합니다.</li>
<li><span class="number">5.</span>신청기간 내 위원회 업무시간(09:00 ~ 18:00)동안 이용이 가능합니다.</li> <li><span class="number">5.</span>신청교사가 교내에서 확인 가능한 메일 계정을 기재해 주시기 바랍니다.</li>
<!-- <li><span class="number">6.</span>신청기간 내 학교급별(초등, 중등, 고등) 게시판을 반드시 확인 후 신청해 주시기 바랍니다.</li> --> <li><span class="number">6.</span>선정 후 취소(신규 운영 교사 사전 연수 불참 등) 및 운영 포기교실은 차년도 참여를 제한합니다.<br>(해당 내용 학교 공문 발송 예정)</li>
<li><span class="number">6.</span>신청교사가 교내에서 확인 가능한 메일 계정을 기재해 주시기 바랍니다.</li> <li><span class="number">7.</span>신청 시작시간과 마감시간에 유의하시기 바라며, 문의사항은 위원회 업무시간(09:00~18:00) 중<br>체험교실 담당자(055-792-0234)에게 연락주시기 바랍니다.</li>
<li><span class="number">7.</span>신청 중 문의사항은 위원회 체험교실 담당자에게 연락을 주시기 바랍니다(055-792-0234)</li>
<li><span class="number">8.</span>선정 후 취소(신규 운영 교사 사전 연수 불참 등) 및 운영 포기교실은 차년도 참여를 제한합니다.<br>(해당 내용 학교 공문 발송 예정)</li>
</ol> </ol>
</div> </div>
</c:if> </c:if>