You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1182 lines
64 KiB
1182 lines
64 KiB
|
|
<% /** |
|
* **********************************************************@@ Program |
|
* Name : report_regist.jsp Description : Author : 모우미정보통신 |
|
* Create Date : 2010-11-26 History : Modify Date : 2015-03-03 History : Modify Date : 2017-12-12 History : |
|
* 제출자료/접수자료/자료입력 |
|
* @@*********************************************************** |
|
*/ |
|
%> |
|
|
|
<%@ page contentType="text/html; charset=UTF-8" |
|
import="kr.co.kihyun.beans.entity.TotTable.TotTableType" |
|
import="java.net.URLEncoder" |
|
import="kr.co.kihyun.beans.user.HttpSSOLogin" |
|
import="java.net.*" |
|
import="kr.co.kihyun.util.MUtil" |
|
import="kr.co.kihyun.lang.MString" |
|
import="kr.co.kihyun.lang.Encoder" |
|
import="kr.co.kihyun.lang.MInteger" |
|
import="kr.co.kihyun.lang.MLong" |
|
import="kr.co.kihyun.text.html.ServletUtil" |
|
import="kr.co.kihyun.moumi.MoumiConfig" |
|
import="kr.co.kihyun.beans.user.*" |
|
import="kr.co.kihyun.moumi.report.MReport" |
|
import="kr.co.kihyun.moumi.doc.table.MTable" |
|
import="kr.co.kihyun.moumi.doc.table.item.MItem" |
|
import="kr.co.kihyun.beans.totsys.report.ReportRegistManager" |
|
import="kr.co.kihyun.beans.totsys.report.ReportDataSet" |
|
import="kr.co.kihyun.beans.totsys.report.ReportUpdate" |
|
import="kr.co.kihyun.text.html.TagFilter" |
|
import="kr.co.kihyun.beans.totsys.doc.table.item.ItemList" |
|
import="kr.co.kihyun.beans.totsys.menu.MenuBean" |
|
import="kr.co.kihyun.lang.MLong" |
|
import="javax.jdo.PersistenceManager" |
|
import="javax.jdo.Transaction" |
|
import="kr.co.kihyun.beans.entity.util.*" |
|
import="kr.co.kihyun.prop.QueryStringList" |
|
import="kr.co.kihyun.db.CommonDBManager" |
|
import="java.sql.ResultSet" |
|
import="kr.co.kihyun.beans.entity.*"%> |
|
<%@page import="kr.co.kihyun.util.Base64_2"%> |
|
<%@page import="java.util.Map.Entry"%> |
|
<%@page import="java.util.List"%> |
|
<%@page import="kr.co.kihyun.beans.entity.TotDoc"%> |
|
<%@page import="kr.co.kihyun.beans.entity.TotReport"%> |
|
<%@page import="kr.co.kihyun.beans.entity.TotReportProcess"%> |
|
<%@ include file="/totsys/common/inc/sec/secure.inc.jsp"%> |
|
<% |
|
PersistenceManager pm = new MPersistenceManager(PMF.get().getPersistenceManager()); |
|
Transaction tx = pm.currentTransaction(); |
|
try { |
|
Long reportID = MLong.parseLong(request.getParameter("reportID")); |
|
/* 미결함 확인 */ |
|
/**** |
|
boolean isMigulham = false; |
|
if(reportID == null){ |
|
out.println("현재 접속자 수가 많아 서비스가 원할하지 않습니다. 잠시후 이용하여 주시기 바랍니다."); |
|
return; |
|
} |
|
String sql = QueryStringList.CheckPrssStatusSql; |
|
CommonDBManager cdb = new CommonDBManager(); |
|
ResultSet rs = cdb.execQuery(sql, reportID); |
|
if(rs.next()){ |
|
isMigulham = true; |
|
} |
|
rs.close(); |
|
cdb.execClose(); |
|
****/ |
|
/* 미결함 확인 */ |
|
tx.begin(); |
|
TotReport totReport = null; |
|
totReport = pm.getObjectById(TotReport.class, reportID); |
|
Long docId = totReport.getTotDoc().getId(); |
|
int appro = MInteger.parseInt(request.getParameter("appro"),2); |
|
String secuYn = totReport.getSecuYn(); |
|
String usID = HttpSSOLogin.getLoginID(request); |
|
String dtID = HttpSSOLogin.getDeptID(request); |
|
String dpName = HttpSSOLogin.getDeptName(request); |
|
|
|
MDept mDept = pm.getObjectById(MDept.class, dtID); |
|
String comment = Encoder.toKR(MString.checkNull(request.getParameter("comment"))); |
|
int rowCount = MInteger.parseInt(request.getParameter("rowCount"), 1); |
|
int repoState = MInteger.parseInt(request.getParameter("repoState"), 0); |
|
String copyForm = URLDecoder.decode(MString.checkNull(request.getParameter("copyForm")), "UTF-8"); |
|
String tables = MString.checkNull(Encoder.toJava(request.getParameter("tables"))); |
|
String tableRows = MString.checkNull(Encoder.toJava(request.getParameter("tableRows"))); |
|
String totperInfo = MString.checkNull(request.getParameter("totperInfo")); |
|
Long downDocId = MLong.parseLong(request.getParameter("downDocID")); |
|
String tmpMagam = MString.checkNull(Encoder.toJava(request.getParameter("tmpMagam"))); |
|
|
|
String strPage = clearXSS(request.getParameter("strPage"), ""); |
|
String findOption = clearXSS(request.getParameter("findOption"), null); |
|
String findWord = clearXSS(Encoder.toJava(request.getParameter("findWord")), null); |
|
|
|
String modifyMode = clearXSS(request.getParameter("modifyMode"), ""); |
|
//tottable 없을경우 더미 인서트 |
|
if(totReport.getTotDoc().getTotTables().size()==0){ |
|
TotTable totTable = new TotTable(totReport.getTotDoc()); |
|
totTable.setType(TotTableType.DYNA); |
|
totTable.setTypes("1"); |
|
totTable.setItemSize(3); |
|
totTable.setForm("<table><tr><td></td></tr></table>"); |
|
pm.makePersistent(totTable); |
|
totReport.getTotDoc().setForm("<table><tr><td></td></tr></table>"); |
|
} |
|
ReportRegistManager reportRegistManager = new ReportRegistManager(request, totReport.getTotDoc(), rowCount, tableRows); |
|
|
|
int tableType = reportRegistManager.getTableType(); |
|
String insertForm = reportRegistManager.getInsertForm(); |
|
String baseInsertForm = reportRegistManager.getInsertForm(); |
|
String putValScript = reportRegistManager.getPutValScript(); |
|
String changeAllScript = reportRegistManager.getChangeAllScript(); |
|
|
|
// String docName = ""; |
|
String boxName = "acceptbox"; |
|
|
|
if (tableRows.equals("") || tableRows == null) { |
|
tableRows = totReport.getTotDoc().getTotTables().isEmpty() ? "" : totReport.getTotDoc().getTotTables().iterator().next().getTypes().replaceAll("0", "1"); |
|
} |
|
|
|
//tableType = MTable.DYNA; |
|
////////////////////////////////// 동적표에서만 사용 ////////////////////////////////// |
|
String addJavaScript = ""; |
|
String inDataJavaScript = ""; |
|
String hiddenData = ""; |
|
String insertInputCellName = ""; |
|
|
|
//if (tableType == MTable.DYNA) { |
|
addJavaScript = reportRegistManager.getAddJavaScript(); |
|
inDataJavaScript = reportRegistManager.getInDataJavaScript(); |
|
hiddenData = reportRegistManager.getHiddenData(); |
|
insertInputCellName = reportRegistManager.getInsertInputCellName(); |
|
//} |
|
|
|
//=========================================서식정합성체크 시 사용==================================== |
|
if (modifyMode.equals("addRow") || modifyMode.equals("delRow")) { |
|
session.setAttribute("insertInputCellName", insertInputCellName); |
|
} |
|
|
|
String insertInputCellNameFromSession = (String) session.getAttribute("insertInputCellName"); |
|
if (insertInputCellNameFromSession == null) { |
|
insertInputCellNameFromSession = insertInputCellName; |
|
} |
|
//================================================================================================== |
|
|
|
reportRegistManager = null; |
|
session.setAttribute("regSuccTargetURI", "/totsys/repoper/mydocbox/returnbox/report_list.jsp"); |
|
String isCopyForm = "N"; |
|
if (!copyForm.equals("")) { |
|
isCopyForm = "Y"; |
|
ReportDataSet reportDataSet = new ReportDataSet(); |
|
|
|
insertForm = reportDataSet.setForm(insertForm, copyForm); |
|
if (reportDataSet.getChange() == 0) { |
|
//입력하신 서식이 등록서식과 같지 않거나 오류가 존재합니다. |
|
%> |
|
<script>alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.formError")%>')</script> |
|
<% |
|
} else { |
|
inDataJavaScript = ""; |
|
} |
|
} |
|
|
|
|
|
String doctName2 = totReport.getTotDoc().getName(); |
|
String boardGroupID = Category.ID_TOT_DOC_COMMENT; |
|
String url = clearXSS(request.getParameter("url"), ""); |
|
|
|
if (url == null) { |
|
url = ""; |
|
} |
|
|
|
String boardContents = ""; |
|
|
|
Board totperComment = totReport.getTotDoc().getBoard(); |
|
Long boardId = totReport.getTotDoc().getBoard().getId(); |
|
|
|
if (totperComment.getContents() != null ) { |
|
boardContents = TagFilter.convertSpace(totperComment.getContents()); |
|
} |
|
|
|
int appType = 0; |
|
if (totReport.getTotDoc().getAppendType() == TotDocAppendType.FILE) { |
|
appType = 1; |
|
} else if (totReport.getTotDoc().getAppendType() == TotDocAppendType.SYSTEM) { |
|
appType = 3; |
|
} |
|
tx.commit(); |
|
|
|
%> |
|
<!DOCTYPE html> |
|
<html lang="ko"> |
|
<head> |
|
<meta charset="UTF-8"> |
|
<title><%=MoumiConfig.getTitle()%></title> |
|
<link rel="stylesheet" href="/totsys/common/css/text.css" type="text/css"> |
|
<link rel="stylesheet" href="/totsys/common/css/kecttep.css" type="text/css"> |
|
<link rel="stylesheet" href="/totsys/common/css/tabs.css" type="text/css"> |
|
<link rel="stylesheet" href="/totsys/common/css/SquareButtons.css" type="text/css"> |
|
<link rel="stylesheet" href="/totsys/common/css/contentStyle.css" type="text/css"> |
|
<link rel="stylesheet" href="/totsys/common/css/basic.css" type="text/css"> |
|
<script src="/totsys/common/js/rollover.js"></script> |
|
<script src="/totsys/common/js/util.js"></script> |
|
<script src="/totsys/common/js/calendar.js"></script> |
|
<script src="/totsys/common/js/drag.js"></script> |
|
<script src="/totsys/common/js/popup.js"></script> |
|
<script src="/totsys/common/js/jquery-1.12.4.min.js"></script> |
|
<script src="/totsys/common/js/jquery.custom.indicator.js"></script> |
|
<script src="/totsys/common/js/jquery.fixFormTable.js"></script> |
|
<script> |
|
//====================================서식정합성체크 시 사용되는 변수================================= |
|
var cellNames = "<%=insertInputCellNameFromSession%>"; |
|
var validDate = /^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$/; |
|
var validNum = /^[-]?\d+(?:[.]\d+)?$/; |
|
var validCharZero = /.*\..*0$/; |
|
// var validCharZeroSt = /^0\d/; |
|
//================================================================================================== |
|
|
|
/* |
|
* 목록페이지로 이동처리하는 함수 |
|
*/ |
|
function fn_goToList() { |
|
document.listForm.submit(); |
|
} |
|
|
|
function fn_recogCheck() { |
|
alert('제출자료가 접수상태가 아닙니다. \n제출진행자료 또는 전체제출자료에서 확인하시기 바랍니다.'); |
|
fn_goToList(); |
|
return; |
|
} |
|
|
|
function nextblur(type) { |
|
var items = "<%=insertInputCellName%>"; |
|
var count = 0; |
|
splitItems = items.split(","); |
|
|
|
for (i = 0; i < splitItems.length; i++) { |
|
if (splitItems[i] == type) |
|
break; |
|
count++; |
|
} |
|
if (splitItems.length <= count + 1) |
|
dform[type].blur(); |
|
else |
|
dform[splitItems[count + 1]].focus(); |
|
} |
|
|
|
function NotDocGO() { |
|
var bool = confirm('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.notTrans")%>'); |
|
if (bool) { |
|
NotDoc.submit(); |
|
} else |
|
return; |
|
} |
|
<%= putValScript%> |
|
function changeAll() { |
|
<%= changeAllScript%> |
|
} |
|
|
|
/********** userfile list와 serverfile list를 배열로 저장 **********/ |
|
function viewFrm(num) { |
|
name = "fileUp" + num; |
|
eval(name + ".style.visibility = \"visible\";"); |
|
eval(name + ".style.display = \"block\";"); |
|
dform.upFile.focus(); |
|
} |
|
|
|
function viewNote() { |
|
var width = 600; |
|
var height = 450; |
|
var leftpos = (screen.width - width) / 2; |
|
var toppos = (screen.height - height) / 2; |
|
window.open("/totsys/common/web/note/popup_note.jsp", "", "width=" + width + ", height=" + height + ", toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,left= " + leftpos + " ,top= " + toppos); |
|
} |
|
|
|
function deptCheck(insertType) { |
|
if($(":input:radio[name=appro]:checked").val() == undefined || $(":input:radio[name=appro]:checked").val() == ''){ |
|
alert("자료공람 여부를 선택하여야 합니다."); |
|
dform.appro.focus(); |
|
return; |
|
|
|
} |
|
|
|
if (insertType != 3 && !fn_CellValueCheck()) { |
|
return false; |
|
} |
|
|
|
if (<%=tableType%> == 1 && <%=appType%> != 1) |
|
{ |
|
var tmp = document.modifyForm.rowCount.value; |
|
if (parseInt(tmp) < 1) |
|
{ |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.addRow")%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
|
|
return false; |
|
} |
|
} |
|
/* 부서코드 입력 안하게 |
|
var url = '/totsys/common/web/dept_check/popup_reportsend.jsp?deptID=<%= dtID%>&deptName=<%= dpName%>'; |
|
var target = 'deptCheck'; |
|
var width = 385; |
|
var height = 221; |
|
var align = 'center'; |
|
var valign = 'middle'; |
|
var scroll = 'no'; |
|
var resize = 'no'; |
|
|
|
<%if (changeAllScript.length() > 0) {%> |
|
changeAll();changeAll();changeAll();changeAll(); |
|
<%}%> |
|
|
|
var farwindow = null; |
|
farwindow = getOpener(url, target, width, height, align, valign, scroll, resize); |
|
farwindow.focus(); |
|
*/ |
|
|
|
/* |
|
if(<%=secuYn%> == null || <%=secuYn%> == ""){ |
|
if(confirm("입력한 자료를 보안지정 하시겠습니까? ")){ |
|
secuYn = "Y"; |
|
}else{ |
|
secuYn = "N"; |
|
} |
|
} |
|
document.dform.secuYn.value = secuYn; |
|
*/ |
|
|
|
dform.insertType.value = insertType; |
|
dform.acptNum.value = document.getElementById("acptNumForUI").value; |
|
if (insertType == 0) { |
|
if (<%=appType%> == 1) { |
|
//20170822 수정 by wonseok Lee |
|
if (dform.fileCount.value <= 0) { |
|
if (!confirm("<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.notRelationDocAdd")%>")) |
|
return; |
|
} |
|
}else{ |
|
if(!confirm("입력하신 자료를 저장하시겠습니까?")) |
|
return; |
|
} |
|
reportShare(); |
|
dform.submit(); |
|
|
|
}else if (insertType == 3) { |
|
check = confirm("<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.notTrans")%>"); |
|
if (check == true) { |
|
document.dform.stat.value = "1"; |
|
document.dform.target = "hiddenFrame"; |
|
document.dform.callbackFunc.value = "parent.fn_goToList()"; |
|
dform.submit(); |
|
} else { |
|
return; |
|
} |
|
} else { |
|
dform.submit(); |
|
} |
|
} |
|
|
|
|
|
function reportShare(){ |
|
var appro = $(":input:radio[name=appro]:checked"); |
|
dform.appro.value = appro.val(); |
|
if(<%=appType%> != 1){ |
|
modifyForm.appro.value = appro.val(); |
|
} |
|
|
|
} |
|
|
|
//function ShareReport() { |
|
|
|
//dform.appro.value = document.getElementById("appro").value; |
|
//var url = '/totsys/common/web/note/popup_report_share_check.jsp'; |
|
//var rtnValue = window.showModalDialog(url,"popup_report_share_check.jsp","dialogHeight=150px; dialogWidth=400px; center; scroll:no; status:no"); |
|
// 동의하면 다음 단계. 동의하지 않으면 종료 |
|
//if(rtnValue == 'YES') { |
|
// 동의 |
|
// appro = 1; |
|
//} else { |
|
// appro = 0; |
|
// 원래페이지로... |
|
//} |
|
|
|
//var appro = '<%=appro%>'; |
|
//if(appro == null ||appro == "" || appro == 0){ |
|
//if(confirm("확인을 클릭하면 입력하신 자료가 \n부서(학교)내 사용자에게 제출이 완료된 후 공유됩니다. \n\n공유하시겠습니까? ")){ |
|
// appro = 1; |
|
//}else{ |
|
// appro = 0; |
|
//} |
|
//} |
|
//document.dform.appro.value = appro; |
|
//} |
|
|
|
function ShowCopy() { |
|
var appro = $(":input:radio[name=appro]:checked").val(); |
|
window.open('./popup_copy_form.jsp?appro='+appro, 'makecopy', 'width=950,height=770,scrollbars=no,resizable=no'); |
|
} |
|
|
|
function notDoc() { |
|
document.NotDoc.submit(); |
|
} |
|
|
|
function responsibleChange() { |
|
window.open('./popup_rep_transfer.jsp?reportID=<%=reportID%>&boxName=<%=boxName%>&hideUser=false', '', 'width=607, height=546,toolbar=no, directories=no, status=no, menubar=no, resizable=no'); |
|
} |
|
|
|
function connRegist() { |
|
subReg.submit(); |
|
} |
|
/* 나이스 해당없음 상신 시작 */ |
|
// function sendNeisRecog() { |
|
// var target_win = null; |
|
// target_win = window.open("http://<%= request.getServerName().replace("ats", "gan")%>/displayXUI.jsp?mipid=cm.bcm.cfm.rt::bcm_cfmrt00_m01.xfdl&reportID=<%=reportID%>&USER_ID=<%=usID%>&DEPT_CODE=<%=dtID%>&doctName=<%=Base64_2.encode("해당없음자료_") + doctName2%>", "NEIS_POPUP", "width=835px, height=555px, top=0px, left=0px, toolbar=no, scrollbars=no, resizable=no, status=no, location=no, menubar=no, fullscreen=no"); |
|
// } |
|
/* 나이스 해당없음 상신 끝 */ |
|
|
|
/* |
|
* 자료입력 테이블 input element 뒤에 font, span 등의 불필요한 element 를 삭제처리. 시작 |
|
* 2014.08.21 by YoungJun Cho. |
|
*/ |
|
var rownums=[]; |
|
$(document).ready(function() { |
|
$.fixRegistFormTable($("form[name='dform']").find("table"), {}); |
|
//ie10,11 호환성보기 수정 - 테두리 없어지는 문제 수정 |
|
$('[name=dform] > table').attr({'border':'1','bo':'true'}).css('border','1px solid #000') |
|
.find('td').each(function(i,o){ |
|
if($(o).closest('table').attr('bo')=='true'){ |
|
$(this).css('border','1px solid #000'); |
|
} |
|
}); |
|
$('#formDiv span').css('line-height','2'); |
|
if('<%=appType%>'=='1'){ |
|
$('#formDiv').hide(); |
|
} |
|
else{ |
|
//수식 배경색 |
|
$('[iseval=true]').css({'background-color':'#cbddfb'}); |
|
|
|
// // 행번호 표번호 |
|
// setTimeout(setRowNum,500); |
|
} |
|
|
|
}); |
|
function setRowNum(){ |
|
// 행번호 표번호 |
|
$('[name=dform]').css({'position':'relative'}); |
|
$('[name=dform] > table').css('margin-left','20px').each(function(tblidx){ |
|
rownums[tblidx]=0; |
|
$(this).prepend('<caption style="text-align:left;font-size:12px;font-weight:bold;">'+(tblidx+1)+' 번 표</caption>'); |
|
$(this).find('tr').each(function(tridx,tr){ |
|
if($(tr).find('input').length>0||$(tr).find('select').length>0){ |
|
rownums[tblidx]++; |
|
var pos=$(tr).position(); |
|
var top=pos.top; |
|
var left=pos.left; |
|
var trnum=$('<div class="trnum" style="position:absolute;height:'+$(tr).outerHeight()+'px;line-height:'+$(tr).outerHeight()+'px">'+rownums[tblidx]+'.</div>') |
|
.appendTo('[name=dform]'); |
|
if(document.documentMode<10){ |
|
top-=5; |
|
left+=5; |
|
}else{ |
|
left-=trnum.width()+3; |
|
} |
|
trnum.css({'left':left+'px','top':top+'px'}); |
|
} |
|
}); |
|
}); |
|
} |
|
/* 자료입력 테이블 input element 뒤에 font, span 등의 불필요한 element 를 삭제처리. 끝 */ |
|
</script> |
|
<%--if (tableType == MTable.DYNA) {--%> |
|
<script> |
|
//동적 표에서만 사용 |
|
function insertData() { |
|
<%= inDataJavaScript%> |
|
//SelectBox에 표복사입력 시 등록된 값을 설정 |
|
$("select").each(function() { |
|
var selected_val = $(this).attr("selected_val"); |
|
if (selected_val != null) { |
|
$(this).val(selected_val); |
|
} |
|
}); |
|
fn_CellValueCheck(); |
|
//콤보박스 초기값을 처음 값으로 |
|
$('form[name=dform] select').each(function(){ |
|
if(this.selectedIndex==-1){ |
|
this.selectedIndex=0; |
|
} |
|
}); |
|
} |
|
|
|
//================================================================================================// |
|
var $formCells = new Array(); |
|
$(document).ready(function() { |
|
var arrCells = cellNames.split(","); |
|
for (var i = 0; i < arrCells.length; i++) { |
|
$formCells[i] = $('input[type="text"][name="' + arrCells[i] + '"]'); |
|
} |
|
}); |
|
|
|
function fn_CellValueCheck() { |
|
var v_html = ""; |
|
var arrCells = cellNames.split(","); |
|
for(var i = 0; i < arrCells.length; i++ ) { |
|
if ($formCells[i].attr("value") != null || $formCells[i].attr("itemType") != null){ |
|
|
|
//애트리뷰트의 값이 아닌 입력값을 가져와야함 |
|
//var val = $formCells[i].attr("value"); |
|
var val = $formCells[i].val(); |
|
// if( $.trim(val) != "") { |
|
var v_itemType = $formCells[i].attr("itemType"); |
|
}else{ |
|
var val = ""; |
|
var v_itemType = ""; |
|
} |
|
if(v_itemType.search("2") != -1) { |
|
if( isNaN(val) || !validNum.test(val)) { |
|
|
|
//if( v_html != "" ) v_html += "<br>"; |
|
//v_html += "<a href='#' id='cell_"+arrCells[i]+"' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 숫자이어야 합니다.</a>"; |
|
v_html += "<li id='cell_"+arrCells[i]+"'><a href='javascript:void(0);' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 숫자이어야 합니다.</a></li>"; |
|
} |
|
} |
|
else if(v_itemType.search("3") != -1) { |
|
if( $.trim(val) != "") { |
|
if( !validDate.test(val) ) { |
|
|
|
//if( v_html != "" ) v_html += "<br>"; |
|
//v_html += "<a href='#' id='cell_"+arrCells[i]+"' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 날짜형식(YYYY-MM-DD)이어야 합니다.</a>"; |
|
v_html += "<li id='cell_"+arrCells[i]+"'><a href='javascript:void(0);' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 날짜형식(YYYY-MM-DD)이어야 합니다.</a></li>"; |
|
} |
|
// }else{ |
|
} |
|
} |
|
else if(v_itemType.search("1") != -1) { |
|
if( $.trim(val) != "") { |
|
if( validCharZero.test(val) /*|| validCharZeroSt.test(val)*/) { |
|
|
|
//if( v_html != "" ) v_html += "<br>"; |
|
//v_html += "<a href='#' id='cell_"+arrCells[i]+"' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 날짜형식(YYYY-MM-DD)이어야 합니다.</a>"; |
|
v_html += "<li id='cell_"+arrCells[i]+"'><a href='javascript:void(0);' onclick='document.dform."+arrCells[i]+".focus();document.dform."+arrCells[i]+".select(); return false;'>" + arrCells[i] + "은 데이타를 수정하여야 합니다.</a></li>"; |
|
} |
|
// }else{ |
|
} |
|
} |
|
} |
|
$('#div_error').html(""); |
|
if( v_html != "" ) { |
|
//v_html = "*************에 러 목 록*************<br>" + v_html; |
|
v_html = "<div class='div_error_title'>에 러 목 록</div><ul class='ul_error_list'>" + v_html + "</ul>"; |
|
$('#div_error').html(v_html); |
|
$('#div_error').fadeIn(); |
|
return false; |
|
}else{ |
|
return true; |
|
} |
|
} |
|
|
|
function fn_checkValue(obj, valueType) { |
|
if (valueType == '2') { |
|
$selectedCell = $('#cell_' + obj.name); |
|
if ($selectedCell) { |
|
var val = obj.value; |
|
if (!isNaN(val)) { |
|
//$selectedCell.next().remove(); |
|
//$selectedCell.remove(); |
|
$selectedCell.animate({"margin-left": "-=100%"}, 600, function() { |
|
// $(this).remove() |
|
$selectedCell.remove(); |
|
}); |
|
} |
|
} |
|
}else if(valueType == '1'){ |
|
$selectedCell = $('#cell_' + obj.name); |
|
if($selectedCell){ |
|
var val = obj.value; |
|
if(!validCharZero.test(val) /*|| !validCharZeroSt.test(val)*/){ |
|
$selectedCell.animate({"margin-left": "-=100%"}, 600, function() { |
|
$selectedCell.remove(); |
|
|
|
}); |
|
} |
|
} |
|
} |
|
} |
|
|
|
function fn_CalSetValue(obj, value) { |
|
$selectedCell = $('#cell_' + obj.name); |
|
if ($selectedCell) { |
|
var val = obj.value; |
|
if (validDate.test(val)) { |
|
//$selectedCell.next().remove(); |
|
//$selectedCell.remove(); |
|
$selectedCell.animate({"margin-left": "-=100%"}, 600, function() { |
|
$(this).remove() |
|
}); |
|
} |
|
} |
|
} |
|
|
|
// function fn_showDiv() { |
|
// alert($('#div_error').html()); |
|
// } |
|
|
|
//================================================================================================// |
|
|
|
function lineAddNum() { |
|
try { |
|
|
|
var tmp = document.modifyForm.addRowNum.value; |
|
var tr = document.modifyForm.tableRows.value; |
|
var st = document.modifyForm.tables.value; |
|
if (tmp == '') { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.addLine")%>'); |
|
modifyForm.addRowNum.focus(); |
|
return; |
|
} else if (isNaN(tmp)) { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.inputNumber")%>'); |
|
document.modifyForm.addRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} else if (1 > parseInt(tmp)) { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.oneMore")%>'); |
|
document.modifyForm.addRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} |
|
$.customIndicator.show(window.self); /* indicator 추가 */ |
|
var trlist = tr.split(","); |
|
trlist[parseInt(st) - 1] = parseInt(tmp) + parseInt(trlist[parseInt(st) - 1]); |
|
|
|
for (i = 0; i < trlist.length; i++) { |
|
if (i == 0) |
|
tr = trlist[i]; |
|
else |
|
tr = tr + "," + trlist[i]; |
|
} |
|
|
|
var num = parseInt(tmp) + parseInt('<%= (rowCount)%>'); |
|
|
|
|
|
<%= addJavaScript%> |
|
modifyForm.rowCount.value = num; |
|
modifyForm.modifyMode.value = 'addRow'; |
|
modifyForm.tableRows.value = tr; |
|
modifyForm.appro.value = $(":input:radio[name=appro]:checked").val(); |
|
modifyForm.submit(); |
|
// $.post(modifyForm.action,$(modifyForm).serialize(),function(data){ |
|
// $('#formDiv').html($(data).find('#formDiv').html()); |
|
// $.customIndicator.hide(window.self); |
|
// }).fail(function(){ |
|
// alert('행추가에 실패했습니다.'); |
|
// location.href=location.href; |
|
// },'html'); |
|
} catch (e) { |
|
alert(e); |
|
} |
|
} |
|
|
|
function lineDel() { |
|
var tmp = document.modifyForm.delRowNum.value; |
|
var tr = document.modifyForm.tableRows.value; |
|
var st = document.modifyForm.tables.value; |
|
var trlist = tr.split(","); |
|
|
|
if (tmp == '') { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.deleteLine")%>'); |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} else if (isNaN(tmp)) { |
|
//alert("A"); |
|
//숫자를 입력하세요! |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.inputNumber")%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} else if (1 > parseInt(tmp)) { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.oneMore")%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} else if (parseInt(tmp) > parseInt(trlist[parseInt(st) - 1])) { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.lessLine")%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} else if ("<%=rowCount%>" <= 1) { |
|
alert('<%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.notDeleteLine")%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
} |
|
|
|
/*else if(parseInt(tmp) > <%--= rowCount--%>){ |
|
alert('<--%=MoumiConfig.getMessageBundle().getString("moumi.message.popup.lessLine")--%>'); |
|
document.modifyForm.delRowNum.value = ''; |
|
modifyForm.delRowNum.focus(); |
|
return; |
|
}*/ |
|
|
|
trlist[parseInt(st) - 1] = parseInt(trlist[parseInt(st) - 1]) - 1; |
|
|
|
//테이블 모든행 삭제 안되게 |
|
if(trlist[parseInt(st) - 1]==0){ |
|
alert('표에는 1개 이상의 행이 존재해야 합니다.'); |
|
return; |
|
} |
|
|
|
for (i = 0; i < trlist.length; i++) { |
|
if (i == 0) |
|
tr = trlist[i]; |
|
else |
|
tr = tr + "," + trlist[i]; |
|
} |
|
|
|
<%= addJavaScript%> |
|
modifyForm.rowCount.value = '<%= (rowCount - 1)%>'; |
|
modifyForm.modifyMode.value = 'delRow'; |
|
modifyForm.tableRows.value = tr; |
|
modifyForm.appro.value = $(":input:radio[name=appro]:checked").val(); |
|
modifyForm.submit(); |
|
} |
|
|
|
function checkReport() { |
|
if (1 > dform.rowCount.value) { |
|
alert('<%= MoumiConfig.getMessageBundle().getString("moumi.message.popup.notSubmitDoc")%>'); |
|
return; |
|
} |
|
openPopup('./popup_dept_check.jsp?deptID=<%= dtID%>&deptName=<%= dpName%>', '350', '290', 'no'); |
|
} |
|
|
|
/* |
|
* 입력한 데이타의 크기를 체크하여 기본 크기 이상인 경우 저장을 제한함 |
|
* 2015.05.18 by jskim. |
|
*/ |
|
function inDataSizeCheck(insertType){ |
|
var inData = document.dform.inForm.value; |
|
var inDataSize = inData.length; |
|
var baseDataSize = 5123840; |
|
if(inDataSize > baseDataSize){ |
|
alert("현재 입력된 data 크기가 약" + Math.round(inDataSize/1024) + "K 입니다. \n저장할 수 있는 data크기는 " + Math.round(baseDataSize/1024) + "K로 제한되어 저장할 수 없습니다" |
|
+ "\n첨부파일로 제출하셔야 합니다."); |
|
return; |
|
} |
|
deptCheck(insertType); |
|
} |
|
|
|
|
|
function getIframeFileList(){ |
|
var ifrm = document.getElementById('subfileList'); |
|
ifrm.src="/totsys/common/inc/board/doc/write_file_list.jsp?reportID=<%=reportID%>&docID=<%=docId%>&dtID=<%=dtID%>"; |
|
} |
|
|
|
<!-- 현재 보이는 그대로 엑셀다운 --> |
|
var outhtml='',clone; |
|
function downExl(ishan){ |
|
var clone=$('[name=dform]').clone(); |
|
clone.find(' > input').remove(); |
|
clone.find(' > table td').each(function(i,td){ |
|
td=$(td); |
|
if(td.find('input,textarea').length>0){ |
|
td.html(td.find('input,textarea').val()); |
|
}else if(td.find('option').length>0){ |
|
var sname=td.find('option:selected').parent().attr('name'); |
|
var val=$('[name=dform] select[name='+sname+'] option:selected').val(); |
|
td.html(val); |
|
}else{ |
|
td.html(td.text()); |
|
} |
|
}); |
|
clone.find('hr:last').remove(); |
|
outhtml=clone.html().replace(/<!--[\s\S]*?-->/g,''); |
|
//alert(outhtml);return; |
|
$('#downexl').remove(); |
|
var form='<form id="downexl" style="display:none;" method="post" target="downexl" action="/totsys/common/inc/documents/report/report_view_excel2.jsp">'; |
|
//컨트롤키 누르고 클릭시 utf-8 로 다운로드 |
|
try{ |
|
if(event.ctrlKey){ |
|
if(confirm("인코딩을 UTF-8로 저장하시겠습니까?")){ |
|
form+='<input type="hidden" name="enc" value="utf-8"/>'; |
|
}else{ |
|
return; |
|
} |
|
} |
|
}catch(e){} |
|
form+='<input type="hidden" name="downexl" value="true"/>'; |
|
form+='<input type="hidden" name="outhtml" value=""/>'; |
|
if(ishan)form+='<input type="hidden" name="ishan" value="true"/>'; |
|
form+='<iframe style="display:none;" name="downexl"></iframe>'; |
|
form+='</form>'; |
|
form=$(form).appendTo('body'); |
|
outhtml=encodeURIComponent(outhtml); |
|
form.find('[name=outhtml]').val(outhtml); |
|
form.submit(); |
|
} |
|
</script> |
|
<%--}--%> |
|
</HEAD> |
|
|
|
<body onload="insertData();<%if (!MString.isNull(boardContents)) {%>totperInfo('<%=boardId%>', '<%= boardGroupID%>');<%}%>"> |
|
|
|
<form name="listForm" method="post" action="/totsys/repoper/mydocbox/returnbox/report_list.jsp"> |
|
<input type="hidden" name="strPage" value="<%= strPage%>"> |
|
<input type="hidden" name="findOption" value="<%=MString.checkNull(findOption)%>"> |
|
<input type="hidden" name="findWord" value="<%=MString.checkNull(findWord)%>"> |
|
</form> |
|
<form name="NotDoc" method="post" action="/servlet/kr.co.kihyun.beans.totsys.repoper.HttpNotUpdate"> |
|
<input type="hidden" name="reportID" value="<%= reportID%>"> |
|
</form> |
|
<form name="subReg" action="/totsys/totper/mydocbox/regbox/sub_doc_regist.jsp" method="post"> |
|
<input type="hidden" name="strPage" value="<%= strPage%>"> |
|
<input type="hidden" name="findOption" value="<%=MString.checkNull(findOption)%>"> |
|
<input type="hidden" name="findWord" value="<%=MString.checkNull(findWord)%>"> |
|
<input type="hidden" name="reportID" value="<%= reportID%>"> |
|
<input type="hidden" name="boxName" value="acceptbox"> |
|
<input type="hidden" name="tmpMagam" value="<%=tmpMagam%>"> |
|
</form> |
|
<form name="inputExcel" method="post" action="./report_regist.jsp"> |
|
<input type="hidden" name="strPage" value="<%= strPage%>"> |
|
<input type="hidden" name="findOption" value="<%=MString.checkNull(findOption)%>"> |
|
<input type="hidden" name="findWord" value="<%=MString.checkNull(findWord)%>"> |
|
<input type="hidden" name="comment" value="<%= comment%>"> |
|
<input type="hidden" name="reportID" value="<%= reportID%>"> |
|
<input type="hidden" name="rowCount" value="<%= rowCount%>"> <!--<input type="hidden" name="modifyMode" value="addRow">--> |
|
<input type="hidden" name="repoState" value="<%= repoState%>"> |
|
<input type="hidden" name="copyForm" value=""> |
|
<input type="hidden" name="tables" value="<%= tables%>"> |
|
<input type="hidden" name="tableRows" value="<%= tableRows%>"> <%= hiddenData%> |
|
<input type="hidden" name="appro" value=""> |
|
</form> |
|
<div> |
|
<table> |
|
<!--jsp:include page="/totsys/common/inc/totper/top/top.jsp" flush="true" /--> |
|
<jsp:include page="/totsys/common/inc/title/title.jsp" flush="true" > |
|
<jsp:param value="<%= doctName2%>" name="desc" /> |
|
</jsp:include> |
|
</table> |
|
</div> |
|
<div id="header"> |
|
<ul id="primary"> |
|
<!--<li><a |
|
href="/totsys/repoper/mydocbox/returnbox/report_view.jsp?reportID=<%= reportID%>&boxName=acceptbox"><%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.information")%></a></li>--> |
|
<!-- ie10,11 에서 호환성 보기 문제 수정 a,span 태그에 스타일 추가 --> |
|
<li><span class="kecttep_menu_focous" style="padding: 0px; line-height: 25px;"><%= MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.doc")%><%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.input")%></span></li> |
|
<!-- 2연계시 버튼 안보이게--> |
|
<%if (MoumiConfig.is2Step() && totReport.getTotDoc().getId() < 1700000000) {%> |
|
<% if (totReport.getTotDoc().getMasterTotReport() == null) {%> |
|
<% if (mDept.getGrade().toString() == "") {%> |
|
<li><a href="#" onclick="connRegist();" style="padding: 0px; line-height: 25px;"><%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.subDocRegist")%></a></li> |
|
<% } |
|
} |
|
}%> |
|
<!-- totReport.getTotDoc().getMasterTotReport().getSlaveTotDoc().equals(null) == null ? false : totReport.getTotDoc().getMasterTotReport().getSlaveTotDoc() == totReport.getTotDoc() ? true : false --> |
|
</ul> |
|
</div> |
|
<div id="main"> |
|
<div id="contents"> |
|
<table> |
|
<tr class="toolbar vMiddle"> |
|
<td class="tal"> |
|
<table> |
|
<tr> |
|
<td class="kecttep_button_td"> |
|
<a href="#" onclick="deptCheck(3);"> |
|
<img src="/totsys/common/images/bt_no.gif" alt="<%= MoumiConfig.getMessageBundle().getString("moumi.message.button_small.not")%>" /> |
|
</a> |
|
<a href="#" onclick="window.open('/totsys/repoper/mydocbox/returnbox/popup_rep_transfer11.jsp?reportID=<%=reportID%>&boxName=returnbox&hideUser=false&callbackFunc=fn_goToList()', '', 'width=572, height=680,toolbar=no, directories=no, status=no, menubar=no, resizable=no');"> |
|
<img src="/totsys/common/images/bt_damdang.gif" alt="담당변경" /> |
|
</a> |
|
<%if (!MString.isNull(boardContents) /*|| !(totperComment.getAttachments().isEmpty())*/) {%> |
|
<a href="#" onclick="totperInfo('<%=boardId%>', '<%= boardGroupID%>');"> |
|
<img src="/totsys/common/images/bt_info_modify.gif" alt="<%= MoumiConfig.getMessageBundle().getString("moumi.message.button_small.totperInfo")%>" /> |
|
</a> |
|
<%}%> |
|
<a href="#" onclick="fn_goToList();"> |
|
<img src="/totsys/common/images/bt_doc_list.gif" alt="<%= MoumiConfig.getMessageBundle().getString("moumi.message.doc")%><%= MoumiConfig.getMessageBundle().getString("moumi.message.button.boardList")%>" /> |
|
</a> |
|
</td> |
|
</tr> |
|
</table> |
|
</td> |
|
</tr> |
|
<!--1픽셀 띄우기--> |
|
<tr> |
|
<td style="height: 10px;"></td> |
|
</tr> |
|
|
|
<tr> |
|
<!-- 내용--> |
|
<td style="vertical-align: top;"> |
|
<table> |
|
<%--if (tableType == MTable.DYNA) {--%> |
|
<!-- 집계자 정보 시작 --> |
|
<jsp:include page="/totsys/common/inc/totper/totper.jsp" flush="true"> |
|
<jsp:param name="docID" value='<%= docId%>' /> |
|
</jsp:include> |
|
<!-- 집계자 정보 끝 --> |
|
<tr style="height: 10px;"> |
|
<td style="width: 149px; height: 10px;"></td> |
|
<td style="height: 10px;"></td> |
|
<td style="width: 149px; height: 10px;"></td> |
|
<td style="height: 10px;"></td> |
|
</tr> |
|
</table> |
|
</td> |
|
<tr> |
|
<td> |
|
<table> |
|
<tr> |
|
<td class="kecttep_title"><img alt="말머리" src="/totsys/common/images/ico_3.gif">집계 정보</td> |
|
</tr> |
|
</table> |
|
</td> |
|
</tr> |
|
<tr> |
|
<td> |
|
<table class="kecttep_list_table"> |
|
<tr> |
|
<td class="kecttep_tdmenu_middle" style="padding-left: 20px; width: 150px;"> |
|
<%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.executionCode")%> |
|
</td> |
|
<td class="kecttep_last_graytd" style="padding-left: 15px; width: 300px;"> |
|
<%= totReport.getTotDoc().getExecutionCode()%> |
|
</td> |
|
<td class="kecttep_tdmenu_middle" style="padding-left: 20px; width: 150px;"> |
|
자료공람 여부 |
|
</td> |
|
<td class="kecttep_last_graytd" style="padding-left: 15px; padding-top: 4px;" > |
|
<input id="appro" name="appro" type="radio" value=1 onclick="reportShare()" <%= appro == 2 ? "" : appro == 1 ? "checked" : "" %>> 공람(Y) |
|
<input id="appro" name="appro" type="radio" value=0 onclick="reportShare()" <%= appro == 2 ? "" : appro == 0 ? "checked" : "" %>> 비공람(N) |
|
</td> |
|
</tr> |
|
<tr> |
|
<td class="kecttep_tdmenu" style="padding-left: 20px;"> |
|
<%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_report.acceptanceCode")%> |
|
</td> |
|
<td colspan="3" class="kecttep_last_graytd_bottom" style="padding-left: 15px;"> |
|
<%= HttpSSOLogin.getDeptName(request)%>_ |
|
<input id="acptNumForUI" name="acptNumForUI" type="text" class="inputtxt" style="width: 70px;"> |
|
<span class="ml_5">* <%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_report.acceptexplanation")%></span> |
|
<span style="color: red;"><%="(필수입력항목은 아닙니다)"%></span> |
|
</td> |
|
</tr> |
|
<tr style="height: 10px;"> |
|
<td colspan="4" style="width: 150px; height: 10px;"></td> |
|
</tr> |
|
<tr> |
|
<td colspan="4"> |
|
<%-- if (totReport.getTotDoc().getAppendType() != TotDocAppendType.FILE) {--%> |
|
<% if (appType != 1) {%> |
|
<form name="modifyForm" method="post" action="./report_regist.jsp"> |
|
<input type="hidden" name="strPage" value="<%= strPage%>"> |
|
<input type="hidden" name="findOption" value="<%=MString.checkNull(findOption)%>"> |
|
<input type="hidden" name="findWord" value="<%=MString.checkNull(findWord)%>"> |
|
<input type="hidden" name="comment" value="<%= comment%>"> |
|
<input type="hidden" name="reportID" value="<%= reportID%>"> |
|
<input type="hidden" name="rowCount" value="<%= rowCount%>"> |
|
<input type="hidden" name="modifyMode" value="addRow"> |
|
<input type="hidden" name="repoState" value="<%= repoState%>"> |
|
<input type="hidden" name="tableRows" value="<%= tableRows%>"> |
|
<input type="hidden" name="appro" value=""> |
|
<table> |
|
<%= hiddenData%> |
|
<tr> |
|
<td style="width: 80px; text-align: right; vertical-align: middle;"> |
|
<select name="tables"> |
|
<% |
|
String[] tableDiv = totReport.getTotDoc().getTotTables().isEmpty() ? new String[0] : totReport.getTotDoc().getTotTables().iterator().next().getTypes().split(","); |
|
for (int i = 0; i < tableDiv.length; i++) { |
|
if (tableDiv[i].equals("1")) {%> |
|
<option value="<%=i + 1%>"><%=i + 1%></option> |
|
<%} |
|
}%> |
|
</select> |
|
<%=MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.numTable")%> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td style="width: 62px; text-align: right; vertical-align: middle; background:url('/totsys/common/images/bt_line_addbg.png') 0 2px no-repeat"> |
|
<input name="addRowNum" type="text" size="3" maxlength="3" class="inputtxt" > |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td style="width: 56px; vertical-align: middle;"> |
|
<img alt="행추가" onclick="lineAddNum();" style="cursor: pointer; width: 56px; height: 24px;" src="/totsys/common/images/bt_line_add_out.gif" /> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td style="width: 62px; text-align: right; vertical-align: middle; background:url('/totsys/common/images/bt_line_delbg.png') 0 2px no-repeat;"> |
|
<input name="delRowNum" type="text" size="3" maxlength="3" class="inputtxt" /> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td style="width: 85px; vertical-align: middle;"> |
|
<img alt="행삭제" onclick="lineDel();" style="cursor: pointer; width: 85px; height: 24px;" src="/totsys/common/images/bt_line_del_out.gif"> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td style="width: 93px;"> |
|
<!-- |
|
<a href="/totsys/common/inc/documents/report/report_view_excel2.jsp?reportID=<%=reportID%>&docId=<%=docId%>" target="_parent"> |
|
<img src="/totsys/common/images/bt_excel.gif" alt="액셀다운(원본)" /> |
|
</a> |
|
--> |
|
|
|
<img src="/totsys/common/images/bt_excel.gif" alt="액셀다운" style="cursor: pointer;" onclick="downExl()"/> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<!-- 한글저장 --> |
|
<td style="width: 83px;"> |
|
<img src="/totsys/common/images/bt_hwp_save.gif" alt="한글다운" style="cursor: pointer;" onclick="downExl(true)" width="83" height="20"/> |
|
</td> |
|
|
|
<td style="width: 5px;"> </td> |
|
<td style="width: 93px;"> |
|
<a href="#" onClick='ShowCopy();'> |
|
<img src="/totsys/common/images/bt_copytable.gif" alt="표복사입력" /> |
|
</a> |
|
</td> |
|
<td style="width: 5px;"> </td> |
|
<td> |
|
<a href="#" |
|
onClick="changeAll(); |
|
changeAll(); |
|
changeAll(); |
|
return inDataSizeCheck(0);"> <!--changeAll() 함수 3개 제외함--> |
|
<img alt="자료저장" src="/totsys/common/images/bt_reportsend2.gif"> |
|
</a> |
|
</td> |
|
</tr> |
|
</table> |
|
</form> |
|
<!-- 행추가, 행삭제 끝--> |
|
<div class="pl_20 mt_5" style="color: red;">* 행 추가를 실행하는 경우 집계자가 작성한 서식의 입력행만큼 추가됩니다.</div> |
|
<div class="pl_30 mb_5" style="color: red;">예)기본 입력행이 3행인 경우 제출자가 1행을 추가하면 3행이 추가됩니다.</div> |
|
|
|
<% }%> |
|
</td> |
|
</tr> |
|
</table> |
|
</td> |
|
</tr> |
|
<tr> |
|
<td style="height: 10px;"></td> |
|
</tr> |
|
<%--}--%> |
|
<tr style="vertical-align: top;"> |
|
<td style="vertical-align: top; padding-top: 10px; padding-bottom: 25px; padding-left: 10px;"> |
|
<div id="formDiv" style="overflow-x: auto;"> |
|
<form name="dform" method="post" |
|
action="/servlet/kr.co.kihyun.beans.totsys.report.HttpReportRegister" |
|
enctype="multipart/form-data"> |
|
<input type="hidden" name="reportID" value="<%= reportID%>"> |
|
<input type="hidden" name="rowCount" value="<%= rowCount%>"> |
|
<input type="hidden" name="inForm" value='<%= URLEncoder.encode(baseInsertForm, "UTF-8")%>'> |
|
<input type="hidden" name="repoState" value="<%= repoState%>"> |
|
<input type="hidden" name="tableRows" value="<%= tableRows%>"> |
|
<input type="hidden" name="insertType" value=""> |
|
<input type="hidden" name="repDocID" value="<%=docId%>"><!--20170816 첨부파일 경로 저장을 위해 value 추가 by wonseok Lee--> |
|
<!--<input type="hidden" name="recog" value="<--%=recog--%>">--> |
|
<input type="hidden" name="usrFilenames" value=""> |
|
<input type="hidden" name="svrFilenames" value=""> |
|
<input type="hidden" name="fileCount" value="0"> |
|
<input type="hidden" name="sumFileSize" value=""> |
|
<input type="hidden" name="fileInfos" value=""> |
|
<input type="hidden" name="stat" value=""> |
|
<input type=hidden name="upFile"> |
|
<input type=hidden name="doctName" value="<%= URLEncoder.encode(doctName2, "UTF-8")%>"> |
|
<input type="hidden" name="callbackFunc" value=""> |
|
<input type="hidden" name="acptNum" value=""> |
|
<input type="hidden" name="appro" value=""> |
|
<input type="hidden" name="secuYn" value=""> |
|
|
|
<!-- 보고 폼 시작 --> |
|
<%= MString.checkNull(insertForm)%> |
|
</form> |
|
</div> |
|
<div id="div_error"> |
|
</div> |
|
</td> |
|
</tr> |
|
<%-- if (TotDocAppendType.SYSTEM != totReport.getTotDoc().getAppendType()) {--%> |
|
<% if (appType != 3) {%> |
|
<tr> |
|
<td style="height: 10px;"></td> |
|
</tr> |
|
<!--%if(totReport.getTotDoc().getAppendType().equals(TotDocAppendType.COPYONLY)){%--> <!--//appendType값을 구해와서 비교//--> |
|
<!--%}else{%--> |
|
<!--//파일첨부//--> |
|
<tr> |
|
<td> |
|
<span class="kecttep_title tal" style="padding-left: 5px;"> |
|
<img alt="글머리" style="vertical-align: middle;" src="/totsys/common/images/ico_1.gif" /> [<%= MoumiConfig.getMessageBundle().getString("moumi.message.tot_report.fileUp")%>]</span> |
|
<!--span id="memonone" style="display:none;"><a href="#" class="textbutton" onclick="listView('memo','memoshow','memonone');"><%--= MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.hidden")--%></a></span--> |
|
<!--span id="memoshow"><a href="#" class="textbutton" onclick="listView('memo','memoshow','memonone');"><%--= MoumiConfig.getMessageBundle().getString("moumi.message.tot_doc.input")--%></a></span--> |
|
</td> |
|
</tr> |
|
<tr> |
|
<td> |
|
<div id="memo"> |
|
<table> |
|
<tr> |
|
<td><!--20170811 첨부파일을 가져오기 위한 iframe추가 by wonseok Lee--> |
|
<iframe class="blind" |
|
src="" |
|
id="subfileList" name="subfileList" width="720" frameborder="0" scrolling="no" |
|
marginheight="0" marginwidth="3"></iframe></td> |
|
</tr> |
|
<tr> |
|
<td><!--20170814 docID, reportID, dtID추가 by wonseok Lee--> |
|
<iframe |
|
src="/totsys/common/inc/board/doc/write_file_upload_dir.jsp?pageFlag=2&boardGroupID=<%= boardGroupID%>&execMode=init&mode=repoper&docID=<%=docId%>&reportID=<%=reportID%>&dtID=<%=dtID%>&maxSize=1" |
|
id="subUpload" name="subUpload" width="720" frameborder="0" scrolling="no" |
|
marginheight="0" marginwidth="3" height="70"></iframe></td> |
|
</tr> |
|
</table> |
|
</div> |
|
</td> |
|
</tr> |
|
<%}%> |
|
<tr> |
|
<td style="padding: 10px; text-align: left;"> |
|
<table> |
|
<tr> |
|
<td style="width: 3px;"></td> |
|
<%if (changeAllScript.length() > 0) {%> |
|
<!-- 자료저장 --> |
|
<td> |
|
<a href="#" |
|
onClick='changeAll(); |
|
changeAll(); |
|
changeAll(); |
|
changeAll();'> |
|
<img alt="계산하기" src="/totsys/common/images/bt_cal.gif"> |
|
</a></td> |
|
<td style="width: 3px;"></td> |
|
<%}%> |
|
<td> |
|
<a href="#" |
|
onClick="changeAll(); |
|
changeAll(); |
|
changeAll(); |
|
changeAll(); |
|
return inDataSizeCheck(0);"> |
|
<img alt="자료저장" src="/totsys/common/images/bt_reportsend2.gif"> |
|
</a> |
|
</td> |
|
<td style="width: 3px;"></td> |
|
<%-- |
|
<td> |
|
<a href="#" onClick='ShowCopy();'> |
|
<img src="/totsys/common/images/bt_copyin.gif" border="0"> |
|
</a> |
|
</td> |
|
<td><a href="#" onClick="return deptCheck();"><img src="/totsys/common/images/bt_reportsend.gif" border="0"></a></td> |
|
<td width="3"></td> |
|
<td><a href="#" onClick='history.back();'><img src="/totsys/common/images/bt_cancel2.gif" border="0"></a></td> |
|
<td><a href="#" onClick="notDoc();"><img src="/totsys/common/images/bt_notdoc.gif" border="0"></a></td> |
|
<td width="3"></td> |
|
--%> |
|
</tr> |
|
</table> |
|
</td> |
|
</tr> |
|
</table> |
|
</div> |
|
</div> |
|
<div id="SetWin" |
|
style="position: absolute; Visibility: hidden; width: 100px; height: 100px; background: silver; border: 1px #333333 solid; line-height: 1.4em; padding: 3px 3px"></div> |
|
<iframe name="hiddenFrame" frameborder="0" width="0" height="0" src="" style="display: none" /> |
|
</BODY> |
|
</HTML> |
|
<% |
|
|
|
} catch (Exception ex) { |
|
ex.printStackTrace(); |
|
out.println(kr.co.kihyun.text.html.ServletUtil.getJavaScript("location='/servlet/kr.co.kihyun.beans.user.HttpSSOLogin?mode=logout';")); |
|
} finally { |
|
if (tx.isActive()) { |
|
tx.rollback(); |
|
} |
|
pm.close(); |
|
} |
|
%> |
|
|
|
|