544 lines
17 KiB
Plaintext
544 lines
17 KiB
Plaintext
<%@ page language="java" contentType="text/html; charset=utf-8"%>
|
|
<%@ page import="java.io.*"%>
|
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
|
|
<%
|
|
response.setHeader("Pragma", "No-cache");
|
|
response.setHeader("Cache-Control", "no-cache");
|
|
response.setHeader("Expires", "0");
|
|
%>
|
|
|
|
<html>
|
|
<head>
|
|
<title></title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<jsp:include page="/jsp/common/include/css.jsp"/>
|
|
<jsp:include page="/jsp/common/include/script.jsp"/>
|
|
|
|
<script language="javascript" >
|
|
|
|
var selectName = "bjobBzwkDstcd,uapplCd"; // selectBox Name
|
|
var isDetail = false;
|
|
var lastsel2;
|
|
var isPopup = "${param.ispop}";
|
|
|
|
function isValid() {
|
|
|
|
if( $('input[name=bjobMsgDstcd]').val().trim() == "" ) {
|
|
alert("인터페이스ID를 입력하여 주십시요.");
|
|
return false;
|
|
} else if( $('select[name=bjobBzwkDstcd]').val() == "" ) {
|
|
alert("업무그룹코드를 선택하여 주십시요.");
|
|
return false;
|
|
} else if( $('select[name=bjobInstiDstcd]').val() == "" ) {
|
|
alert("대외기관코드를 선택하여 주십시요.");
|
|
return false;
|
|
} else if( $('input[name=bjobTranDstcdName]').val() == "" ) {
|
|
alert("BATCH작업메시지구분코드를 입력하여 주십시요.");
|
|
return false;
|
|
} else if( $('input[name=bjobMsgDsticName]').val() == "" ) {
|
|
alert("BATCH작업메시지구분명을 입력하여 주십시요.");
|
|
return false;
|
|
} else if( $('input[name=bjobTelgmHdrSize]').val() == "" ) {
|
|
alert("BATCH작업전문헤더크기를 입력하여 주십시요.");
|
|
return false;
|
|
} else if( $('input[name=bjobTelgmRecSize]').val() == "" ) {
|
|
alert("BATCH작업전문데이터크기를 입력하여 주십시요.");
|
|
return false;
|
|
} else if( $('input[name=uapplCd]').val() == "" ) {
|
|
alert("APPLICATION CODE를 선택하여 주십시요.");
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function gridRendering() {
|
|
$('#grid').jqGrid({
|
|
datatype: "local",
|
|
loadonce: true,
|
|
rowNum: 10000,
|
|
editurl: "clientArray",
|
|
colNames: ['프라퍼티명',
|
|
'프라퍼티설명',
|
|
'프라퍼티값'
|
|
],
|
|
colModel: [
|
|
{ name : 'PRPTYNAME' , align:'left' },
|
|
{ name : 'PRPTYDESC' , align:'left' },
|
|
{ name : 'PRPTY2VAL' , align:'left', editable : true }
|
|
],
|
|
jsonReader: {
|
|
repeatitems: false
|
|
},
|
|
loadComplete: function () {
|
|
},
|
|
onSelectRow: function(rowid,status) {
|
|
if ( lastsel2 !=undefined ) {
|
|
if( $("#grid tr#" + lastsel2).attr("editable") == 1 ) { //editable=1 means row in edit mode
|
|
$("#grid").saveRow(lastsel2,false,"clientArray");
|
|
}
|
|
}
|
|
$('#grid').restoreRow(lastsel2);
|
|
$('#grid').editRow(rowid,true);
|
|
lastsel2=rowid;
|
|
},
|
|
onSortCol: function(){
|
|
return 'stop'; //정렬 방지
|
|
},
|
|
height: '300',
|
|
autowidth: true,
|
|
viewrecords: true
|
|
});
|
|
|
|
resizeJqGridWidth('grid','title','1000');
|
|
}
|
|
|
|
function init(url,key) {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
dataType: "json",
|
|
data: { cmd: 'LIST_INIT_COMBO' },
|
|
success: function(json) {
|
|
// new makeOptions("CODE","NAME").setObj($("select[name=bjobBzwkDstcd]")).setData(json.bjobBzwkDstcd).rendering();
|
|
new makeOptions("CODE","NAME").setObj($("select[name=bjobBzwkDstcd]")).setData(json.bjobBzwkDstcd).rendering(); // 업무구분코드
|
|
// new makeOptions("CODE","NAME").setObj($("select[name=bjobInstiDstcd]")).setFormat(codeName3OptionFormat).setData(json.bjobInstiDstcd).rendering(); // 대외기관코드
|
|
//new makeOptions("BIZCODE","BIZNAME").setObj($("select[name=EAIBZWKDSTCD]")).setFormat(codeName3OptionFormat).setData(json.bizRows).rendering(); // 업무구분코드
|
|
new makeOptions("CODE","NAME").setObj($("select[name=bJobCycleGb]")).setData(json.bJobCycleGb).rendering(); // BATCH작업주기구분(BAP_CYCLE_GB)
|
|
|
|
// new makeOptions("CODE","NAME").setObj($("select[name=groupCoCd]")).setData(json.groupCoCd).rendering();
|
|
// new makeOptions("CODE","NAME").setObj($("select[name=sysCd]")).setNoValueInclude(true).setNoValue('','없음').setData(json.sysCd).rendering();
|
|
new makeOptions("CODE","NAME").setObj($("select[name=uapplCd]")).setData(json.uapplCd).rendering(); // 어플리케이션코드
|
|
|
|
if ( isDetail ) {
|
|
detail(url, key);
|
|
} else {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
dataType: "json",
|
|
data: { cmd: 'LIST_PROP',
|
|
bjobBzwkDstcd : $("select[name=bjobBzwkDstcd]").val(),
|
|
bjobMsgDstcd : $("input[name=bjobMsgDstcd]").val()
|
|
},
|
|
success: function(json) {
|
|
$("#grid")[0].addJSONData(json.propMap);
|
|
$("select[name=bjobInstiDstcd] option").remove();
|
|
new makeOptions("CODE","NAME").setObj($("select[name=bjobInstiDstcd]")).setFormat(codeName3OptionFormat).setData(json.InstMap.rows).rendering(); // 대외기관코드
|
|
$("input[name=prptyGroupName]").val("TelegramInfo{" + detail["BJOBMSGDSTCD"] + "}");
|
|
// $("input[name=thisMsgChrgIDs]").val(' ');
|
|
// $("input[name=intfID]").val(' ');
|
|
$("input[name=msgPrcssPrity]").val('999');
|
|
$("input[name=dupCnt]").val('0');
|
|
$("input[name=endCnt]").val('0');
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
}
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
setSearchable(selectName); // 콤보에 searchable 설정
|
|
}
|
|
|
|
function detail(url,key) {
|
|
if ( !isDetail ) return;
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
dataType: "json",
|
|
data: { cmd: 'DETAIL',
|
|
bjobMsgDstcd : key
|
|
},
|
|
success: function(json) {
|
|
var data = json;
|
|
var detail = json.detail;
|
|
|
|
//adapterType
|
|
$("input[name=bjobMsgDstcd]").attr('readonly',true);
|
|
$("select[name=bjobBzwkDstcd]").attr('disabled',false);
|
|
$("input[name=bjobTranDstcdName]").attr('readonly',false);
|
|
$("input,select").each(function() {
|
|
try {
|
|
var name = $(this).attr('name').toUpperCase();
|
|
$(this).val(detail[name]);
|
|
} catch (e) {}
|
|
});
|
|
// 파일 송수신 구분
|
|
$("select[name=fileSndRcvGbn]").val(detail["FILESENDUSEYN"] == 1 ? "S" : "R");
|
|
// 대외기관코드 change 및 값 설정
|
|
$("select[name=bjobInstiDstcd]").attr('disabled',false);
|
|
$("input[name=bjobInstiDstVal]").val(detail["BJOBINSTIDSTCD"]); // 임시로 저장
|
|
$("select[name=bjobBzwkDstcd]").val($("select[name=bjobBzwkDstcd]").val()).trigger("change");
|
|
|
|
if ( $("input[name=dupCnt]").val().trim() == "" ) $("input[name=dupCnt]").val('0');
|
|
if ( $("input[name=endCnt]").val().trim() == "" ) $("input[name=endCnt]").val('0');
|
|
|
|
//Prop
|
|
$("#grid")[0].addJSONData(data.rows);
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
}
|
|
|
|
var submitData = {};
|
|
|
|
$(document).ready(function() {
|
|
var returnUrl = getReturnUrlForReturn();
|
|
var url ='<c:url value="/bap/admin/work/messageProcMan.json" />';
|
|
var key ="${param.bjobMsgDstcd}";
|
|
$("input[name*=Size]").inputmask('decimal',{groupSeparator:',',digits:0,autoGroup:true,prefix:'',rightAlign:false,autoUnmask:true,removeMaskOnSubmit:true});
|
|
if ( key != "" && key !="null" ){
|
|
isDetail = true;
|
|
}
|
|
|
|
gridRendering();
|
|
|
|
init(url,key);
|
|
|
|
$("#btn_modify").click(function(){
|
|
|
|
if (!isValid()) return;
|
|
|
|
if (isDetail) {
|
|
if ( confirm( "수정하시겠습니까?" ) != true ) return;
|
|
} else {
|
|
if ( confirm( "등록하시겠습니까?" ) != true ) return;
|
|
}
|
|
|
|
if( $("#grid tr#" + lastsel2).attr("editable") == 1 ) { //editable=1 means row in edit mode
|
|
$("#grid").saveRow(lastsel2,false,"clientArray");
|
|
}
|
|
|
|
var data = $("#grid").getRowData();
|
|
var gridData = new Array();
|
|
for ( var i = 0; i <data.length; i++ ) {
|
|
gridData.push(data[i]);
|
|
}
|
|
|
|
// 파일 송/수신구분 설정
|
|
$("input[name=fileSendUseYn]").val($("select[name=fileSndRcvGbn]").val() == 'S' ? '1' : '0');
|
|
$("input[name=fileRecvUseYn]").val($("select[name=fileSndRcvGbn]").val() == 'R' ? '1' : '0');
|
|
|
|
//공통부만 form으로 구성
|
|
var postData = $('#ajaxForm').serializeArray();
|
|
postData.push({ name: "gridData" , value: JSON.stringify(gridData)});
|
|
postData.push({ name: "bjobBzwkDstcd" , value: $("select[name=bjobBzwkDstcd]").val()});
|
|
postData.push({ name: "prptyGroupName" , value: "TelegramInfo{" + $("input[name=bjobMsgDstcd]").val() + "}"});
|
|
postData.push({ name: "prptyGroupDesc" , value: $("select[name=bjobBzwkDstcd]").val()+"배치 작업의 [" +$("input[name=bjobTranDstcdName]").val() + "]메시지의 송수신 전문용 프로퍼티 정의"});
|
|
|
|
if ( isDetail ) {
|
|
postData.push( { name: "cmd" , value:"UPDATE"} );
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
data: postData,
|
|
success: function(args) {
|
|
alert("저장 되었습니다.");
|
|
if ( isPopup == 'Y' ) {
|
|
window.close();
|
|
} else {
|
|
goNav(returnUrl);//LIST로 이동
|
|
}
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
} else {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
dataType: "json",
|
|
data: { cmd: 'INITIALIZE_PK',
|
|
tableName: 'TSEAIBJ01',
|
|
columnName: "BjobMsgDstcd",
|
|
columnValue: $('input[name=bjobMsgDstcd]').val()
|
|
},
|
|
success:function(json) {
|
|
if( json.checkPK == 'Y' ) {
|
|
alert("이미 사용중인 인터페이스ID 입니다.\n\n다른 인터페이스ID를 입력하여 주십시요.");
|
|
return false;
|
|
} else {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
data: postData,
|
|
success: function(args) {
|
|
alert("저장 되었습니다.");
|
|
goNav(returnUrl);//LIST로 이동
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
postData.push( { name: "cmd" , value:"INSERT"} );
|
|
}
|
|
});
|
|
|
|
$("#btn_delete").click(function() {
|
|
|
|
if ( confirm( "삭제하시겠습니까?" ) != true ) return;
|
|
|
|
var postData = $('#ajaxForm').serializeArray();
|
|
postData.push({ name: "cmd" , value:"DELETE"});
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
data: postData,
|
|
success: function(args) {
|
|
alert("삭제 되었습니다.");
|
|
goNav(returnUrl);//LIST로 이동
|
|
},
|
|
error: function(e) {
|
|
alert(e.responseText);
|
|
}
|
|
});
|
|
});
|
|
|
|
$("#btn_previous").click(function() {
|
|
goNav(returnUrl);//LIST로 이동
|
|
});
|
|
|
|
$("select[name=bjobBzwkDstcd]").change(function() {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
dataType: "json",
|
|
data: { cmd: 'LIST_PROP',
|
|
bjobBzwkDstcd : $(this).val(),
|
|
bjobMsgDstcd : $('input[name=bjobMsgDstcd]').val()
|
|
},
|
|
success:function(json) {
|
|
$("#grid")[0].addJSONData(json.propMap);
|
|
$("select[name=bjobInstiDstcd] option").remove();
|
|
new makeOptions("CODE","NAME").setObj($("select[name=bjobInstiDstcd]")).setFormat(codeName3OptionFormat).setData(json.InstMap.rows).rendering(); // 대외기관코드
|
|
$("select[name=bjobInstiDstcd]").val($("input[name=bjobInstiDstVal]").val());
|
|
}
|
|
});
|
|
});
|
|
|
|
$("#btn_pop_detail").click(function() {
|
|
var popUrl = '<c:url value="/bap/admin/work/messageProcMan.view" />' + '?cmd=POPUP';
|
|
var args = new Object();
|
|
args['data'] = key;
|
|
args['ispop'] = true;
|
|
|
|
var result = showModal(popUrl, args, 700, 600, function(arg) {
|
|
var args = null;
|
|
if( arg == null || arg == undefined ) {//chrome
|
|
args = this.dialogArguments;
|
|
args.returnValue = this.returnValue;
|
|
} else {//ie
|
|
args = arg;
|
|
}
|
|
|
|
if( !args || !args.returnValue ) return;
|
|
});
|
|
});
|
|
|
|
buttonControl(isDetail);
|
|
titleControl(isDetail);
|
|
|
|
$("#btn_close").click(function() {
|
|
window.close();
|
|
});
|
|
|
|
if ( isPopup == 'Y' ) {
|
|
$('#btn_delete').hide();
|
|
$('#btn_modify').show();
|
|
$('#btn_previous').hide();
|
|
$('#btn_close').show();
|
|
} else {
|
|
$('#btn_close').hide();
|
|
}
|
|
});
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="right_box">
|
|
<div class="content_top">
|
|
<ul class="path">
|
|
<li><a href="#">${rmsMenuPath}</a></li>
|
|
</ul>
|
|
</div><!-- end content_top -->
|
|
<div class="content_middle" id="title">
|
|
<div class="search_wrap">
|
|
<img src="<c:url value="/img/btn_delete.png"/>" alt="" id="btn_delete" level="W" status="DETAIL"/>
|
|
<img src="<c:url value="/img/btn_modify.png"/>" alt="" id="btn_modify" level="W" status="DETAIL,NEW" />
|
|
<img src="<c:url value="/img/btn_previous.png"/>" alt="" id="btn_previous" level="R" status="DETAIL,NEW"/>
|
|
<img src="<c:url value="/img/btn_close.png"/>" alt="" id="btn_close" level="R" style="display:none;" />
|
|
</div>
|
|
<div class="title">송수신 파일</div>
|
|
|
|
<form id="ajaxForm">
|
|
<input type="hidden" name="sndrcvFileName" value=" "/>
|
|
<input type="hidden" name="sndScriptname" />
|
|
<table class="table_row" cellspacing="0">
|
|
<colgroup>
|
|
<col width="15%">
|
|
<col width="30%">
|
|
<col width="5%">
|
|
<col width="15%">
|
|
<col width="35%">
|
|
</colgroup>
|
|
<!-- 공통-->
|
|
<tr>
|
|
<th>인터페이스ID *</th>
|
|
<td colspan="2"><input type="text" name="bjobMsgDstcd" /></td>
|
|
<th>당메시지 사용여부 *</th>
|
|
<td>
|
|
<div class="select-style">
|
|
<select name="thisMsgUseYn">
|
|
<option value="1">사용</option>
|
|
<option value="0">사용안함</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>업무구분코드</th>
|
|
<td colspan="2">
|
|
<div class="select-style">
|
|
<select name="bjobBzwkDstcd"></select>
|
|
</div>
|
|
</td>
|
|
<th>대외기관코드</th>
|
|
<td colspan="2">
|
|
<input type="hidden" name="bjobInstiDstVal" />
|
|
<div class="select-style">
|
|
<select name="bjobInstiDstcd"></select>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>BATCH작업메시지구분코드 *</th>
|
|
<td colspan="2"><input type="text" maxlength="40" name="bjobTranDstcdName" /></td>
|
|
<th>BATCH작업메시지구분명 *</th>
|
|
<td><input type="text" name="bjobMsgDsticName" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>BATCH작업전문헤더크기 *</th>
|
|
<td colspan="2"><input type="text" name="bjobTelgmHdrSize" /></td>
|
|
<th>BATCH작업전문데이터크기 *</th>
|
|
<td><input type="text" name="bjobTelgmRecSize" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>BATCH작업전문트레일러크기</th>
|
|
<td colspan="2"><input type="text" name="bjobTelgmTrailSize" /></td>
|
|
<th>BATCH작업주기구분</th>
|
|
<td><div class="select-style"><select name="bJobCycleGb"></select></div></td>
|
|
</tr>
|
|
<tr>
|
|
<input type="hidden" name="fileSendUseYn" />
|
|
<input type="hidden" name="fileRecvUseYn" />
|
|
<th>파일 송/수신 구분</th>
|
|
<td colspan="2">
|
|
<div class="select-style">
|
|
<select name="fileSndRcvGbn">
|
|
<option value="S">송신</option>
|
|
<option value="R">수신</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
<th>수신시 알림여부</th>
|
|
<td colspan="2">
|
|
<div class="select-style">
|
|
<select name="recvNotiUseYn">
|
|
<option value="1">사용</option>
|
|
<option value="0">사용안함</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>APPLICATION CODE *</th>
|
|
<td colspan="2"><div class="select-style"><select name="uapplCd"></select></div></td>
|
|
<!-- <th>파일명 패턴</th>
|
|
<td>
|
|
<div class="select-style">
|
|
<select name="sndrcvFileName">
|
|
<option value=" ">사용안함</option>
|
|
<option value="yyyy">YYYY</option>
|
|
<option value="yyyyMM">YYYYMM</option>
|
|
<option value="MMdd">MMDD</option>
|
|
<option value="yyyyMMdd">YYYYMMDD</option>
|
|
<option value="001">일련번호</option>
|
|
<option value="yyyy_001">YYYY_일련번호</option>
|
|
<option value="yyyyMM_001">YYYYMM_일련번호</option>
|
|
<option value="MMdd_001">MMDD_일련번호</option>
|
|
<option value="yyyyMMdd_001">YYYYMMDD_일련번호</option>
|
|
</select>
|
|
</div>
|
|
</td> -->
|
|
<th>EAI 인터페이스ID</th>
|
|
<td><input type="text" name="intfID" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>데이터검증여부</th>
|
|
<td style="border-right: 0px;">
|
|
<div class="select-style">
|
|
<select name="dataVrfyYn">
|
|
<option value="1">사용</option>
|
|
<option value="0">사용안함</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
<td><img id="btn_pop_detail" src="<c:url value="/img/btn_pop_detail.png" />" class="btn_img" /></td>
|
|
<th>작업처리 우선순위</th>
|
|
<td><input type="text" name="msgPrcssPrity" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>처리여부</th>
|
|
<td colspan="2">
|
|
<div class="select-style">
|
|
<select name="procYn">
|
|
<option value="1">사용</option>
|
|
<option value="0">사용안함</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
<th>중복횟수</th>
|
|
<td><input type="text" name="dupCnt" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>종결여부</th>
|
|
<td colspan="2">
|
|
<div class="select-style">
|
|
<select name="endYn">
|
|
<option value="1">사용</option>
|
|
<option value="0">사용안함</option>
|
|
</select>
|
|
</div>
|
|
</td>
|
|
<th>종결횟수</th>
|
|
<td><input type="text" name="endCnt" /></td>
|
|
</tr>
|
|
<tr>
|
|
<th>파일담당자</th>
|
|
<td colspan="4"><input type="text" name="thisMsgChrgIDs" /></td>
|
|
</tr>
|
|
<!-- <tr>
|
|
<th>송신스크립트명</th>
|
|
<td colspan="4"><input type="text" name="sndScriptname" /></td>
|
|
</tr> -->
|
|
</table>
|
|
</form>
|
|
|
|
<div class="table_row_title">프라퍼티 정보</div>
|
|
<!-- grid -->
|
|
<table id="grid" ></table>
|
|
</div><!-- end content_middle -->
|
|
</div><!-- end right_box -->
|
|
</body>
|
|
</html> |