$(function(){
loadHosTree();
initWidget();
});
function initWidget(){
$("#selApiModule").combobox({
required:true,
editable:false,
valueField: 'id',
textField: 'text',
onSelect: function(node){
$("#apiModuleEnName").val(node.id);
}
});
$("#selApiSys").combobox({
required:true,
editable:false,
valueField: 'id',
textField: 'text',
url:$.common.urlByBizAction("DictionaryAction_queryDictionaryComboxNode"),
onBeforeLoad: function(param){
param.type = 'APISYSNAME';
},
onSelect: function(node){
var param = {};
param.type = 'APIMODULENAME';
param.pid = node.dicId;
var retData = Commonjs.ajax("./DictionaryAction_queryDictionaryComboxNode.action",param,false);
if( $("#apiSysEnName").val() != node.id){
$("#apiModuleEnName").val("");
$('#selApiModule').combobox('setValue', '');
$('#selApiModule').combobox('loadData', []);
$('#selApiModule').combobox('loadData', retData);
}
$("#apiSysEnName").val(node.id);
}
});
}
//加载树跟节点
function loadHosTree(){
var url = $.common.urlByBizAction("ApiAction_queryAllHosTreeNodes");
$('#tr').tree({
url:url,
onClick:function (node){
if(!$("#tr").tree("isLeaf",node.target)){
return;
}
var str = 'Api文档: (' + node.id + '-'+node.attributes+')';
$("#divMain").panel({title:str});
var parentNode = $('tr').tree('getParent',node.target);
showApiListBySys(node.attributes,node.id,parentNode.id);
showApiChannelBySys(node.attributes,node.id,parentNode.id);
},
loadFilter:function(data){
if (data.RespCode !=null){
$.messager.alert('异常',JSON.stringify(data.RespMessage),'error');
return data;
} else {
return data;
}
}
});
}
//点击模块节点,显示API
function showApiListBySys(sysName,sysEnName,hosId){
var param = {};
param.sysName = sysName;
param.sysEnName = sysEnName;
param.hosId = hosId;
$('#api_list').html("正在加载中,请稍等......");
$('#api_list').html("");
var retData = Commonjs.ajax("./ApiAction_queryApiModuleBySys.action",param,false);
var tempModuleName = "";
var str = "";
if( retData!= null && retData.length>0 ){
$.each(retData,function(i,row){
if( tempModuleName!=row.ModuleName ){
if(tempModuleName!=""){
str += '';
}
str += '
';
str += '';
str += ''+row.ModuleName+' 相关接口';
str += ' |
';
}
str += '';
str += ''+row.ApiName+'接口 | '+row.Api+' | ';
str += '
';
if(str==""){
str = "暂未发布接口!";
}
tempModuleName=row.ModuleName
});
}else if(retData != null ){//单条数据
str += '';
str += '';
str += ''+retData.ModuleName+' 相关接口';
str += ' |
';
str += '';
str += ''+retData.ApiName+'接口 | '+retData.Api+' | ';
str += '
';
str += '
';
}else{
str = "暂未发布接口!";
}
$('#api_list').append(str);
}
function showApiChannelBySys(sysName,sysEnName,hosId){
$('#tabChannelApi').html("");
var param = {};
param.sysName = sysName;
param.sysEnName = sysEnName;
param.hosId = hosId;
var html ="";
var retData = Commonjs.ajax("./ApiAction_queryApiChannelBySys.action",param,false);
if( retData!= null && retData.length>0){
html +="";
$.each(retData,function(i,row){
if( row.Checked == "true" ){
html +=""+row.ChannelName+"("+row.ChannelId+")" +
" | ";
}else{
html +=""+row.ChannelName+"("+row.ChannelId+")" +
" | ";
}
});
// html +="保存 | ";
html +="
";
}else if( retData!= null) {
html +="";
if( row.Checked == "true" ){
html +=""+retData.ChannelName+"("+row.ChannelId+")" +
" | ";
}else{
html +=""+retData.ChannelName+"("+row.ChannelId+")" +
" | ";
}
//html +="保存 | ";
html +="
";
}else{
html ="暂未配置渠道信息 |
"
}
$('#tabChannelApi').append(html);
$.parser.parse($('#tabChannelApi'));
}
function saveChanelToApi(sysName,sysEnName,hosId,channelId){
var param = {};
param.sysName = sysName;
param.sysEnName = sysEnName;
param.hosId = hosId;
param.channelId = channelId;
var retData = null
if($("#"+channelId).prop("checked")){//新增渠道关联
retData = Commonjs.ajax("./ApiAction_addSysChannelToApi.action",param,false);
}else{//删除渠道关联
retData = Commonjs.ajax("./ApiAction_deleteSysChannelToApi.action",param,false);
}
if( retData.RespCode != 10000 ){
//showApiChannelBySys(sysName,sysEnName,hosId);
$.messager.alert('提示','修改失败!','info');
} else{
$.messager.alert('提示','修改成功!','info');
}
// var checkedArray = $("input[name='channelApi']:checked");
// var channelArray = "";
// $.each(checkedArray,function(i,row){
// if( i== (checkedArray.length-1)){
// channelArray += $(this).val();
// }else{
// channelArray += $(this).val()+",";
// }
// });
// var param = {};
// param.sysName = sysName;
// param.sysEnName = sysEnName;
// param.hosId = hosId;
// param.ChannelIds = channelArray;
//
// var retData = Commonjs.ajax("./ApiAction_saveApiChannel.action",param,false);
// if( retData.RespCode != 10000 ){
// showApiChannelBySys(sysName,sysEnName,hosId);
// } else{
// $.messager.alert('提示','保存成功!','info');
// }
}
function addApiChannelInfo(){
$("#addApiForm").form('clear');
$("#dialogAddApi").dialog('open');
}
function addChannelApiInfo(){
if(!$("#addApiForm").form('validate')){
return ;
}
var param = {};
param.hosId = $("#selHosInfo").combobox('getValue');
param.api = $("#apiSysEnName").val()+"."+$("#apiModuleEnName").val()+"."+$("#apiEnName").val();
param.sysName = $("#selApiSys").combobox('getText');
param.moduleName = $("#selApiModule").combobox('getText');
param.apiName = $("#txtApiName").val();
param.md5 = $("#selMD5").combobox('getValue');
var retData = Commonjs.ajax("./ApiAction_addSysApiContor.action",param,false);
if( retData.RespCode != 10000 ){
$.messager.alert('提示','保存失败!','info');
$("#dialogAddApi").dialog('close');
} else{
$.messager.alert('提示','保存成功!请重新获取API清单!','info');
$("#dialogAddApi").dialog('close');
}
}
function showApi(api,apiName,hosId,retDataType,createTime){
var url = "api_param_dialog.html?api="+api+"&hosId="+hosId+"&apiName="+apiName+"&retDataType="+retDataType+"&createTime="+createTime;
var content = "";
$('#dialogApiParam').dialog({
title: 'API参数',
fit:true,
closed: false,
cache: false,
content:content,
modal: true,
maximizable: true,
collapsible: true,
toolbar: [{
text:'删除该API',
iconCls:'icon-remove',
handler:function(){
deleteSysApiContor(api,hosId);
}
},'-']
});
}
function deleteSysApiContor(api,hosId){
var param = {};
param.api = api;
param.hosId = hosId;
var retData = Commonjs.ajax("./ApiAction_deleteSysApiContor.action",param,false);
if(retData.RespCode == 10000 ){
$.messager.alert('提示','删除成功!请重新获取API清单','info',function(){
$('#dialogApiParam').dialog('close');
});
}else{
$.messager.alert('提示','删除失败!','info');
}
}