전문레이아웃 매핑 선연결 제외

This commit is contained in:
eastargh
2026-08-11 15:15:58 +09:00
parent bf4f953d56
commit d8a1ca84e2
7 changed files with 1984 additions and 1507 deletions
+111 -40
View File
@@ -4,11 +4,18 @@
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ include file="/jsp/common/include/localemessage.jsp" %>
<%@ page import="com.eactive.eai.common.util.SystemUtil"%>
<%@ page import="com.eactive.eai.rms.common.context.MonitoringContext"%>
<%@ page import="com.eactive.eai.rms.common.util.CommonUtil"%>
<%
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Expires", "0");
MonitoringContext monitoringContext = (MonitoringContext)CommonUtil.getBean(request, "monitoringContext");
String deployYnStr = monitoringContext.getStringProperty(MonitoringContext.IOMAP_DEPLOY_YN_BY_RMS, "N");
boolean deployYn = "Y".equalsIgnoreCase(deployYnStr);
String adminOnlyYnStr = monitoringContext.getStringProperty(MonitoringContext.IOMAP_DEPLOY_YN_BY_ADMIN_ONLY, "Y");
boolean adminOnly = "Y".equalsIgnoreCase(adminOnlyYnStr);
%>
<html>
<head>
@@ -17,62 +24,48 @@
<jsp:include page="/jsp/common/include/css.jsp"/>
<jsp:include page="/jsp/common/include/script.jsp"/>
<script language="javascript" >
<script>
var url = '<c:url value="/onl/admin/rule/transformMan.json" />';
var url_view = '<c:url value="/onl/admin/rule/transformMan.view" />';
var url_excel= '<c:url value="/onl/admin/rule/transformMan.excel"/>';
var roleString = "<%=SessionManager.getRoleIdString(request)%>";
var devSvr = <%=SystemUtil.isDevServer()%>;
function dateFormater(cellvalue, options, rowObject){
if (cellvalue==null|| cellvalue==undefined) return "";
if (cellvalue.trim().length < 14) return "";
var display = "";
display=display+cellvalue.substr(0,4)+"-";
display=display+cellvalue.substr(4,2)+"-";
display=display+cellvalue.substr(6,2)+" ";
display=display+cellvalue.substr(8,2)+":";
display=display+cellvalue.substr(10,2)+":";
display=display+cellvalue.substr(12,2);
return display;
}
var stageSvr = <%=SystemUtil.isStagingServer()%>;
var adminOnly = <%=adminOnly%>;
$(document).ready(function() {
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
$('#grid').jqGrid({
datatype:"json",
mtype: 'POST',
url: url,
postData : { cmd : 'LIST'
, searchBizCode : $('input[name=searchBizCode]').val()
, searchCnvsnName : $('input[name=searchCnvsnName]').val()
, searchCnvsnDesc : $('input[name=searchCnvsnDesc]').val()
},
postData : postData,
colNames:[
'<%=localeMessage.getString("transformMan.eaibzwkdstcd")%>',
'<%=localeMessage.getString("transformMan.telCngMappCd")%>',
'<%=localeMessage.getString("transformMan.telCngMappDesc")%>',
'<%=localeMessage.getString("transformMan.ifSvcCd")%>',
'<%=localeMessage.getString("transformMan.ifSvcDesc")%>',
'<%=localeMessage.getString("transformMan.eaiSvrDiv")%>',
'<%= localeMessage.getString("combo.useYn")%> ',
'<%=localeMessage.getString("transformMan.modifyDate")%>',
'<%=localeMessage.getString("transformMan.verInfo")%>',
'타입',
'cnvsnType',
'flag'
],
colModel:[
{ name : 'EAIBZWKDSTCD' , align:'center' ,sortable:false , width : "40"},
{ name : 'CNVSNNAME' , align:'left' },
{ name : 'EAISVCNAME' , align:'left' },
{ name : 'EAISVCDESC' , align:'left' },
{ name : 'EAIBZWKDSTCD' , align:'center' ,sortable:false , width:"30"},
{ name : 'CNVSNNAME' , align:'left' , width:"100" },
{ name : 'CNVSNDESC' , align:'left' , width:"100" },
{ name : 'EAISVCNAME' , align:'left' , width:"70" },
{ name : 'EAISVCDESC' , align:'left' , width:"100"},
{ name : 'EAISEVRDSTCD' , hidden : true },
{ name : 'USEYN', align:'center', width:30,editoptions:{value:"0:<%= localeMessage.getString("combo.usen")%>;1:<%= localeMessage.getString("combo.usey")%>"}, formatter:"select"},
{ name : 'LASTAMNDHMS' , align:'center' , formatter: dateFormater, width : "70" },
{ name : 'VERINFO' , align:'center' , width : "70" },
{ name : 'CNVSNTYPE' , hidden : true },
{ name : 'USEYN', align:'center', width:30 ,editoptions:{value:"0:<%= localeMessage.getString("combo.usen")%>;1:<%= localeMessage.getString("combo.usey")%>"}, formatter:"select"},
{ name : 'LASTAMNDHMS' , align:'center' , width : "60" },
{ name : 'VERINFO' , align:'center' , width : "30" },
{ name : 'CNVSNTYPE' , hidden : true },
{ name : 'FLAG' , hidden : true }
],
jsonReader: {
@@ -136,7 +129,8 @@ $(document).ready(function() {
//key값
url2 += '&cnvsnName='+cnvsnName;
url2 += '&eaiSvcName='+eaiSvcName;
url2 += '&eaiSvcDesc='+eaiSvcDesc;
//url2 += '&eaiSvcDesc='+eaiSvcDesc;
url2 += '&eaiSvcDesc='+encodeURIComponent(eaiSvcDesc);
url2 += '&cnvsnDesc='+cnvsnDesc;
url2 += '&eaiSevrDStcd='+eaiSevrDStcd;
url2 += '&useYn='+useYn;
@@ -161,7 +155,6 @@ $(document).ready(function() {
}
});
resizeJqGridWidth('grid','content_middle','1000');
$("#btn_search").click(function(){
@@ -217,7 +210,7 @@ $(document).ready(function() {
}
return false;
}else{
if(confirm("초기화 하시겠습니까?")){
if(confirm("<%=localeMessage.getString("eaiMessage.confirm2")%>")){
var postData = [];
postData.push({ name: "cmd" , value:"LIST_INITIALIZE"});
postData.push({ name: "chkItems" , value : chkArr});
@@ -242,8 +235,13 @@ $(document).ready(function() {
});
$('#btn_cmsave').click(onclickBtnCmSave);
$('#btn_clone').click(onclickBtnClone);
$("#btn_delete").click(function(){
if(!confirm("삭제하시겠습니까?")){
return;
}
var id = "grid";
var cnvsnNameArr = new Array();
var eaiSvcNameArr = new Array();
@@ -263,7 +261,7 @@ $(document).ready(function() {
}
if(chkcnt == 0){
alert("변환매핑을 선택해 주세요");
alert("<%= localeMessage.getString("standardLayout.message4") %>");
return false;
}
@@ -303,10 +301,18 @@ $(document).ready(function() {
});
buttonControl();
setBtnHide(roleString, "admin", "btn_initialize");
//setBtnControl(roleString, "admin", "btn_cmsave");
if(!devSvr){
$("#btn_cmsave").hide();
if(devSvr || stageSvr){
if (adminOnly) {
setBtnHide(roleString, "admin", "btn_clone");
}
}else{
$("#btn_clone").hide();
}
//setBtnControl(roleString, "admin", "btn_cmsave");
//if(!devSvr){
// $("#btn_cmsave").hide();
//}
});
function setBtnControl(roleString, condiVal, compoId)
@@ -429,6 +435,62 @@ function addCMResource(eaiBzwkDsdCd, obj, cnvsnNames) {
}
});
}
function onclickBtnClone() {
var sel = $('#grid').jqGrid('getGridParam', 'selarrrow');
if (sel.length == 0) {
alert('<%= localeMessage.getString("eaiMessage.alert17")%>');
return;
}
var selectedTransformNames = [];
$(sel).each(function(index, i) {
var cnvsnName = $('#grid').getCell(i, 'CNVSNNAME');
selectedTransformNames.push(cnvsnName);
});
var url2 = url_view;
url2 += "?cmd=POPUP CALENDAR";
var args = new Object();
args['selectedCnvsnName'] = selectedTransformNames.join(',');
showModal(url2,args,540,270, 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;
deployTransforms(args.returnValue);
});
}
function deployTransforms(ret) {
var params = ret;
params['cmd'] = 'CLONETOPROD';
$.ajax({
type : "POST",
url:url,
dataType:"json",
data:params,
success:function(json){
alert(json.message);
list($("#grid").getGridParam("page"));
},
error:function(xhr,status,error){
if (xhr.responseText != null) {
try {
alert(JSON.parse(xhr.responseText).errorMsg);
} catch (e) {
alert(error);
}
}
}
});
}
</script>
</head>
@@ -441,6 +503,11 @@ function addCMResource(eaiBzwkDsdCd, obj, cnvsnNames) {
</div><!-- end content_top -->
<div class="content_middle" id="content_middle">
<div class="search_wrap">
<% if (SystemUtil.isDevServer() && deployYn) { %>
<button type="button" class="cssbtn" id="btn_clone" level="W"><i class="material-icons">move_up</i> <%= localeMessage.getString("button.copyStage") %></button>
<% } else if (SystemUtil.isStagingServer() && deployYn) { %>
<button type="button" class="cssbtn" id="btn_clone" level="W"><i class="material-icons">move_up</i> <%= localeMessage.getString("button.copyProd") %></button>
<% } %>
<button type="button" class="cssbtn" id="btn_excel" level="W" status="DETAIL"><i class="material-icons">table_view</i> <%= localeMessage.getString("button.excel") %></button>
<button type="button" class="cssbtn" id="btn_initialize" level="W" ><i class="material-icons">restart_alt</i> <%= localeMessage.getString("button.reset") %></button>
<button type="button" class="cssbtn" id="btn_delete" level="W" status="DETAIL,NEW"><i class="material-icons">delete</i> <%= localeMessage.getString("button.delete") %></button>
@@ -469,9 +536,13 @@ function addCMResource(eaiBzwkDsdCd, obj, cnvsnNames) {
</tr>
<tr>
<th style="width:180px;"><%=localeMessage.getString("transformMan.telCngMappDesc")%> </th>
<td colspan="3">
<td>
<input type="text" name="searchCnvsnDesc" value="${param.searchCnvsnDesc}">
</td>
<th style="width:180px;"><%=localeMessage.getString("transformMan.ifSvcCd")%> </th>
<td>
<input type="text" name="searchIfSvcCd" value="${param.searchIfSvcCd}">
</td>
</tr>
</tbody>
</table>
@@ -0,0 +1,258 @@
<%@ page language="java" contentType="text/html; charset=utf-8"%>
<%@ page import="java.io.*"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ include file="/jsp/common/include/localemessage.jsp" %>
<%
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=euc-kr">
<jsp:include page="/jsp/common/include/css.jsp"/>
<jsp:include page="/jsp/common/include/script.jsp"/>
<script language="javascript" >
var url = '<c:url value="/onl/transaction/apim/apiInterfaceMan.json"/>';
var url_view = '<c:url value="/onl/transaction/apim/apiInterfaceMan.view"/>';
var selectName = "searchEaiBzwkDstcd"; // selectBox Name
function processSelectedData() {
var grid = $("#grid");
var selectedRowIds = grid.jqGrid('getGridParam', 'selarrrow');
var selectedData = [];
for(var i = 0; i < selectedRowIds.length; i++) {
var rowData = grid.jqGrid('getRowData', selectedRowIds[i]);
selectedData.push({
bizCode: rowData.eaiBzwkDstcd, // CLINET
apiId: rowData.eaiSvcName,
apiDesc: rowData.eaiSvcDesc, // SCOPE-API
APIFULLPATH: rowData.apiFullPath,
BZWKSVCKEYNAME: rowData.bzwksvckeyname
});
}
if(selectedData.length === 0) {
alert("선택된 항목이 없습니다.");
return;
}
alert("선택한 " + selectedData.length + "건의 API를 추가합니다.");
window.returnValue = selectedData.length === 1 ? selectedData[0] : selectedData;
window.close();
}
function updateSelectionInfo(gridId) {
var grid = $(gridId || "#grid");
var selectedRows = grid.jqGrid('getGridParam', 'selarrrow');
$("#selected-count").text("총: " + selectedRows.length + " 건");
}
function init( callback) {
$.ajax({
type : "POST",
url:url,
dataType:"json",
data:{cmd: 'LIST_COMBO'},
success:function(json){
new makeOptions("BIZCODE","BIZNAME").setObj($("select[name=searchEaiBzwkDstcd]")).setNoValueInclude(true).setNoValue("","전체").setData(json.bizList).setFormat(codeName3OptionFormat).rendering();
setSearchable(selectName); // 콤보에 searchable 설정
if (typeof callback === 'function') {
callback();
}
},
error:function(e){
alert(e.responseText);
}
});
}
function detail(){
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
$("#grid").setGridParam({ url:url,postData: postData }).trigger("reloadGrid");
}
function search(){
var postData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
$("#grid").setGridParam({ url:url,postData: postData ,page:1 }).trigger("reloadGrid");
}
function ioFormatter(cellvalue,options,rowObject){
var serviceType = sessionStorage["serviceType"];
if(cellvalue == "I"){
return "타발";
}else if(cellvalue =="O"){
return "당발";
}
}
function adapterNameShortFormatter(cellvalue,options,rowObject){
if(cellvalue == null || cellvalue == '')
return ''
return cellvalue.substring(1, 4);
}
function list(){
detail()
var gridPostData = getSearchForJqgrid("cmd","LIST"); //jqgrid에서는 object 로
// gridPostData.searchApiEnableYn = 'Y';
var urlParams = new URLSearchParams(window.location.search);
var selectedApiIds = urlParams.get("selectedApiIds");
$('#grid').jqGrid({
datatype : "json",
mtype : 'POST',
url : url,
postData : gridPostData,
colNames : [ '업무구분',
'<%= localeMessage.getString("eaiMessage.eaiSvcName")%>',
'<%= localeMessage.getString("eaiMessage.eaiSvcDesc")%>',
'API FULL PATH',
'업무서비스명',
'요청',
'응답',
'작성자',
'가상응답여부',
'SyncAsyncType',
],
colModel : [ { name : 'eaiBzwkDstcd' , align : 'center' , width:'40', sortable:false},
{ name : 'eaiSvcName' , align : 'left' , width:'100'},
{ name : 'eaiSvcDesc' , align : 'left' },
{ name : 'apiFullPath' , align : 'left' , width:'100'},
{ name : 'bzwksvckeyname' , align : 'left' , width:'100', hidden: true},
{ name : 'fromAdapter' , align : 'center' , width:'40', formatter:adapterNameShortFormatter },
{ name : 'toAdapter' , align : 'center' , width:'40', formatter:adapterNameShortFormatter },
{ name : 'author' , align : 'center' , width:'60' },
{ name : 'simYn' , align : 'center' , width:'40' },
{ name : 'syncAsyncType' , align : 'center' , width:'40', hidden: true},
],
jsonReader : {
repeatitems : false
},
pager : $('#pager'),
page : '${param.page}',
rowNum : '${rmsDefaultRowNum}',
autoheight : true,
height : $("#container").height(),
autowidth : true,
viewrecords : true,
multiselect: false,
multiboxonly: false,
rowList : eval('[${rmsDefaultRowList}]'),
loadComplete:function (d){
var $grid = $(this);
if(selectedApiIds) {
const selectedIds = selectedApiIds.split(',');
$.each($grid.getDataIDs(), function(_, id) {
var rowData = $grid.getRowData(id);
if(selectedIds.includes(rowData.eaiSvcName)) {
$grid.jqGrid('setSelection', id, true);
}
});
}
var colModel = $(this).getGridParam("colModel");
for(var i = 0 ; i< colModel.length; i++){
$(this).setColProp(colModel[i].name, {sortable : false});
}
updateSelectionInfo("#grid");
},
onSelectRow: function(rowid, status, e) {
updateSelectionInfo("#grid");
},
onSelectAll: function(rowids, status) {
updateSelectionInfo("#grid");
},
ondblClickRow : function(rowId) {
const rowData = $(this).getRowData(rowId);
const returnValue = {
bizCode: rowData.eaiBzwkDstcd,
apiId: rowData.eaiSvcName,
apiDesc: rowData.eaiSvcDesc
};
//alert("선택한 API를 추가합니다.\nAPI ID: " + rowData.eaiSvcName);
window.returnValue = returnValue;
window.close();
}
});
}
$(document).ready(function() {
init(list);
resizeJqGridWidth('grid','content_middle','1000');
// 업무구분명 선택 시 자동 검색
$("select[name=searchEaiBzwkDstcd]").change(function() {
search();
});
$("#btn_search").click(function(){
search();
});
$("input[name^=search]").keydown(function(key){
if (key.keyCode == 13){
$("#btn_search").click();
}
});
buttonControl();
$("#btn_select").click(function(){
processSelectedData();
});
$("#btn_close").click(function () {
window.close();
});
});
</script>
</head>
<body>
<div>
<div class="content_middle" id="content_middle" style="margin-top: 0px">
<div class="search_wrap">
<button type="button" class="cssbtn" id="btn_search" level="R" ><i class="material-icons">search</i> <%= localeMessage.getString("button.search") %></button>
<button type="button" class="cssbtn" id="btn_select" level="R" ><i class="material-icons">check</i> <%= localeMessage.getString("button.check") %></button>
<button type="button" class="cssbtn" id="btn_close" level="R" status="DETAIL"><i class="material-icons">close</i> <%= localeMessage.getString("button.close") %></button>
</div>
<div class="title" id="title" >${rmsMenuName}</div>
<!-- 선택 정보 표시 영역 추가 -->
<div style="margin-bottom: 5px;">
<span id="selected-count" style="color: #666; font-size: 12px;"></span>
</div>
<table class="search_condition" cellspacing=0;>
<tbody>
<tr>
<th style="width:180px;">업무구분명</th>
<td>
<select name="searchEaiBzwkDstcd" value="${param.searchEaiBzwkDstcd}">
</select>
</td>
<th style="width:180px;"><%= localeMessage.getString("eaiMessage.eaiSvcName")%></th>
<td>
<input type="text" name="searchEaiSvcName" value="${param.searchEaiSvcName}">
</td>
</tr>
<tr>
<th style="width:180px;"><%= localeMessage.getString("eaiMessage.eaiSvcDesc")%></th>
<td>
<input type="text" name="searchEaiSvcDesc" value="${param.searchEaiSvcDesc}">
</td>
<th style="width:180px;">API FULL PATH</th>
<td>
<input type="text" name="searchApiFullPath" value="${param.searchApiFullPath}">
</td>
</tr>
</tbody>
</table>
<table id="grid" ></table>
<div id="pager"></div>
</div><!-- end content_middle -->
</div><!-- end right_box -->
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -46,10 +46,10 @@ $(document).ready(function() {
, src_layout : src_layout
},
colNames:[
'<%=localeMessage.getString("tranManDtPop.conRsItPtNm")%>',
'<%=localeMessage.getString("tranManDtPop.conOrd")%>',
'<%=localeMessage.getString("tranManDtPop.ItDft")%>',
'<%=localeMessage.getString("tranManDtPop.itSrlNmb")%>',
'변환결과 항목경로명',
'변환명령',
'항목 기본값',
'항목 일련번호',
'타겟Flag',
'소스Flag',
'<%=localeMessage.getString("tranManDtPop.errMsg")%>'
@@ -104,7 +104,6 @@ $(document).ready(function() {
resizeJqGridWidth('grid','title','1000');
$("#btn_close").click(function(){
//debugger;
window.close();
});
$("body").css("overflow-x","hidden");
@@ -115,13 +114,12 @@ $(document).ready(function() {
<body>
<div class="popup_box" id="title">
<div class="search_wrap">
<%-- <img id="btn_close" src="<c:url value="/img/btn_close.png"/>" level="R"/> --%>
<button type="button" class="cssbtn" id="btn_close" level="R"><i class="material-icons">cancel</i> <%= localeMessage.getString("button.close") %></button>
<img id="btn_close" src="<c:url value="/img/btn_close.png"/>" level="R"/>
</div>
<div class="title"><%=localeMessage.getString("tranManDtPop.title")%></div>
<div class="title">변환매핑항목 상세</div>
<table class="search_condition" cellspacing="0">
<tr>
<th style="width:180px;"><%=localeMessage.getString("tranManDtPop.conMapCd")%></th>
<th style="width:180px;">변환매핑 코드</th>
<td>
<input type="text" name="cnvsnName" readonly>
</td>
@@ -19,7 +19,8 @@
<jsp:include page="/jsp/common/include/css.jsp"/>
<jsp:include page="/jsp/common/include/script.jsp"/>
<script language="javascript" >
<script language="javascript" >
var url_view = '<c:url value="/onl/admin/rule/transformMan.view" />';
var $ = jQuery.noConflict();
var bzwkDstCd = "";
@@ -81,8 +82,9 @@ $(document).ready(function() {
var key = "";
var args = new Object();
args['eaiSvcName'] = $('input[name=eaiSvcName]').val();
var url='<c:url value="/onl/transaction/extnl/interfaceMan.view"/>';
url = url + "?cmd=POPUP";
var url=url_view; //'<c:url value="/onl/transaction/extnl/interfaceMan.view"/>';
url = url + "?cmd=API_POPUP";
console.log('[new]', url);
var ret = showModal(url,args,1020,630, function(arg){
var args = null;
if(arg == null || arg == undefined ) {//chrome
@@ -96,15 +98,15 @@ $(document).ready(function() {
var ret = args.returnValue;
console.log("ret",ret);
key = ret['key'];
key = ret['apiId'];
$("input[name=eaiSvcName]").val(key);
$("input[name=eaiSvcDesc]").val(ret['eaiSvcDesc']);
bzwkDstCd = ret['eaiBzwkDstCd'];
$("input[name=eaiSvcDesc]").val(ret['apiDesc']);
bzwkDstCd = ret['bizCode'];
$("input[name=eaiSvcName]").change();
$("select[name=eaiSevrDstcd]").val(ret['eaiSevrDstcd']);
$("select[name=eaiSevrDstcd]").attr("disabled",true);
//$("select[name=eaiSevrDstcd]").val(ret['eaiSevrDstcd']);
//$("select[name=eaiSevrDstcd]").attr("disabled",true);
});
});
@@ -144,7 +146,7 @@ $(document).ready(function() {
</ul>
</div><!-- end content_top -->
<div class="content_middle">
<div class="search_wrap">
<div class="search_wrap">
<button type="button" class="cssbtn" id="btn_regist" level="W" status="DETAIL,NEW"><i class="material-icons">save</i> <%= localeMessage.getString("button.register") %></button>
<button type="button" class="cssbtn" id="btn_previous" level="R" status="DETAIL,NEW"><i class="material-icons">arrow_back</i> <%= localeMessage.getString("button.previous") %></button>
<%-- <img src="<c:url value="/img/btn_regist.png"/>" alt="" id="btn_regist" level="W" status="DETAIL,NEW" /> --%>
@@ -159,25 +161,29 @@ $(document).ready(function() {
<form id="ajaxForm">
<table class="table_row" cellspacing="0">
<tr>
<th style="width:25%;"><%=localeMessage.getString("transformMan.ifSvcCd")%> </th>
<td colspan="3">
<input type="text" name="eaiSvcName" style="width:calc(100% - 60px);" readonly> <%-- <img id="btn_search" src="<c:url value="/img/btn_pop_search.png" />" level="R" class="btn_img" /> --%>
<th style="width:14%; min-width:130px;"><%=localeMessage.getString("transformMan.ifSvcCd")%> </th>
<td style="width:31%;">
<input type="text" name="eaiSvcName" style="width:60%;" readonly> <!-- <img id="btn_search" src="<c:url value="/img/btn_pop_search.png" />" level="R" class="btn_img" /> -->
<button type="button" class="cssbtn smallBtn2" id="btn_search" style="vertical-align:middle; font-weight:bold;" level="R"><i class="material-icons">search</i><%= localeMessage.getString("button.search") %></button>
</td>
</tr>
<tr>
<th><%=localeMessage.getString("transformMan.ifSvcDesc")%></th>
<td colspan="3">
</td>
<th style="width:14%; min-width:130px;"><%=localeMessage.getString("transformMan.ifSvcDesc")%></th>
<td style="width:41%;">
<input type="text" name="eaiSvcDesc" readOnly>
</td>
</tr>
<tr>
<th><%=localeMessage.getString("transformMan.eaiSvrDiv")%></th>
<td colspan="3">
<td>
<div class="select-style">
<select name="eaiSevrDstcd" />
</div>
</td>
<th style="width:13%; min-width:130px;"><%=localeMessage.getString("combo.useYn")%></th>
<td>
<div class="select-style">
<select name="useYn" />
</div>
</td>
</tr>
<tr>
<th><%=localeMessage.getString("transformMan.cnvsnType")%></th>
@@ -186,20 +192,13 @@ $(document).ready(function() {
<select name="cnvsnType" />
</div>
</td>
<th><%=localeMessage.getString("combo.useYn")%></th>
<td>
<div class="select-style">
<select name="useYn" />
</div>
</td>
</tr>
<tr>
<th><%=localeMessage.getString("transformMan.telCngMappCd")%></th>
<td colspan="3"><input type="text" name="cnvsnName" readonly="readonly"/></td>
<td><input type="text" name="cnvsnName" readonly="readonly"/></td>
</tr>
<tr height="100px">
<th><%=localeMessage.getString("transformMan.cnvsnDesc")%></th><td colspan="3"><textarea name="cnvsnDesc" style="width:100%;height:100px"></textarea></td>
<tr>
<th><%=localeMessage.getString("transformMan.cnvsnDesc")%></th><td colspan="3"><textarea name="cnvsnDesc" style="width:100%;height:50px"></textarea></td>
</tr>
</table>
</form>
@@ -646,7 +646,7 @@
const svcDesc = encodeURI(encodeURIComponent($('#eaiSvcDesc').val()));
const cnvsnDesc = encodeURI(encodeURIComponent(transformDesc));
var args = {title:transformName+' 수정', parent: true};
var url='<c:url value="/onl/admin/rule/transform2/transform2Man.view"/>';
var url='<c:url value="/onl/admin/rule/transformMan.view"/>';
url += '?cmd=DETAIL';
url += '&cnvsnName='+transformName;
url += '&eaiSvcName='+svcName;
@@ -793,7 +793,7 @@
function updateFirstLayout(newTransformName, transformDesc){
$.ajax({
type : "POST",
url: '<c:url value="/onl/admin/rule/transform2/transform2Man.json" />',
url: '<c:url value="/onl/admin/rule/transformMan.json" />',
data: { cmd: 'UPDATE',
gridData: '[]',
eaiSvcName: svcName,
@@ -824,7 +824,7 @@
};
$.ajax({
type : "POST",
url: '<c:url value="/onl/admin/rule/transform2/transform2Man.json" />',
url: '<c:url value="/onl/admin/rule/transformMan.json" />',
data: { cmd: 'INSERT',
gridData: '[]',
cnvsnType,
@@ -12,11 +12,13 @@ import javax.servlet.http.HttpServletResponse;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
@@ -31,455 +33,365 @@ import com.eactive.eai.rms.common.datasource.DataSourceTypeManager;
import com.eactive.eai.rms.common.login.SessionManager;
import com.eactive.eai.rms.common.spring.BaseController;
import com.eactive.eai.rms.common.spring.LocaleMessage;
import com.eactive.eai.rms.common.util.CamelCaseUtil;
import com.eactive.eai.rms.common.util.CommonUtil;
import com.eactive.eai.rms.common.util.IpUtil;
import com.eactive.eai.rms.common.vo.JsonPageVo;
import com.eactive.eai.rms.common.vo.GridResponse;
import com.eactive.eai.rms.common.vo.SimpleResponse;
import com.eactive.eai.rms.onl.common.exception.BizException;
import com.eactive.eai.rms.onl.common.exception.EMSRuntimeException;
import com.eactive.eai.rms.onl.loader.service.HistoryService;
import com.eactive.eai.rms.onl.loader.service.TransactionLoaderService;
import com.google.gson.Gson;
import com.eactive.eai.rms.onl.manage.rule.layout.LayoutManService;
import com.eactive.eai.rms.onl.manage.rule.layout.ui.LayoutItemUI;
import com.eactive.eai.rms.onl.manage.rule.layout.ui.LayoutUI;
import com.eactive.eai.rms.onl.manage.rule.layout.ui.LayoutUISearch;
import com.eactive.eai.rms.onl.manage.rule.transform2.Transform2Service;
import com.eactive.eai.rms.onl.manage.rule.transform2.ui.TransformSourceResultUI;
import com.eactive.eai.rms.onl.manage.rule.transform2.ui.TransformUI;
@Controller
public class TransformController extends BaseController {
private static final Logger logger = Logger.getLogger(TransformController.class);
@Autowired
@Qualifier("localeMessage")
@Autowired
private LocaleMessage localeMessage;
@Autowired
private TransformManService service;
@Autowired
private ComboService comboService;
@Autowired
@Qualifier("historyService")
private HistoryService historyService;
@Autowired
private TransactionLoaderService loaderService;
@Autowired
@Qualifier("monitoringContext")
@Autowired
private Transform2Service service;
@Autowired
private ComboService comboService;
@Autowired
private HistoryService historyService;
@Autowired
private TransactionLoaderService loaderService;
@Autowired
private MonitoringContext monitoringContext;
@RequestMapping(value= "/onl/admin/rule/transformMan.view")
private String viewList(HttpServletRequest request, @RequestParam(value = "cmd", required = false ) String cmd ) throws Exception {
if (cmd == null || "LIST".equals(cmd.toUpperCase())){
cmd = "";
}else {
cmd = CamelCaseUtil.converCamelCase(cmd);
}
String path = request.getServletPath();
return path.split("[.]")[0]+cmd;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_INIT_COMBO")
public ModelAndView initCombo( HttpServletRequest request,
HttpServletResponse response,String eaiSvcName) throws Exception {
//admin 권한
String roleId = SessionManager.getRoleIdString(request);
String isAdmin = "N";
if(roleId.indexOf("admin") > -1){ //admin 일경우
isAdmin = "Y";
}
List<ComboVo> listFunction = comboService.getFromFunction();
List listTransform = service.selectTransformForEaiSvcNameCombo(eaiSvcName);
List<ComboVo> listCnvsnType = comboService.getFromCode("CNVSN_TYPE");
List<ComboVo> listSvrDstcd = comboService.getFromCode("INOUT_TYPE");
List<ComboVo> listUseYn = comboService.getFromCode("USE_YN");// 사용여부
Map resultMap = new HashMap();
resultMap.put("functionRows" , listFunction);
resultMap.put("transformRows" , listTransform);
resultMap.put("cnvsnType" , listCnvsnType);
resultMap.put("svrDstcd" , listSvrDstcd);
resultMap.put("isAdmin" , isAdmin);
resultMap.put("useYnRows" , listUseYn);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_EAISVCNAME_COMBO")
public ModelAndView eaiSvcNameCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
// String eaiBizCode = RecordAuthUtil.getRecordAuthQuery(request);
List listCnvsnType = comboService.getFromCode("CNVSN_TYPE");
List<ComboVo> listInoutTypeCd = comboService.getFromCode("INOUT_TYPE");//EAI서버구분코드
List<ComboVo> listUseYn = comboService.getFromCode("USE_YN");
Map resultMap = new HashMap();
resultMap.put("cnvsnTypeRows" , listCnvsnType);
resultMap.put("inoutTypeRows" , listInoutTypeCd);
resultMap.put("useYnRows" , listUseYn);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
// @RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_LAYOUT_COMBO")
// public ModelAndView layoutCombo( HttpServletRequest request,
// HttpServletResponse response) throws Exception {
//
// String eaiBizCode = RecordAuthUtil.getRecordAuthQuery(request);
// List list = service.selectLayoutCombo(eaiBizCode);
//
// Map resultMap = new HashMap();
// resultMap.put("rows" , list);
//
// ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
// return modelAndView;
// }
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_FUNCTION_COMBO")
public ModelAndView functionCombo( HttpServletRequest request,
HttpServletResponse response) throws Exception {
List list = service.selectFunctionCombo();
Map resultMap = new HashMap();
resultMap.put("rows" , list);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_TRANSFORM4EAISVCNAME_COMBO")
public ModelAndView transformForEaiSvcNameCombo( HttpServletRequest request,
HttpServletResponse response, String eaiSvcName) throws Exception {
List list = service.selectTransformForEaiSvcNameCombo(eaiSvcName);
Map resultMap = new HashMap();
resultMap.put("rows" , list);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_LAYOUT_ITEM")
public ModelAndView listLayoutItem(HttpServletRequest request, HttpServletResponse response,String loutName) throws Exception {
List list = service.selectLayoutItems(loutName);
HashMap map = new HashMap();
map.put("rows", list);
ModelAndView modelAndView = new ModelAndView("jsonView",map);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST")
public ModelAndView list( HttpServletRequest request,
HttpServletResponse response,JsonPageVo pageVo,
String searchBizCode, String searchCnvsnName,String searchCnvsnDesc) throws Exception {
//String eaiBizCode = RecordAuthUtil.getRecordAuthQuery(request);
HashMap map = service.selectList(pageVo.getStartNum(), pageVo.getEndNum(),searchBizCode, searchCnvsnName,searchCnvsnDesc);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map resultMap = new HashMap();
resultMap.put("total" , pageVo.getTotal()); //전체 페이지수
resultMap.put("page" , pageVo.getPage()); //현재 페이지수
resultMap.put("records", pageVo.getTotalCount());//전체 레코드건수
resultMap.put("rows" , map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
// @RequestMapping(value= "/onl/admin/common/codeMan.json",params = "cmd=DETAIL")
// private ModelAndView detail(HttpServletRequest request,
// HttpServletResponse response,String msg) throws Exception {
//
// HashMap map = transformManService.selectDetail(msg);
//
// ModelAndView modelAndView = new ModelAndView("jsonView",map);
//
// return modelAndView;
// }
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=INSERT")
private String insert(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap param) throws Exception {
service.insert(param);
String cnvsnName = (String)param.get("cnvsnName");
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.ReloadTransformCommand",cnvsnName);
agentUtilService.broadcast(command);
String eaiSvcName = (String)param.get("eaiSvcName");
if(eaiSvcName != null && !"".equals(eaiSvcName)){
command = new CommonCommand("com.eactive.eai.agent.eaimessage.ReloadEAIMessageCommand",eaiSvcName);
agentUtilService.broadcast(command);
}
return null;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=DELETE")
private String delete(HttpServletRequest request,
HttpServletResponse response, String cnvsnName,String eaiSvcName,String cnvsnType ) throws Exception {
service.delete(cnvsnName,eaiSvcName,cnvsnType);
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.RemoveTransformCommand",cnvsnName);
agentUtilService.broadcast(command);
if(eaiSvcName != null && !"".equals(eaiSvcName)){
command = new CommonCommand("com.eactive.eai.agent.eaimessage.ReloadEAIMessageCommand",eaiSvcName);
agentUtilService.broadcast(command);
}
return null;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=DELETE_LIST")
private ModelAndView deleteMulti(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> map ) throws Exception {
String message = "";
String[] cnvsnNameArr = ((String) map.get("cnvsnNames")).split(",");
String eaiSvcNamesString = (String) map.get("eaiSvcNames") + ",";
String cnvsnTypesString = (String) map.get("cnvsnTypes") + ",";
String[] eaiSvcNameArr = StringUtils.splitPreserveAllTokens(eaiSvcNamesString, ",");
String[] cnvsnTypeArr = StringUtils.splitPreserveAllTokens(cnvsnTypesString, ",");
int idx = 0;
for(String cnvsnName : cnvsnNameArr){
service.delete(cnvsnName,eaiSvcNameArr[idx],cnvsnTypeArr[idx]);
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.RemoveTransformCommand",cnvsnName);
agentUtilService.broadcast(command);
if(eaiSvcNameArr[idx] != null && !"".equals(eaiSvcNameArr[idx])){
command = new CommonCommand("com.eactive.eai.agent.eaimessage.ReloadEAIMessageCommand",eaiSvcNameArr[idx]);
agentUtilService.broadcast(command);
}
idx++;
}
message = ""+idx+"건을 삭제하였습니다";
Map resultMap = new HashMap();
resultMap.put("message" , message);
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_TRANSFORM_SOURCE_RESULT")
public ModelAndView transformSourceResult( HttpServletRequest request,
HttpServletResponse response,String cnvsnName) throws Exception {
List list = service.selectTransformSourceResult(cnvsnName );
HashMap map = new HashMap();
map.put("rows", list);
ModelAndView modelAndView = new ModelAndView("jsonView",map);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_TRANSFORM_ITEM")
public ModelAndView transformItem( HttpServletRequest request,
HttpServletResponse response,String cnvsnName,String loutName) throws Exception {
// String eaiBizCode = RecordAuthUtil.getRecordAuthQuery(request);
List list = service.selectTransformItems(cnvsnName ,loutName );
HashMap map = new HashMap();
map.put("rows", list);
ModelAndView modelAndView = new ModelAndView("jsonView",map);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=UPDATE")
public ModelAndView update( HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> paramMap ) throws Exception {
String gridData = (String)paramMap.get("gridData");
Gson gson = new Gson();
HashMap[] list = gson.fromJson(gridData, HashMap[].class);
paramMap.put("list", list);
service.transaction(paramMap);
String cnvsnName = (String)paramMap.get("cnvsnName");
String eaiSvcName = (String)paramMap.get("eaiSvcName");
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.ReloadTransformCommand",cnvsnName);
agentUtilService.broadcast(command);
if(eaiSvcName != null && !"".equals(eaiSvcName)){
command = new CommonCommand("com.eactive.eai.agent.eaimessage.ReloadEAIMessageCommand",eaiSvcName);
agentUtilService.broadcast(command);
}
return null;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=INITIALIZES")
public ModelAndView initializes(HttpServletRequest request,
HttpServletResponse response) throws Exception {
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.ReloadTransformCommand","ALL");
HashMap returnMap = agentUtilService.broadcast(command);
HashMap map = new HashMap();
map.put("message", CommonUtil.getMapString(returnMap, true));
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
@Autowired
private LayoutManService layoutManService;
@GetMapping(value = "/onl/admin/rule/transformMan.view")
public String view() {
return "/onl/admin/rule/transformMan";
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=INITIALIZE")
public ModelAndView initialize(HttpServletRequest request,
HttpServletResponse response, String cnvsnName) throws Exception {
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.ReloadTransformCommand",cnvsnName);
HashMap returnMap = agentUtilService.broadcast(command);
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=DETAIL")
public String detailView() {
return "/onl/admin/rule/transformManDetail";
}
HashMap map = new HashMap();
map.put("message", CommonUtil.getMapString(returnMap, true));
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=DETAIL*POPUP")
public String detailPopupView() {
return "/onl/admin/rule/transformManDetailPopup";
}
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
}
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=LAYOUT")
public String layoutView() {
return "/onl/admin/rule/transformManLayout";
}
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=NEW")
public String newView() {
return "/onl/admin/rule/transformManNew";
}
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=POPUP CALENDAR")
public String popupCalendarView() {
return "/onl/admin/rule/transformManPopupCalendar";
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=LIST_INITIALIZE")
public ModelAndView listInitialize(HttpServletRequest request,
HttpServletResponse response, @RequestParam HashMap<String,Object> paramMap) throws Exception {
String[] chkItemsArr = ((String) paramMap.get("chkItems")).split(",");
Vector vec = new Vector<>();
for(String chkItem : chkItemsArr){
@GetMapping(value = "/onl/admin/rule/transformMan.view", params = "cmd=API_POPUP")
public String apiPopupView() {
return "/onl/admin/rule/transformManApiPopup";
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_INIT_COMBO")
public ResponseEntity<Map<String, Object>> initCombo(HttpServletRequest request, String eaiSvcName, String cnvsnName) {
String roleId = SessionManager.getRoleIdString(request);
String isAdmin = "N";
if (roleId.indexOf("admin") > -1) {
// admin 일경우
isAdmin = "Y";
}
List<ComboVo> listFunction = comboService.getFromFunction();
List<ComboVo> listTransform = comboService.getFromTransform(eaiSvcName, cnvsnName);
List<ComboVo> listCnvsnType = comboService.getFromCode("CNVSN_TYPE");
List<ComboVo> listSvrDstcd = comboService.getFromCode("INOUT_TYPE");
List<ComboVo> listUseYn = comboService.getFromCode("USE_YN");
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("functionRows", listFunction);
resultMap.put("transformRows", listTransform);
resultMap.put("cnvsnType", listCnvsnType);
resultMap.put("svrDstcd", listSvrDstcd);
resultMap.put("isAdmin", isAdmin);
resultMap.put("useYnRows", listUseYn);
return ResponseEntity.ok(resultMap);
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_EAISVCNAME_COMBO")
public ResponseEntity<Map<String, Object>> eaiSvcNameCombo(HttpServletRequest request,
HttpServletResponse response) {
List<ComboVo> listCnvsnType = comboService.getFromCode("CNVSN_TYPE");
List<ComboVo> listInoutTypeCd = comboService.getFromCode("INOUT_TYPE");
List<ComboVo> listUseYn = comboService.getFromCode("USE_YN");
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("cnvsnTypeRows", listCnvsnType);
resultMap.put("inoutTypeRows", listInoutTypeCd);
resultMap.put("useYnRows", listUseYn);
return ResponseEntity.ok(resultMap);
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_LAYOUT_ITEM")
public ResponseEntity<GridResponse<LayoutItemUI>> listLayoutItem(String loutName) {
List<LayoutItemUI> list = service.selectLayoutItems(loutName);
return ResponseEntity.ok(new GridResponse<>(list));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST")
public ResponseEntity<GridResponse<TransformUI>> list(Pageable pageable, String searchCnvsnName,
String searchCnvsnDesc, String searchBizCode, String searchIfSvcCd) {
Page<TransformUI> page = service
.selectList(pageable, searchCnvsnName, searchCnvsnDesc, searchBizCode, searchIfSvcCd);
return ResponseEntity.ok(new GridResponse<>(page));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=INSERT")
public ResponseEntity<Void> insert(TransformUI transformUI) {
service.insert(transformUI);
CommonCommand
.builder()
.name(CommonCommand.RELOAD_TRANSFORM_COMMAND)
.args(transformUI.getCnvsnName())
.build()
.broadcast(agentUtilService);
String eaiSvcName = transformUI.getEaiSvcName();
if (eaiSvcName != null && !"".equals(eaiSvcName)) {
CommonCommand
.builder()
.name(CommonCommand.RELOAD_EAI_MESSAGE_COMMAND)
.args(eaiSvcName)
.build()
.broadcast(agentUtilService);
}
return ResponseEntity.ok().build();
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=DELETE")
public ResponseEntity<Void> delete(String cnvsnName, String eaiSvcName, String cnvsnType) {
service.delete(cnvsnName, eaiSvcName, cnvsnType);
CommonCommand
.builder()
.name(CommonCommand.REMOVE_TRANSFORM_COMMAND)
.args(cnvsnName)
.build()
.broadcast(agentUtilService);
if (eaiSvcName != null && !"".equals(eaiSvcName)) {
CommonCommand
.builder()
.name(CommonCommand.RELOAD_EAI_MESSAGE_COMMAND)
.args(eaiSvcName)
.build()
.broadcast(agentUtilService);
}
return ResponseEntity.ok().build();
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=DELETE_LIST")
public ResponseEntity<SimpleResponse> deleteMulti(String[] cnvsnNames, String[] eaiSvcNames, String[] cnvsnTypes) {
String message = "";
int idx = 0;
for (String cnvsnName : cnvsnNames) {
if(StringUtils.isBlank(eaiSvcNames[idx])){
service.delete(cnvsnName, "", cnvsnTypes[idx]);
} else {
service.delete(cnvsnName, eaiSvcNames[idx], cnvsnTypes[idx]);
}
CommonCommand
.builder()
.name(CommonCommand.REMOVE_TRANSFORM_COMMAND)
.args(cnvsnName)
.build()
.broadcast(agentUtilService);
if (eaiSvcNames[idx] != null && !"".equals(eaiSvcNames[idx])) {
CommonCommand
.builder()
.name(CommonCommand.RELOAD_EAI_MESSAGE_COMMAND)
.args(eaiSvcNames[idx])
.build()
.broadcast(agentUtilService);
}
idx++;
}
message = "" + idx + "건을 삭제하였습니다";
return ResponseEntity.ok(SimpleResponse.of(message));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_TRANSFORM_SOURCE_RESULT")
public ResponseEntity<GridResponse<TransformSourceResultUI>> transformSourceResult(String cnvsnName) {
List<TransformSourceResultUI> list = service.selectTransformSourceResult(cnvsnName);
return ResponseEntity.ok(new GridResponse<>(list));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_TRANSFORM_ITEM")
public ResponseEntity<GridResponse<LayoutItemUI>> transformItem(String cnvsnName, String loutName,
String srcLayoutName) {
List<LayoutItemUI> list = service.selectTransformItems(cnvsnName, loutName, srcLayoutName);
return ResponseEntity.ok(new GridResponse<>(list));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=UPDATE")
public ResponseEntity<Void> update(TransformUI transformUI) {
service.transaction(transformUI);
CommonCommand
.builder()
.name(CommonCommand.RELOAD_TRANSFORM_COMMAND)
.args(transformUI.getCnvsnName())
.build()
.broadcast(agentUtilService);
if (StringUtils.isNotBlank(transformUI.getEaiSvcName())) {
CommonCommand
.builder()
.name(CommonCommand.RELOAD_EAI_MESSAGE_COMMAND)
.args(transformUI.getEaiSvcName())
.build()
.broadcast(agentUtilService);
}
return ResponseEntity.ok().build();
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=INITIALIZES")
public ResponseEntity<SimpleResponse> initializes() {
String message = CommonCommand
.builder()
.name(CommonCommand.RELOAD_TRANSFORM_COMMAND)
.args("ALL")
.build()
.broadcast(agentUtilService)
.getMessage(true);
return ResponseEntity.ok(SimpleResponse.of(message));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=INITIALIZE")
public ResponseEntity<SimpleResponse> initialize(String cnvsnName) {
String message = CommonCommand
.builder()
.name(CommonCommand.RELOAD_TRANSFORM_COMMAND)
.args(cnvsnName)
.build()
.broadcast(agentUtilService)
.getMessage(true);
return ResponseEntity.ok(SimpleResponse.of(message));
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_INITIALIZE")
public ResponseEntity<SimpleResponse> listInitialize(String[] chkItems) {
Vector<String> vec = new Vector<>();
for (String chkItem : chkItems) {
vec.add(chkItem);
}
CommonCommand command = new CommonCommand("com.eactive.eai.agent.transformer.ReloadTransformListCommand",vec);
HashMap returnMap = agentUtilService.broadcast(command);
HashMap map = new HashMap();
map.put("message", CommonUtil.getMapString(returnMap, true));
String message = CommonCommand
.builder()
.name(CommonCommand.RELOAD_TRANSFORM_LIST_COMMAND)
.args(vec)
.build()
.broadcast(agentUtilService)
.getMessage(true);
ModelAndView modelAndView = new ModelAndView("jsonView", map);
return modelAndView;
return ResponseEntity.ok(SimpleResponse.of(message));
}
@RequestMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_LAYOUT")
private ModelAndView selectLoutList(HttpServletRequest request,
JsonPageVo pageVo , @RequestParam HashMap<String,Object> paramMap ) throws Exception {
HashMap map = service.selectLayoutList( pageVo.getStartNum(), pageVo.getEndNum(), paramMap);
pageVo.setTotalCount((Integer)map.get("totalCount"));
Map resultMap = new HashMap();
resultMap.put("total" , pageVo.getTotal()); //전체 페이지수
resultMap.put("page" , pageVo.getPage()); //현재 페이지수
resultMap.put("records", pageVo.getTotalCount());//전체 레코드건수
resultMap.put("rows" , map.get("list"));
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=LIST_LAYOUT")
public ResponseEntity<GridResponse<LayoutUI>> selectLoutList(Pageable pageable, LayoutUISearch layoutUISearch) {
Page<LayoutUI> page = layoutManService.selectList(pageable, layoutUISearch);
return ResponseEntity.ok(new GridResponse<>(page));
}
@RequestMapping(value="/onl/admin/rule/transformMan.json", params="cmd=CHANGE_EXPORT")
public ModelAndView exportData(HttpServletRequest request, @RequestParam HashMap<String,Object> paramMap) throws Exception {
HashMap<String, Object> resultMap = new HashMap<String, Object>();
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=CHANGE_EXPORT")
public ModelAndView exportData(HttpServletRequest request, @RequestParam HashMap<String, Object> paramMap)
throws Exception {
HashMap<String, Object> resultMap = new HashMap<>();
String userId = SessionManager.getUserId(request);
if (!SystemUtil.isDevServer()){
throw new Exception("only support dev server ");
}
try {
String cnvsnNames = (String)paramMap.get("cnvsnNames");
//취약점소스 수정 2020.08.25
String[] arrCnvsnNames = null;
if(cnvsnNames != null){
arrCnvsnNames = cnvsnNames.split("\\,");
paramMap.put("userId", userId);
paramMap.put("arrCnvsnNames", arrCnvsnNames);
service.exportData(paramMap);
}
if (!SystemUtil.isDevServer()) {
throw new EMSRuntimeException("only support dev server ");
}
try {
String cnvsnNames = (String) paramMap.get("cnvsnNames");
// 취약점소스 수정 2020.08.25
String[] arrCnvsnNames = null;
if (cnvsnNames != null) {
arrCnvsnNames = cnvsnNames.split("\\,");
paramMap.put("userId", userId);
paramMap.put("arrCnvsnNames", arrCnvsnNames);
service.exportData(paramMap);
}
resultMap.put("message", "전송이 성공적으로 완료되었습니다");
} catch (BizException be) {
} catch (BizException be) {
throw new Exception(be.getMessage());
} catch (Exception e) {
logger.error(e.getMessage());
throw new Exception(localeMessage.getString("errors.checklog"));
}
ModelAndView modelAndView = new ModelAndView("jsonView", resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.excel",params = "cmd=LIST_GRID_TO_EXCEL")
public ModelAndView listGridToExcel(HttpServletRequest request, HttpServletResponse response, @RequestParam HashMap<String,Object> paramMap) throws Exception {
HashMap<String,Object> resultMap = new HashMap<String,Object>();
HashMap<String, String>[] list2 ;
Gson gson = new Gson();
if(paramMap.get("gridData")==null){
String headersStr = (String) paramMap.get("headersStr");
headersStr = headersStr.substring(0, headersStr.length()-1);
paramMap.put("headersStr", headersStr);
@SuppressWarnings("unchecked")
HashMap<String, Object> list = service.selectListToExcel(request,paramMap);
String jsonStr = gson.toJson(list.get("list"));
list2 = gson.fromJson(jsonStr, HashMap[].class);
}else{
list2=gson.fromJson((String) paramMap.get("gridData"), HashMap[].class);
}
String[] headers = gson.fromJson((String) paramMap.get("header"), String[].class);
String[] headerTitles = gson.fromJson((String)paramMap.get("headerTitle"), String[].class);
HashMap<String, Object>[] lmerge = null;
String merge = (String)paramMap.get("merge");
if (merge !=null){
lmerge = gson.fromJson(merge, HashMap[].class);
}
resultMap.put("headers", headers);
resultMap.put("headerTitles", headerTitles);
resultMap.put("datas", list2);
resultMap.put("fileName", (String)paramMap.get("fileName"));
resultMap.put("merge", lmerge);
ModelAndView modelAndView = new ModelAndView("excelView",resultMap);
return modelAndView;
}
@RequestMapping(value= "/onl/admin/rule/transformMan.json",params = "cmd=DETAIL_POP")
public ModelAndView selectCnvsnDetailPop( HttpServletRequest request, HttpServletResponse response, String cnvsnName,String tgt_layout,String src_layout) throws Exception {
List list = service.selectCnvsnDetailPop(cnvsnName ,tgt_layout,src_layout);
HashMap map = new HashMap();
map.put("rows", list);
ModelAndView modelAndView = new ModelAndView("jsonView",map);
return modelAndView;
}
@RequestMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=CLONETOPROD")
private ModelAndView cloneToProd(HttpServletRequest request, @RequestParam HashMap<String, Object> paramMap)
@PostMapping(value = "/onl/admin/rule/transformMan.excel", params = "cmd=LIST_GRID_TO_EXCEL")
public ModelAndView listGridToExcel(String searchCnvsnName, String searchCnvsnDesc, String searchBizCode,
String searchIfSvcCd) throws Exception {
HashMap<String, Object> resultMap = new HashMap<>();
List<Map<String, Object>> datas = service
.selectListToExcel(searchCnvsnName, searchCnvsnDesc, searchBizCode, searchIfSvcCd);
resultMap.put("datas", datas);
return new ModelAndView("excelView", resultMap);
}
@PostMapping(value = "/onl/admin/rule/transformMan.json", params = "cmd=CLONETOPROD")
public ModelAndView cloneToProd(HttpServletRequest request, @RequestParam HashMap<String, Object> paramMap)
throws Exception {
if (SystemUtil.isProdServer()) {
throw new Exception("only support dev, stage server");
throw new EMSRuntimeException("only support dev, stage server");
}
HashMap<String, Object> resultMap = new HashMap<String, Object>();
HashMap<String, Object> resultMap = new HashMap<>();
String userId = SessionManager.getUserId(request);
String serviceKey = SessionManager.getServiceTypeKey(request);
String cmTitle = MapUtils.getString(paramMap, "CmTitle", "Deploy Layout");
String cmTitle = MapUtils.getString(paramMap, "CmTitle", "Deploy Layout Mapping");
String cmDate = StringUtil.getNullStr(paramMap.get("CmDate"));
String cmTime = StringUtil.getNullStr(paramMap.get("CmTime"));
String ListTransformName = StringUtil.getNullStr(paramMap.get("ListTransformName"));
String[] eaiCnvsnNames = ListTransformName.split("\\,");
String listTransformName = StringUtil.getNullStr(paramMap.get("ListTransformName"));
String[] transformNames = listTransformName.split("\\,");
String downloadPath = monitoringContext.getStringProperty(MonitoringContext.IOMAP_DOWNLOAD_PATH);
downloadPath = StringUtils.removeEnd(downloadPath, File.separator) + File.separator + serviceKey
+ File.separator;
@@ -496,7 +408,7 @@ public class TransformController extends BaseController {
logger.info("serviceKey=" + serviceKey);
logger.info("cmDate=" + cmDate);
logger.info("cmTime=" + cmTime);
logger.info("ListTransformName=" + ListTransformName);
logger.info("listTransformName=" + listTransformName);
logger.info("downloadPath=" + downloadPath);
logger.info("targetName=" + targetName); // 스테이징, 운영서버
logger.info("targetUrl=" + targetUrl); // http://127.0.0.1:20100
@@ -507,8 +419,8 @@ public class TransformController extends BaseController {
String items = "";
// 0. 서브 배포 목록 확보
HashMap<String, ArrayList<HashMap<String, String>>> listMap = historyService.userHistoryListByTransform(dt,
eaiCnvsnNames);
HashMap<String, ArrayList<HashMap<String, String>>> listMap = historyService
.userHistoryListByTransform(dt, transformNames);
if (listMap != null && listMap.size() > 0) {
// 1. 파일 생성
@@ -516,20 +428,20 @@ public class TransformController extends BaseController {
loaderService.makeDataFiles(dt, downloadPath, listMap);
} catch (Exception e) {
logger.error(e.getMessage(), e);
throw new Exception("Make Datafile error:" + e.getMessage());
throw new EMSRuntimeException("Make Datafile error:" + e.getMessage());
}
// 2. 파일 배포
try {
if (StringUtils.isBlank(targetUrl)) {
throw new Exception("Set EMS property:" + MonitoringContext.IOMAP_DEPLOY_TARGET_URL);
throw new EMSRuntimeException("Set EMS property:" + MonitoringContext.IOMAP_DEPLOY_TARGET_URL);
}
String url = targetUrl + "/monitoring/loader.do";
loaderService.deployDataToTargetSystem(url, downloadPath, listMap, serviceKey);
} catch (Exception e) {
logger.error(e.getMessage(), e);
throw new Exception("Deploy to target System(" + targetName + ") error:" + e.getMessage());
throw new EMSRuntimeException("Deploy to target System(" + targetName + ") error:" + e.getMessage());
}
items += historyService.parseSimple(serviceKey, "", listMap);
@@ -541,7 +453,7 @@ public class TransformController extends BaseController {
loaderService.scheduleDeployDataApply(url, userId, userIp, serviceKey, cmTitle, cmDate, cmTime, items);
} catch (Exception e) {
logger.error(e.getMessage(), e);
throw new Exception("Apply DeployData or Apply Schedule error:" + e.getMessage());
throw new EMSRuntimeException("Apply DeployData or Apply Schedule error:" + e.getMessage());
}
resultMap.put("message", localeMessage.getMessage("ruleDeploy.msg4"));