refactor:과거사건등록 수정

This commit is contained in:
hylee 2022-11-08 18:48:21 +09:00
parent f6a7d743a9
commit 0ef3121ffb
16 changed files with 241 additions and 674 deletions

View File

@ -283,6 +283,9 @@ public class ApmController {
paginationInfo.setTotalRecordCount(cmmService.selectPgrCmmListCnt(cmmVO));
model.addAttribute("paginationInfo", paginationInfo);
// reqOlCdPst 값이 있으면 과거사건 조회하지 않음
cmmVO.setReqOlCdPst("2");
model.addAttribute("list", cmmService.selectPgrCmmList(cmmVO));

View File

@ -161,6 +161,8 @@ public class PgrCmmVO extends ComDefaultVO implements Serializable {
private String atchFileId; //첨부파일 아이디
private String reqOlCdPst; //과거사건목록 조회 여부
public String getAdrAdmId() {
return adrAdmId;
}
@ -1144,6 +1146,14 @@ public class PgrCmmVO extends ComDefaultVO implements Serializable {
public void setAtchFileId(String atchFileId) {
this.atchFileId = atchFileId;
}
public String getReqOlCdPst() {
return reqOlCdPst;
}
public void setReqOlCdPst(String reqOlCdPst) {
this.reqOlCdPst = reqOlCdPst;
}

View File

@ -158,6 +158,8 @@ public class AdjReqMgrOffLineController {
Map<String, MultipartFile> fileFr = new LinkedHashMap<>();
Map<String, MultipartFile> fileOr = new LinkedHashMap<>();
System.out.println("==========================================================");
if (!files.isEmpty()) {
Iterator<Map.Entry<String, MultipartFile>> it = files.entrySet().iterator();
@ -201,6 +203,7 @@ public class AdjReqMgrOffLineController {
}
}
System.out.println("==========================================================");
//사용자 유니크 아이디 받아오기
adjReqMgrOffLineVO.setFrstRegisterId(userId);

View File

@ -53,5 +53,7 @@ public interface AdjReqMgrPastService {
Map<String, Object> selectAdjPastCloseTab2(AdjReqMgrPastVO adjReqMgrPastVO);
List<FileVO> fileFindById(AdjReqMgrPastVO adjReqMgrPastVO);
void adjReqMgrPastDeleteAjax(AdjReqMgrPastVO adjReqMgrPastVO);
}

View File

@ -196,5 +196,9 @@ public class AdjReqMgrPastDAO extends EgovAbstractDAO {
return (List<FileVO>) list("adjReqMgrPastDAO.fileFindById", adjReqMgrPastVO);
}
public void deleteById(AdjReqMgrPastVO adjReqMgrPastVO) {
delete("adjReqMgrPastDAO.deleteById", adjReqMgrPastVO);
}
}

View File

@ -1077,6 +1077,12 @@ public class AdjReqMgrPastServiceImpl extends EgovAbstractServiceImpl implements
// TODO Auto-generated method stub
return adjReqMgrPastDAO.fileFindById(adjReqMgrPastVO);
}
@Override
public void adjReqMgrPastDeleteAjax(AdjReqMgrPastVO adjReqMgrPastVO) {
adjReqMgrPastDAO.deleteById(adjReqMgrPastVO);
}

View File

@ -21,11 +21,13 @@ import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import kcc.com.cmm.LoginVO;
import kcc.com.cmm.service.AdrInnorixFileVO;
import kcc.com.cmm.service.EgovCmmUseService;
import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
@ -647,6 +649,27 @@ public class AdjReqMgrPastController {
@RequestMapping(value = {"/kccadr/adjReqMgOff/adjReqMgrPastDeleteAjax.do"}, method = RequestMethod.POST)
public ResponseEntity<RestResponse> adjReqMgrPastDeleteAjax(@RequestBody AdjReqMgrPastVO adjReqMgrPastVO) throws Exception {
//로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getUniqId());
if(userId.equals("")) {
return ResponseEntity.ok(new RestResponse(HttpStatus.UNAUTHORIZED, "로그인이 필요합니다.", LocalDateTime.now()));
}
try {
adjReqMgrPastService.adjReqMgrPastDeleteAjax(adjReqMgrPastVO);
} catch (Exception e) {
return ResponseEntity.ok(new RestResponse(HttpStatus.BAD_REQUEST, "삭제 중 오류가 발생하였습니다.", LocalDateTime.now()));
}
return ResponseEntity.ok(new RestResponse(HttpStatus.OK, "정상적으로 삭제하였습니다.", LocalDateTime.now()));
}
private PgrCmmVO getDntInfo(PgrCmmVO cmmVO) throws Exception {

View File

@ -39,6 +39,9 @@
</isEqual>
WHERE TO_CHAR ( M.SBMT_DE, 'YYYYMMDD' ) BETWEEN #searchStartDt# AND #searchEndDt#
<isNotEmpty property="reqOlCdPst" >
AND M.req_ol_cd !='2'
</isNotEmpty>
<isNotEmpty property="searchCondition" >

View File

@ -1191,8 +1191,14 @@
WHERE ard.ADR_SEQ = #adrSeq#
</select>
<delete id="adjReqMgrPastDAO.deleteById" parameterClass="AdjReqPastVO">
DELETE FROM
ADR_MGR_MASTER
WHERE
adr_seq = #adrSeq#
</delete>
</sqlMap>

View File

@ -71,7 +71,7 @@
function fncDocRegPopup(){
var pop = document.pop ;
commonPopWindowopenForm("/kccadr/adjPgrMgr/apm/popup/docRegPop.do" , "1000", "550", "docRegPop", $("#pop"));
commonPopWindowopenForm("/kccadr/adjPgrMgr/apm/popup/docRegPop.do" , "750", "550", "docRegPop", $("#pop"));
}
function fnc_is_prcs_finish(){

View File

@ -229,6 +229,10 @@
if(control.getUploadFiles().length > 0){
var postObj = new Object();
postObj.innoDirPath = $('#innoDirPath').val();
control.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
control.upload(); // 업로드 시작
}else{
@ -348,6 +352,7 @@
<form id="listForm" name="listForm" method="post" onsubmit="return false;" enctype="multipart/form-data">
<input type="hidden" name="adrSeq" id="adrSeq" value="<c:out value='${AnsVO.adrSeq}'/>" />
<input type="hidden" name="adrSn" id="adrSn" value="<c:out value='${AnsVO.adrSn}'/>" />
<input type="hidden" id="innoDirPath" value="<spring:eval expression="@globalSettings['Globals.Innorix.FilePath']"/>" />
<!-- <input type="hidden" name="adrDocTy" value="10" /> -->
<input type="hidden" name="limitcount" value="3" />

View File

@ -161,6 +161,10 @@ function fn_upload() {
if(control.getUploadFiles().length > 0){
var postObj = new Object();
postObj.innoDirPath = $('#innoDirPath').val();
control.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
control.upload(); // 업로드 시작
}else{
@ -188,7 +192,7 @@ function fn_upload() {
</head>
<body>
<input type="hidden" id="adrSeq" name="adrSeq" value="${adjReqMgrPastVO.adrSeq }">
<input type="hidden" id="p_file_nm_prefix" name="p_file_nm_prefix" value="PST_">
<input type="hidden" id="innoDirPath" value="<spring:eval expression="@globalSettings['Globals.Innorix.FilePath']"/>" />
<div class="cont_wrap">
<!-- cont_tit -->
<div class="cont_tit">

View File

@ -31,6 +31,42 @@ $(document).ready(function(){
//해당 페이지에 대한 권한 체크
_admin_fn_check_authority("adjReqMgrPastList", "div.cont", "ALL");
$('.delBtn').click(function(){
console.log($(this).data('info'));
var resultData = {
"adrSeq": $(this).data('info')
}
$.ajax({
type: "POST",
url: "<c:url value='/kccadr/adjReqMgOff/adjReqMgrPastDeleteAjax.do' />",
data: JSON.stringify(resultData),
dataType:'json',
async: false,
processData: false,
contentType: "application/json",
cache: false,
success: function (returnData) {
console.log('returnData : ', returnData);
if(returnData.status == "OK"){
alert(returnData.data);
location.reload();
}else{
alert(returnData.data);
return false;
}
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
});
});
//권한 체크 결과값으로 후속처리
@ -214,21 +250,31 @@ function fn_goDetail(adrSeq){
<th>저작물종류</th>
<th>조정결과<!-- <button class="sort btn_sort" id="sort_RS.ADR_SEQ">▲</button> --></th>
<th>작성여부</th>
<th>삭제</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list }" varStatus="status">
<tr style=" cursor: pointer;" onclick="fn_goDetail('<c:out value="${list.adrSeq }" />')">
<%-- <tr style=" cursor: pointer;" onclick="fn_goDetail('<c:out value="${list.adrSeq }" />')"> --%>
<tr>
<td>
<c:if test="${adjReqMgrPastVO.searchSortOrd eq 'desc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((adjReqMgrPastVO.pageIndex -1)*adjReqMgrPastVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${adjReqMgrPastVO.searchSortOrd eq 'asc' }">
<c:out value="${ ( paginationInfo.totalRecordCount - ((adjReqMgrPastVO.pageIndex -1)*adjReqMgrPastVO.pageUnit) ) - status.index }"/>
</c:if>
<c:if test="${adjReqMgrPastVO.searchSortOrd eq 'asc' }">
<c:out value="${(adjReqMgrPastVO.pageIndex - 1) * adjReqMgrPastVO.pageUnit + status.count}"/>
</c:if>
</td>
<td><c:out value="${list.adrNo }" /></td>
<td><c:out value="${list.rpplNm }" /></td>
</c:if>
</td>
<td>
<a href="javascript:;" onclick="fn_goDetail('<c:out value="${list.adrSeq }" />')">
<c:out value="${list.adrNo }" />
</a>
</td>
<td>
<a href="javascript:;" onclick="fn_goDetail('<c:out value="${list.adrSeq }" />')">
<c:out value="${list.rpplNm }" />
</a>
</td>
<td><c:out value="${list.prpplNm }" /></td>
<td><c:out value="${list.assPstUsrNm }" /></td>
<td><c:out value="${list.memDeptNm }" /></td>
@ -254,6 +300,9 @@ function fn_goDetail(adrSeq){
</c:otherwise>
</c:choose>
</td>
<td>
<input type="button" class="delBtn" data-info="${list.adrSeq }" value="삭제" />
</td>
</tr>
</c:forEach>
<c:if test="${empty list}">

View File

@ -133,7 +133,21 @@ function goToEntDetailNotice(){
<tr>
<th>종결상태</th>
<td>
<p><kc:code codeId="CC013" code="${mainVO.statCd}"/></p>
<c:choose>
<c:when test="${mainVO.statCd == 305050}">
조정취하
</c:when>
<c:when test="${mainVO.statCd == 304050}">
조정조서종결(성립)
</c:when>
<c:when test="${mainVO.statCd == 307050}">
불성립종결(불성립 / 조정권고 불성립 / 직권조정 불성립)
</c:when>
<c:when test="${mainVO.statCd == 306050}">
직권조정성립
</c:when>
</c:choose>
<%-- <p><kc:code codeId="CC013" code="${mainVO.statCd}"/></p> --%>
</td>
</tr>
<tr>

View File

@ -14,9 +14,73 @@
<meta http-equiv="Content-Language" content="ko" >
<script type="text/javaScript" language="javascript">
$(document).ready(function(){
fn_selectFileList();
});
/*
* list 만들기위한 데이터 가져오기
* */
function fn_selectFileList(){
var resultData = {"adrSeq": $('#adrSeq').val()}
$.ajax({
type: "POST",
url: "<c:url value='/kccadr/adjReqMgOff/popup/selectAdjReqMgrPastFileListAjax.do' />",
data: JSON.stringify(resultData),
dataType:'json',
async: false,
processData: false,
contentType: "application/json",
cache: false,
success: function (returnData) {
fn_makeList(returnData.dataList);
},
error: function (e) { alert("저장에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
/*
* 데이터 list 만들기
* */
function fn_makeList(data){
$('#tbodyId').empty();
var contsStr = "";
$.each(data, function (index, data) {
contsStr +='\t\t\t<tr>'
+'\t\t\t\t<td>'
+'\t\t\t\t\t<p>'+data.frstRegistPnttm+'</p>'
+'\t\t\t\t</td>'
+'\t\t\t\t<td>\n'
+'\t\t\t\t\t'+ data.adrDocTyTx +'\n'
+'\t\t\t\t</td>\n'
+'\t\t\t\t<td>\n'
+'\t\t\t\t\t<a href="/cmm/fms/FileDown.do?atchFileId='+data.atchFileId+'&&fileSn='+data.fileSn+'" title="첨부파일 다운로드" targe="_blank">\n'
+'\t\t\t\t\t\t<p>'+data.orignlFileNm +'\n'
+'\t\t\t\t\t</a>\n'
+'\t\t\t\t</td>\n'
+'\t\t\t</tr>\n';
});
if(data.length == 0)
contsStr='\t\t\t<tr><td colspan="3">문서를 등록해 주세요</td></tr>';
$('#tbodyId').append(contsStr);
}
</script>
<!-- loading bar 2021-11-20 -->
<!-- css -->
<link rel="stylesheet" href="/kccadrPb/adm/css/popup.css">
<link rel="stylesheet" href="/kccadrPb/adm/css/popup.css">
<!-- loading bar 2021-11-20 -->
@ -37,55 +101,6 @@ function fn_egov_downFile(atchFileId, fileSn){
<button type="button" data-tooltip="loading_info_popup" class="btnType01" id="btnType01popupopen" style="display:none;">로딩팝업 나와라 쨘</button>
<button type="button" data-tooltip="loading_info_popup" class="btnType01" id="d_btnType01popupopen" style="display:none;">로딩팝업 나와라 쨘</button>
<!-- 조정비용 안내 -->
<div class="tooltip-wrap">
<div class="popup_wrap loading_info_popup" tabindex="0" data-tooltip-con="loading_info_popup"
data-focus="loading_info_popup" data-focus-prev="loading_info_popup_close">
<div class="popup_tit">
<p>진행 안내-최대 10분까지 소요될 수 있습니다.</p> <button class="btn_popup_close tooltip-close" data-focus-next="loading_info_popup" data-focus="loading_info_popup_close"
title="팝업 닫기" id="btnType01_popup_close"><i></i></button>
</div>
<div class="popup_cont">
<div class="info_wrap" id="btnType01_info_wrap">
<p>문서보기 파일 생성 중 입니다.</p>
<p>STEP1/3 - PDF파일로 변환 중 입니다.</p>
</div>
<!-- <p>아니면 그냥 이렇게 쓰셔도 됩니다! <br> 이런 p태그는 br로 줄 나눠주시면 감사하겠습니다!</p> -->
<div class="load_img">
<img src="/kccadrPb/usr/image/loading.gif" alt="로딩중">
<p>정보를 불러오고 있습니다.</p>
<p class="cf_text">잠시만 기다려주십시오</p>
</div>
</div>
</div>
</div>
<!-- //조정비용 안내 -->
<!-- 조정비용 안내 -->
<div class="tooltip-wrap">
<div class="popup_wrap loading_info_popup" tabindex="0" data-tooltip-con="loading_info_popup"
data-focus="loading_info_popup" data-focus-prev="loading_info_popup_close">
<div class="popup_tit">
<p>진행 안내-최대 10분까지 소요될 수 있습니다.</p> <button class="btn_popup_close tooltip-close" data-focus-next="loading_info_popup" data-focus="loading_info_popup_close"
title="팝업 닫기" id="d_btnType01_popup_close"><i></i></button>
</div>
<div class="popup_cont">
<div class="info_wrap" id="d_btnType01_info_wrap">
<p>선택다운로드 파일 생성 중 입니다.</p>
<p>STEP1/1 - PDF파일로 변환 중 입니다.</p>
</div>
<!-- <p>아니면 그냥 이렇게 쓰셔도 됩니다! <br> 이런 p태그는 br로 줄 나눠주시면 감사하겠습니다!</p> -->
<div class="load_img">
<img src="/kccadrPb/usr/image/loading.gif" alt="로딩중">
<p>정보를 불러오고 있습니다.</p>
<p class="cf_text">잠시만 기다려주십시오</p>
</div>
</div>
</div>
</div>
<!-- //조정비용 안내 -->
<form:form commandName="adjstIncidentVO" id="popCreateForm" name="popCreateForm" method="post" onsubmit="return false;">
<input type="hidden" id="adrNo" name="adrNo" value="<c:out value="${info.adrNo}" />" />
@ -95,72 +110,18 @@ function fn_egov_downFile(atchFileId, fileSn){
<div class="tbType03">
<table>
<colgroup>
<col style="width: 15%">
<col style="width: 15%">
<col style="width: auto;">
<col style="width: 15%;">
<col style="width:15%">
<col style="width:20%">
<col style="width:auto">
</colgroup>
<thead>
<tr>
<!--
<th>일자 <button type="button" class="btn_sort">▲</button></th>
<th>차수</th>
<th>내용</th>
<th>비고</th>
-->
<th>
<input type="checkbox" name="chkAll" value="All" title="모두체크">
일자
<button type="button" class="btn_sort">▲</button>
</th>
<th>등록인</th>
<th>문건명</th>
<th>상대방공개여부</th>
</tr>
<th>일자</th>
<th>유형</th>
<th>문서</th>
</tr>
</thead>
<tbody>
<c:forEach var="list" items="${list}" varStatus="status">
<tr>
<td>
<p>
<c:choose>
<c:when test="${list.adrDocCn1 eq 'Y'}">
<input name="chk" type="checkbox" value="${list.atchFileId}-${list.fileSn}" title="체크">
</c:when>
<c:otherwise></c:otherwise>
</c:choose>
</p>
</td>
<td>
<p>${list.frstRegistPnttm}</p>
</td>
<!-- <td class="td_info"> -->
<!--
<td>
<p>${list.frstRegisterId}</p>
</td>
-->
<td><a href="#">${list.adrDocTy}</a></td>
<td><p>
<c:choose>
<c:when test="${list.adrDocCn1 eq 'Y'}">공개</c:when>
<c:when test="${list.adrDocCn1 eq 'N'}">비공개</c:when>
<c:otherwise>${list.adrDocCn1}</c:otherwise>
</c:choose>
</p></td>
</tr>
</c:forEach>
<c:if test="${empty list}">
<tr><td colspan="3"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
<tbody id="tbodyId">
</tbody>
</table>
</div>
@ -168,8 +129,8 @@ function fn_egov_downFile(atchFileId, fileSn){
<div class="btn_wrap btn_layout01">
<div class="area_left" style="width: 350px;">
<button type="button" class="btnType02" onclick="fnc_view_step_1_popup(); return false;">문서보기</button>
<button type="button" class="btnType02" onclick="fnc_view_download_step_1(); return false;">선택다운로드</button>
<!-- <button type="button" class="btnType02" onclick="fnc_view_step_1_popup(); return false;">문서보기</button> -->
<!-- <button type="button" class="btnType02" onclick="fnc_view_download_step_1(); return false;">선택다운로드</button> -->
</div>
<div class="area_right">
<!-- <button type="button" class="btnType03" onclick="fncGoList(); return false;">목록</button> -->
@ -178,553 +139,5 @@ function fn_egov_downFile(atchFileId, fileSn){
</div>
</form:form>
</body>
<script type="text/javaScript" language="javascript">
$(document).ready(function(){
$("input[name=chkAll]").click(function(){
$("input[name=chk]").prop("checked" , $(this).is(":checked"));
});
});
function fnc_download(p_path, p_file){
var data = new FormData(document.getElementById("popCreateForm"));
data.append("adrSeq" ,$("#adrSeq").val());
if ($("input:checkbox[name=chk]:checked").length==0){
alert("선택한 항목이 없습니다.");
return;
}
$("input:checkbox[name=chk]:checked").each(function(){
var i_var = $(this).val().split('-');
if (i_var.length==2){
fn_egov_downFile(i_var[0], i_var[1]);
}else if (i_var.length==3){
fn_egov_downFileD(p_path, p_file);
//alert("조정신청서 다운로드는 현재 준비중입니다.");
}
});
}
//다운로드 전송 데이터
var d_data;
var d_nDate;
var d_i_1; //checker counter 1
var d_i_1_re; //call counter
var d_i_2; //checker counter 2
var d_i_3; //checker counter 3
//문서보기 클릭상태
var d_is_view = 0; //0-클릭가능, 1-진행중
//선택 다운로드 1.시작 함수
function fnc_view_download_step_1(){
var d = new Date;
//alert(_pad(d.getHours(), "2"));
//alert(_pad(d.getMinutes (), "2"));
//return;
d_nDate = d.getFullYear() + _pad((1 + d.getMonth()), "2") + _pad(d.getDate(), "2") + _pad(d.getHours(), "2") + _pad(d.getMinutes (), "2");
var d_data = new FormData(document.getElementById("popCreateForm"));
d_data.append("adrSeq" ,$("#adrSeq").val());
d_data.append("time_dir" ,d_nDate);
if ($("input:checkbox[name=chk]:checked").length==0){
alert("선택한 항목이 없습니다.");
return;
}
var i_cnt = 0;
$("input:checkbox[name=chk]:checked").each(function(){
var i_var = $(this).val().split('-');
if (i_var.length==2){
//fn_egov_downFile(i_var[0], i_var[1]);
}else if (i_var.length==3){
//alert("조정신청서 다운로드는 현재 준비중입니다.");
i_cnt ++;
}
});
if (i_cnt<1) { //조정신청건이 없으면 바로 다운로드 처리
fnc_download();
}else{ //조정신청건이 있으면 신청 후 다운로드 시작
if (d_is_view==1){
alert("현재 선택다운로드 문서 생성 요청 중입니다.\n잠시만 기다려 주세요~");
return ;
}
d_is_view = 1; //선택다운로드 중임
d_i_1_re = 0; //요청값 초기화
//팝업 띄우기
$("#d_btnType01popupopen").trigger("click");
//요청 함수 호출
fnc_view_download_step_1_after(d_data);
}
}
//선택 다운로드 2.요청 함수 호출
function fnc_view_download_step_1_after(d_data){
setTimeout(function(){
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusDownloadStep1Ajax.do",
data: d_data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
d_i_1 = 1; //파일 생성 checker count 초기화
//파일 생성 checker 함수 호출
fnc_view_download_step_1_checker();
}else{
d_is_view = 0; //선택다운로드 완료
$("#d_btnType01_popup_close").click(); //선택다운로드 창닫기
alert(returnData.message);
}
},
error: function (e) { d_is_view = 0;$("#d_btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
},2000);
}
//선택 다운로드 3.파일 생성 checker 함수 호출
function fnc_view_download_step_1_checker(){
//var data = new FormData(document.getElementById("popCreateForm"));
//data.append("adrSeq" ,$("#adrSeq").val());
var d_data = new FormData(document.getElementById("popCreateForm"));
d_data.append("adrSeq" ,$("#adrSeq").val());
d_data.append("time_dir" ,d_nDate);
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusDownloadStep1CheckerAjax.do",
data: d_data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
//alert("정상적으로 문서보기 신청 되었습니다.");
d_is_view = 0; //선택다운로드 완료
$("#d_btnType01_popup_close").click(); //선택다운로드 창닫기
//생성된 파일 다운로드
fnc_download(returnData.path, returnData.file);
}else{
d_i_1 = d_i_1 + 1; //파일 생성 checker count 증가
if (d_i_1<20) { //체크(현재30번 필요시 값을 늘린다.)
setTimeout(function(){
fnc_view_download_step_1_checker();
},2000);
}else{ //체크에 실패한 경우 2번더 실행한다.(필요시 값을 늘린다.)
setTimeout(function(){
if (d_i_1_re<6){ //요청값 확인
d_i_1_re = d_i_1_re + 1; //요청값 중가
//다시 파일 생성 요청
fnc_view_download_step_1_after(d_data);
}else{
d_is_view = 0; //선택다운로드 완료
$("#d_btnType01_popup_close").click(); //선택다운로드 창닫기
alert(returnData.message);
}
},2000);
}
}
},
error: function (e) { d_is_view = 0;$("#d_btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//file download - 첨부파일
function fn_egov_downFile(atchFileId, fileSn){
window.open("<c:url value='/cmm/fms/FileDown.do?atchFileId="+atchFileId+"&fileSn="+fileSn+"'/>");
}
//file download - PDF변환기로 생성된 파일
function fn_egov_downFileD(p_path, p_file){
window.open("<c:url value='/cmm/fms/FileDownD.do?path="+p_path+"&file="+p_file+"'/>");
}
//pdf viewer
function fn_pdf_viewer(p_file_name, p_time_dir){
window.open("<c:url value='/web/kccadr/pdf/pdfview.do?webFile="+p_file_name+"&time_dir="+p_time_dir+"'/>");
}
//문서보기 전송 데이터
var data;
var nDate;
var i_1; //checker counter 1
var i_1_re; //call counter
var i_2; //checker counter 2
var i_2_re; //call counter
var i_3; //checker counter 3
var i_3_re; //call counter
//문서보기 클릭상태
var is_view = 0; //0-클릭가능, 1-진행중
function _pad(n, width) {
n = n + '';
return n.length >= width ? n : new Array(width - n.length + 1).join('0') + n;
}
function fnc_view_step_1_popup(){
var d = new Date;
nDate = d.getFullYear() + _pad((1 + d.getMonth()), "2") + _pad(d.getDate(), "2") + _pad(d.getHours(), "2") + _pad(d.getMinutes (), "2");
data = new FormData(document.getElementById("popCreateForm"));
data.append("adrSeq" ,$("#adrSeq").val());
data.append("nDate" ,nDate);
if (is_view==1){
alert("현재 문서 생성 요청 중입니다.\n잠시만 기다려 주세요~");
return ;
}
if (confirm("문서보기 하시겠습니까?")) {
is_view = 1; //문서보기 중임
i_1_re = 0; //요청값 초기화
i_2_re = 0; //요청값 초기화
i_3_re = 0; //요청값 초기화
//팝업 띄우기
$("#btnType01popupopen").trigger("click");
setTimeout(function(){
fnc_view_step_1_test(); //문서보기 1단계 - 파일 생성
},2000);
}
}
//문서보기 1단계 - 파일 생성
function fnc_view_step_1_test(){
data = new FormData(document.getElementById("popCreateForm"));
data.append("adrSeq" ,$("#adrSeq").val());
data.append("time_dir" ,nDate);
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep1Ajax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
i_1 = 1; //문서보기 step1 checker count 초기화
//문서보기 step1 checker 함수 호출
fnc_view_step_1_checker();
}else{
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
alert(returnData.message);
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//문서보기 1단계 - 파일 생성 체커
function fnc_view_step_1_checker(){
//var data = new FormData(document.getElementById("popCreateForm"));
//data.append("adrSeq" ,$("#adrSeq").val());
//alert("현재 준비중입니다.");
//$("#btnType01popupopen").trigger("click");
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep1CheckerAjax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
//문서보기 2단계 - 단권화 실행
fnc_view_step_2();
}else{
i_1 = i_1 + 1; //문서보기 checker count 증가
$("#btnType01_info_wrap").html('<p>문서보기 파일 생성 중 입니다.</p><p>STEP1/3 - PDF 파일 생성 중 입니다.</p>'); //팝업 문구 변경
if (i_1<20) { //체크(현재30번 필요시 값을 늘린다.)
setTimeout(function(){
fnc_view_step_1_checker(); //문서보기 1단계 - 파일 생성 체커
},2000);
}else{
if (i_1_re<8){ //요청값 확인
i_1_re = i_1_re + 1; //요청값 중가
//다시 문서보기 생성 요청
fnc_view_step_1_test();
}else{
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
alert(returnData.message);
}
}
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//문서보기 2단계 - 단권화 실행
function fnc_view_step_2(){
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep2Ajax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
i_2 = 1;
fnc_view_step_2_checker();
}else{
is_view = 0;
$("#btnType01_popup_close").click();
alert(returnData.message);
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//문서보기 2단계 - 단권화 실행 체커
function fnc_view_step_2_checker(){
//var data = new FormData(document.getElementById("popCreateForm"));
//data.append("adrSeq" ,$("#adrSeq").val());
//alert("현재 준비중입니다.");
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep2CheckerAjax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
fnc_view_step_3(); //문서 병합 실행
}else{
i_2 = i_2 + 1;
$("#btnType01_info_wrap").html('<p>문서보기 파일 생성 중 입니다.</p><p>STEP2/3 - PDF 파일 병합 중 입니다.</p>'); //팝업 문구 변경
if (i_2<30) {
setTimeout(function(){
fnc_view_step_2_checker();
},2000);
}else{
if (i_2_re<3){ //요청값 확인
i_2_re = i_2_re + 1; //요청값 중가
//다시 문서병합 요청
fnc_view_step_2();
}else{
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
alert(returnData.message);
}
}
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//문서보기 3단계 - 북마크 실행
function fnc_view_step_3(){
//var data = new FormData(document.getElementById("popCreateForm"));
//data.append("adrSeq" ,$("#adrSeq").val());
//alert("현재 준비중입니다.");
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep3Ajax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
i_3 = 1;
fnc_view_step_3_checker();
}else{
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
alert(returnData.message);
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
//문서보기 3단계 - 북마크 실행 체커
function fnc_view_step_3_checker(){
//var data = new FormData(document.getElementById("popCreateForm"));
//data.append("adrSeq" ,$("#adrSeq").val());
//alert("현재 준비중입니다.");
$.ajax({
type: "POST",
url: "/web/kccadr/accdnt/ars/tab/adjstReqStatusTabStatusStep3CheckerAjax.do",
data: data,
dataType:'json',
async: false,
processData: false,
contentType: false,
cache: false,
success: function (returnData, status) {
console.log(returnData.result);
//alert(returnData.result);
if(returnData.result == 'SUCCESS'){
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
fn_pdf_viewer(returnData.webFile, nDate); //생성된 파일 미리보기
}else{
i_3 = i_3 + 1;
$("#btnType01_info_wrap").html('<p>문서보기 파일 생성 중 입니다.</p><p>STEP3/3 - PDF 파일 북마크 생성 중 입니다.</p>'); //팝업 문구 변경
if (i_3<30) {
setTimeout(function(){
fnc_view_step_3_checker();
},2000);
}else{
if (i_3_re<3){ //요청값 확인
i_3_re = i_3_re + 1; //요청값 중가
//문서보기 3단계 - 북마크 실행
fnc_view_step_3();
}else{
is_view = 0; //문서보기 완료
$("#btnType01_popup_close").click(); //팝업 닫기
alert(returnData.message);
}
}
}
},
error: function (e) { is_view = 0;$("#btnType01_popup_close").click();alert("요청에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
</script>
</html>

View File

@ -11,6 +11,8 @@ if (request.getMethod().equals("POST"))
directory = "/usr/local/tomcat/file/sht/";
int maxPostSize = 2147482624; // bytes
InnorixUpload uploader = new InnorixUpload(request, response, maxPostSize, directory);
/*
@ -33,6 +35,26 @@ if (request.getMethod().equals("POST"))
String _type = uploader.getParameter("type"); // 커스텀 정의 POST Param 1
String _part = uploader.getParameter("part"); // 커스텀 정의 POST Param 2
String _transferId = uploader.getParameter("_transferId"); // TransferId
String _innoFilePath = uploader.getParameter("innoDirPath"); // 커스텀 정의 POST Param 2
/*
현재 페이지를 호출하는 jsp에서
<input type="hidden" id="innoDirPath" value="<spring:eval expression="@globalSettings['Globals.Innorix.FilePath']"/>" />
위 코드를 작성하고
control.upload() 전에
var postObj = new Object();
postObj.innoDirPath = $('#innoDirPath').val();
control.setPostData(postObj); // 업로드시 함께 전달될 POST Param 추가
위 코드를 넣어 줘야 함
*/
uploader.setDirectory(_innoFilePath);
String _run_retval = uploader.run();
// 개별파일 업로드 완료