ESBReturnParamsBrowser.jsp 10.3 KB
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ include file="/systeminfo/init_wev8.jsp" %>
<%@ taglib uri="/WEB-INF/weaver.tld" prefix="wea" %>
<%@ taglib uri="/WEB-INF/tld/browser.tld" prefix="brow" %>
<%@ page import="java.util.*" %>
<%@ page import="com.api.integration.esb.bean.ClientBean" %>
<%@ page import="com.alibaba.fastjson.JSONArray" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%

    String titlename = SystemEnv.getHtmlLabelName(132139, user.getLanguage());

    String esbid = Util.null2String(request.getParameter("esbid"));
    String returnFieldNames = "";
    JSONArray paramList = new JSONArray();
    if(esbid.equals("")){
        esbid="0";
    } else {
        com.api.integration.esb.service.PublishService service = new com.api.integration.esb.service.PublishService(user);
        List<ClientBean> returnList = service.getResponseParams(""+esbid);
        JSONObject param = new JSONObject();
        ;String paramkey;
        for (int k = 0; k < returnList.size(); k++) {
            param = new JSONObject();
            paramkey = returnList.get(k).getParamKey();
            paramkey = paramkey.replace(".", "#");
            param.put("levels", paramkey);
            param.put("paramName", "" + returnList.get(k).getParamName() + "");
            param.put("paramType", "" + returnList.get(k).getParamType() + "");
            param.put("paramDesc", "" + returnList.get(k).getShowName() + "");
            param.put("paramKey", "" + returnList.get(k).getParamKey() + "");
            paramList.add(param);
        }
    }
%>
<HTML>
<HEAD>
    <LINK href="/css/Weaver_wev8.css" type=text/css rel=STYLESHEET>
    <SCRIPT language="javascript" src="/js/weaver_wev8.js"></script>

    <script type='text/javascript' src='/js/jquery-autocomplete/lib/jquery.bgiframe.min_wev8.js'></script>
    <script type='text/javascript' src='/js/jquery-autocomplete/lib/jquery.ajaxQueue_wev8.js'></script>
    <script type='text/javascript' src='/js/jquery-autocomplete/jquery.autocomplete_wev8.js'></script>
    <script type='text/javascript' src='/js/jquery-autocomplete/browser_wev8.js'></script>
    <link rel="stylesheet" type="text/css" href="/js/jquery-autocomplete/jquery.autocomplete_wev8.css"/>
    <link rel="stylesheet" type="text/css" href="/js/jquery-autocomplete/browser_wev8.css"/>

    <script language=javascript src="/js/ecology8/request/e8.browser_wev8.js"></script>
    <link rel="stylesheet" href="/wui/theme/ecology8/weaveredittable/css/WeaverEditTable_wev8.css">
    <script src="/wui/theme/ecology8/weaveredittable/js/WeaverEditTable_wev8.js"></script>
</head>
<body>

<div class="zDialog_div_content" style="overflow-y:auto;">
    <%@ include file="/systeminfo/TopTitle_wev8.jsp" %>
    <%@ include file="/systeminfo/RightClickMenuConent_wev8.jsp" %>

    <%@ include file="/systeminfo/RightClickMenu_wev8.jsp" %>
        
    <FORM id="addFrmMain" name="addFrmMain" method=post>
        <wea:layout>
            <wea:item attributes="{'colspan':'4','isTableList':'true'}">
                <TABLE class="ListStyle" id="routeParamsTable" name="routeParamsTable">
                    <COLGROUP>
                        <COL width="5%">
                        <COL width="45%">
                        <COL width="25%">
                        <COL width="25%">
                    </COLGROUP>
                    <TR class="header" noDelete="true">
                        <!-- 选择 -->
                        <TD align="center" style="word-break:keep-all;white-space:nowrap;">

                        </TD>
                        <!-- 参数名称 -->
                        <TD align="center" style="word-break:keep-all;white-space:nowrap;">
                            <%=SystemEnv.getHtmlLabelName(126481, user.getLanguage())%>
                        </TD>
                            <%-- 类别 --%>
                        <TD align="center" style="word-break:keep-all;white-space:nowrap;">
                            <%=SystemEnv.getHtmlLabelName(178, user.getLanguage())%>
                        </TD>
                            <%-- 说明 --%>
                        <TD align="center" style="word-break:keep-all;white-space:nowrap;">
                            <%=SystemEnv.getHtmlLabelName(85, user.getLanguage())%>
                        </TD>
                    </TR>
                    <TR style="height:1px;" class=line noDelete="true">
                        <TD ColSpan=5 style="height:1px;"></TD>
                    </TR>
                </TABLE>
            </wea:item>
        </wea:layout>
    </FORM>
        
</div>
<br/><br/><br/><br/>

