이지우 - 저작권체험교실 신청서 업로드 추가

This commit is contained in:
jiwoo 2024-01-24 15:07:26 +09:00
parent 9e744c0690
commit ea6c4a40c5
11 changed files with 330 additions and 11 deletions

View File

@ -122,6 +122,9 @@ public class ExprnClsrmAplctServiceImpl implements ExprnClsrmAplctService {
String eduAplctOrd = eduAplctGnrService.getNextStringId(); // 고유ID
vEEduAplctVO.setEduAplctOrd(eduAplctOrd);
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30); //강의 구분 코드 체험교실
if("30".equals(vEEduAplctVO.getLctrDivCd())){
vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId);
}
//vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
vEEduAplctVO.setUserId(loginVO.getUniqId());
vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id

View File

@ -118,6 +118,9 @@ public class OprtnAplctMngServiceImpl implements OprtnAplctMngService {
vEEduAplctVO.setEduAplctOrd(eduAplctOrd);
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30); //강의 구분 코드 체험교실
vEEduAplctVO.setOprtnFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
if("30".equals(vEEduAplctVO.getLctrDivCd())){
vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId);
}
if(!"Y".equals(vEEduAplctVO.getAdminInsert())) {
vEEduAplctVO.setUserId(loginVO.getUniqId());
vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id
@ -192,6 +195,9 @@ public class OprtnAplctMngServiceImpl implements OprtnAplctMngService {
//step3.파일 처리====================================
vEEduAplctVO.setLctrDivCd(VeConstants.LCTR_DIV_CD_30); //강의 구분 코드 체험교실
vEEduAplctVO.setOprtnFileId(s_scholSealAtchFileId); //학교장직인 첨부파일
if("30".equals(vEEduAplctVO.getLctrDivCd())){
vEEduAplctVO.setScholSealAtchFileId(s_scholSealAtchFileId);
}
if(!"Y".equals(vEEduAplctVO.getAdminInsert())) {
vEEduAplctVO.setUserId(loginVO.getUniqId());
vEEduAplctVO.setFrstRegisterId(loginVO.getUniqId()); //esntl_id

View File

@ -200,9 +200,7 @@
<isNotEmpty property="title">
, title = #title#
</isNotEmpty>
<isNotEmpty property="anncmCn">
, anncm_cn = #anncmCn#
</isNotEmpty>
<isNotEmpty property="popupCn">
, popup_cn = #popupCn#
</isNotEmpty>

View File

@ -375,6 +375,14 @@
<c:out value='${info.popupCn}'/>
</td>
</tr> --%>
<tr>
<th scope="row">
<p>내용</p>
</th>
<td>
<c:out value="${info.anncmCn}" escapeXml="false" />
</td>
</tr>
<tr>
<th scope="row">
<p>사용여부</p>

View File

@ -386,6 +386,33 @@
</tr> --%>
</tbody>
</table>
</div>
<!-- 운영계획 -->
<div class="tb_tit01">
<p>신청서</p>
</div>
<div class="tb_type02">
<table>
<colgroup>
<col style="width: 20%;">
<col style="width: 30%;">
<col style="width: 20%;">
<col style="width: 30%;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectBBSFileInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
</tbody>
</table>
</div>
<!-- 운영계획 -->

View File

@ -357,12 +357,12 @@
$("#needTxtbNum").focus();
return false;
}
/*if($(".uploaded_obj").length == 0){
if($(".uploaded_obj").length == 0){
alert("파일을 첨부해 주세요.");
return false;
}
if($("#agree1").length > 0 && !$('#agree1').prop('checked')){
/* if($("#agree1").length > 0 && !$('#agree1').prop('checked')){
alert('개인정보 이용 약관에 동의해주세요.');
return false;
} */
@ -510,7 +510,8 @@
<input type="hidden" name="aprvlCd" id="aprvlCd" value="${info.aprvlCd}"/><!-- 승인코드 -->
<input type="hidden" name="dBirth" id="dBirth" value=""/><!-- dBirth -->
<input type="hidden" name="exprnClsrnYear" id="exprnClsrnYear" value=""/><!-- exprnClsrnYear -->
<input type="hidden" name="limitcount" id="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="allrowFileExtsn" id="allrowFileExtsn" value="JPG,PNG,BMP,PDF,DOC,DOCX,PPT,PPTX,HWP" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="mode" id="mode" value="${vEPrcsDetailVO.mode}" />
<input type="hidden" name="prcsOrd" id="prcsOrd" value="${detailVO.prcsAplctPrdOrd}" /> <!-- 교육과정신청기간 ID -->
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
@ -783,7 +784,20 @@
<input type="text" name="needTxtbNum" id="needTxtbNum" onkeyup="onlyNumber(this);" maxlength="3" value="${info.needTxtbNum}" size="20">
</td>
</tr>
<%-- <tr>
</table>
</div>
<div class="tb_tit01">
<p>신청서</p>
</div>
<div class="tb_type02 wirte">
<table>
<colgroup>
<col style="width: 210px;">
<col style="width: auto;">
</colgroup>
<tr>
<th scope="row">
<p class="req_text"><span>필수입력 항목</span>*</p>
<p>첨부파일</p>
@ -861,7 +875,7 @@
</table>
</div>
</td>
</tr> --%>
</tr>
</table>
</div>

View File

@ -716,6 +716,46 @@
</tbody>
</table>
</div>
<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 class="trLength4">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
<tr class="trLength2">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
</tbody>
</table>
</div>
<!-- 서류요청 제출 시만 거래선, 서약서 제출 가능 -->
<form:form id="createForm" name="createForm" commandName="modelVO" onsubmit="return false;">
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />

View File

@ -297,6 +297,35 @@
</tbody>
</table>
</div>
<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: 150px;">
<col style="width: auto;">
<col style="width: 150px;">
<col style="width: auto;">
</colgroup>
<tbody>
<tr>
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">

View File

@ -391,6 +391,45 @@
</table>
</div>
<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 class="trLength4">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
<tr class="trLength2">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
</tbody>
</table>
</div>
<div class="btn_wrap btn_layout01">
<div class="btn_left">

View File

@ -460,6 +460,12 @@
return flag = false;
}
if($(".uploaded_obj").length == 0){
alert("신청서를 첨부해 주세요.");
return false;
}
if($("#agree1").length > 0 && !$('#agree1').prop('checked')){
alert('개인정보 이용 약관에 동의해주세요.');
return false;
@ -487,7 +493,6 @@
}
function callDataSetting(data){
fncReset('Y'); // 데이터 초기화 진행
var info = data.info;
var fileList = data.fileList;
@ -585,7 +590,33 @@
$('duet-date-picker[name=oprtnEndDt]').val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date'))
$('#oprtnEndDt').val(dateFormat(info.oprtnEndDt.replace(/[.]/gi,''), 'date'));
}
var fileTbody = $("#tbody_fiielist");
$.each(fileList, function(idx, 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 td2 = $('<td/>').addClass('td_filesort');
var td3 = $('<td/>').addClass('td_filesize');
var td4 = $('<td/>');
var span1 = $('<span/>').addClass('file_name_text').text(obj.orignlFileNm);
var span2 = $('<span/>').addClass('file_filesort_text').attr('value', obj.fileExtsn).text(obj.fileExtsn);
var span3 = $('<span/>').addClass('file_size_text').attr('value', obj.fileMg).text(obj.fileMg);
var button = $('<button/>').attr('type','button').addClass('btn_del').append($('<i/>')).click(function(){
delAtchFile(obj.atchFileId , obj.fileSn);
});
td1.append(span1);
td2.append(span2);
td3.append(span3);
td4.append(button);
tr.append(hiddenInput).append(td1).append(td2).append(td3).append(td4);
fileTbody.append(tr);
});
if(fileList.length > 0){
$(".no_img_box").hide();
$(".fileAfter").show()
}
}
function fncEtcInputEnable(thisObj){
@ -601,7 +632,6 @@
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
}
</script>
<!-- 팝업을 위한 mask -->
<div class="mask2" onclick="timeLayerUtil()"></div>
@ -616,8 +646,8 @@
<input type="hidden" name="aprvlCd" id="aprvlCd" value=""/><!-- 승인코드 -->
<input type="hidden" name="dBirth" id="dBirth" value=""/><!-- dBirth -->
<input type="hidden" name="exprnClsrnYear" id="exprnClsrnYear" value=""/><!-- exprnClsrnYear -->
<input type="hidden" name="limitcount" id="limitcount" value="3" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="allrowFileExtsn" id="allrowFileExtsn" value="" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="limitcount" id="limitcount" value="1" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="allrowFileExtsn" id="allrowFileExtsn" value="JPG,PNG,BMP,PDF,DOC,DOCX,PPT,PPTX,HWP" /><!-- 최대 업로드 파일갯수 -->
<input type="hidden" name="mode" id="mode" value="${modelVO.mode}" />
<input type="hidden" name="eduAplctOrd" id="eduAplctOrd" value="${info.eduAplctOrd}" />
<input type="hidden" name="oprtnFileId" id="oprtnFileId" value="${info.oprtnFileId}" />
@ -929,6 +959,92 @@
</table>
</div>
<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">
</div>
<dl class="filewrap_div filewrap_exprnClsrmAplctReg">
<dt><p class="req_text"><span>필수입력 항목</span>*</p>신청서 제출</dt>
<dd class="upload_area">
<div class="btn_wrap">
<button type="button" class="btnType01 btn_add_file">신청서 업로드</button>
<button type="button" class="btnType01" onclick="javascript:fn_egov_downFile('<c:out value="${detailVO.atchFileId}"/>','0')">신청서 양식 다운로드</button>
<input type="file" id="file_temp" name="file_temp" class="uploadFile" style="display:none"/>
</div>
<div class="file_wrap no_img_box file_upload_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">
<tr>
<td colspan="3">
<p>첨부하실 파일을 <span>마우스끌어서</span> 넣어주세요.</p>
</td>
</tr>
</tbody>
</table>
</div>
<div class="file_wrap file_list_div fileAfter">
<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="tbody_fiielist" class="tb_file_after">
<c:forEach var="fileList" items="${fileList}" varStatus="status">
<tr class="item_${fileList.atchFileId}_${fileList.fileSn} uploaded_obj">
<input type="hidden" name="fileSize" class="item_file_size" value="${fileList.fileSize}">
<td class="td_filename">
<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">
<div class="cf_left">
<p>최대 <span>3</span>개</p>
<p><span>50MB</span>제한</p>
</div>
</div>
<span class="table_req_text">
※ 학교장 직인이 포함된 운영신청서 파일을 업로드
</span> -->
</dd>
</dl>
<div class="agree_wrap">
<div class="tb_tit01">
<p>개인정보 이용 동의</p>

View File

@ -480,6 +480,45 @@
</table>
</div>
<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 class="trLength4">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
<tr class="trLength2">
<th scope="row">
<p>신청서</p>
</th>
<td>
<c:import url="/cmm/fms/selectScholSealInfs.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${info.scholSealAtchFileId}" />
</c:import>
</td>
</tr>
</tbody>
</table>
</div>
<div class="tb_tit01">
<div class="tb_tit01_left" style="display: block;">
<p>차시별 운영계획</p>