<div id="zDialog_div_bottom" class="zDialog_div_bottom">
    <wea:layout type="2Col">
        <!-- 操作 -->
        <wea:group context="">
            <wea:item type="toolbar">
                <input type="button" value="<%=SystemEnv.getHtmlLabelName(311, user.getLanguage())%>"
                       class="e8_btn_cancel" onclick="clearMe();">
                <input type="button" value="<%=SystemEnv.getHtmlLabelName(201, user.getLanguage())%>"
                       class="e8_btn_cancel" onclick="closeMe();">
            </wea:item>
        </wea:group>
    </wea:layout>
</div>
</body>
</HTML>

<script>

    /**
     * 获取指定路由参数列表
     */
    function getRouteReturns() {

        $("#routeParamsTable tr:not([noDelete])").remove();

        var paramList = '<%=paramList.toString()%>';
        data = JSON.parse(paramList);
        for (var i = 0; i < data.length; i++) {
            addRow(data[i]);
        }

        //上下级关系 样式调整
        $("#routeParamsTable img[name='pefixImage']").each(function () {
            var levels = $(this).parents("#routeParamsTable tr[levels]").attr("levels");

            var ary = levels.split("#");
            var temp = ary[ary.length - 1];
            levels = levels.substring(0, (levels.length - temp.length));
            temp = parseInt(temp);
            if (temp < 9) {
                levels += "0" + (temp + 1);
            } else {
                levels += (temp + 1);
            }
            if ($("#routeParamsTable tr[levels^='" + levels + "']").length == 0) {
                $(this).attr("src", '/images/treeimages/lastblk_wev8.gif');
            }
        });

        setAssign();
    }

    /**
     * 添加参数
     */
    function addRow(data) {
        if (!data) {
            return;
        }

        var rownum = document.getElementById("routeParamsTable").rows.length;

        var oRow = document.getElementById("routeParamsTable").insertRow(rownum);

        $(oRow).attr("levels", data["levels"]);
        $(oRow).attr("paramName", data["paramName"]);
        $(oRow).attr("paramKey", data["paramKey"]);

        var oRowIndex = oRow.rowIndex;

        if (0 == oRowIndex % 2) {
            oRow.className = "DataLight";
        } else {
            oRow.className = "DataDark";
        }

        /*============ 选择 ============*/
        var oCell = oRow.insertCell(0);
        oCell.style.cssText = "style='word-break:keep-all;white-space:nowrap;'";
        var oDiv = document.createElement("div");
        $(oDiv).attr("name","paramKey_Div");

        var html = "<input type='radio' name='paramKey' />";

        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);

        /*============ 参数名称 ============*/
        var oCell = oRow.insertCell(1);
        oCell.style.cssText = "style='word-break:keep-all;white-space:nowrap;'";
        var oDiv = document.createElement("div");

        var ary = data["levels"].split("#");
        var width = 80;
        var html = "<span name='prefixSpan'>";
        if (ary.length > 1) {
            width = width - 7;
            for (var num = 2; num < ary.length; num++) {
                html += "&nbsp;&nbsp;&nbsp;&nbsp;";
                width = width - 5;
            }
            html += "<img name='pefixImage' src='/images/treeimages/midblk_wev8.gif' />&nbsp;";
        }
        html += "</span>" + data["paramName"];

        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);

        /*============ 类别 ============*/
        oCell = oRow.insertCell(2);
        oCell.style.cssText = "style='word-break:keep-all;white-space:nowrap;'";
        oDiv = document.createElement("div");

        html = data["paramType"];
        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);

        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);

        /*============ 说明 ============*/
        oCell = oRow.insertCell(3);
        oCell.style.cssText = "style='word-break:keep-all;white-space:nowrap;'";
        oDiv = document.createElement("div");

        html = data["paramDesc"];
        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);

        oDiv.innerHTML = html;
        oCell.appendChild(oDiv);
    }

    /**
     * 绑定点击事件
     */
    function setAssign() {
        $("#routeParamsTable tr[levels]").each(function () {

            var levels = $(this).attr("levels") + "#";

            if ($(this).attr("isArray") == "true"
                || $("#routeParamsTable tr[levels^='" + levels + "']").length == 0) {

                $(this).bind("click", function () {
                    var id = $(this).attr("paramKey");
                    var name = $(this).attr("paramName");

                    var returnjson = {
                        id: id,
                        name: name
                    };
                    if (dialog) {
                        dialog.callback(returnjson);
                    } else {
                        window.parent.returnValue = returnjson;
                        window.parent.close();
                    }
                });
            } else {
                $(this).find("div[name='paramKey_Div']").html("");
            }
        });
    }

    function clearMe() {
    	var returnjson = {
            id: "",
            name: ""
        };
        if (dialog) {
            dialog.callback(returnjson);
        } else {
            window.parent.returnValue = returnjson;
            window.parent.close();
        }
    }
    
    function closeMe() {
    	dialog.close();
    }

    var dialog;
    jQuery(document).ready(function () {

        try {
            dialog = parent.getDialog(window);
        } catch (e) {
        }
        if (!dialog) {
            try {
                dialog = parent.parent.getDialog(parent);
            } catch (e) {
            }
        }

        getRouteReturns();
    });

</script>