Authored by 王涛

Merge branch 'master-V32-XuHaoJie' into 'master'

杭州-资源视图-添加新详情页



See merge request !79
... ... @@ -2911,6 +2911,92 @@ layui.define(['soulTable', 'commonDetail', 'common', 'laytpl', 'view', 'admin',
'#' + id, {tips: 1});
}
},
//详情页事件
detailPage: function (resId,resType,editFlag,provider,name,ip,resTypeName,adminName,manageIp,collProtocol) {
if(resType == 'NETHARDWARE_LINK'){
return;
}
// 共享设备,厂商是H3C、HDS的设备不让查看详情页,没有数据
if(resType == 'STORAGE_SHARE' && (provider == 'H3C' || provider == 'HDS')){
return;
}
// 阿里云,华为云不能点击
if(resType == 'ALI_CLOUD_PLAT' || resType == 'HUAWEI_CLOUD_PLAT'){
return ;
}
var nameClickLoading = layer.load(2);
var resName = name;
if (name && name !== '') {
name += '|';
}
if (resTypeName && resType !== 'HOST_X86SERVER') {
name += resTypeName + '|';
}
if (ip) {
if (resType === 'HOST_X86SERVER') {
if (collProtocol && (collProtocol.split(",").length > 1 || collProtocol === 'SSH')) {
name += '应用IP-' + ip + '|';
}
} else {
name += ip + '|';
}
}
if (resType === 'HOST_X86SERVER' && collProtocol && collProtocol.indexOf('SNMP') !== -1 ) {
if (manageIp) {
name += '管理IP-' + manageIp + '|';
}
}
if (adminName) {
name += adminName + '|';
}
if (name.length > 0) {
name = name.substr(0, name.length - 1);
}
if (editFlag) {
commonDetail.openDetail(resId, resType, name, editFlag, function (data) {
$.each(data, function (i, e) {
var obj = {};
obj.resId = resId;
obj.resName = resName;
obj.kpiId = e.kpiId;
obj.kpiName = e.kpiName;
obj.flag = e.flag;
obj.unit = e.unit;
obj.name = e.name;
obj.interval = 'DAY';
if (e.kpiName != e.name) {
obj.showName = e.kpiName + e.name;
} else {
obj.showName = e.kpiName;
}
tabDom(resName, obj.showName, e.name, JSON.stringify(obj))
})
$(".choose-tab>a").unbind("click").on("click", function () {
$(this).parent().remove();
})
})
} else {
var pingEnable = $(this).data("pingenable"); //获取pingEnable的值 joke add 20200619
if (pingEnable == '2') { //如果pingEnable为2,则进入ping状态详情页面
commonDetail.openNewWin('template/detail/pingIndex', name, {'resId': resId}, false);
} else { //否则进入监控详情页面
commonDetail.openDetail(resId, resType, name, editFlag,null,null,null,true);
}
}
layer.close(nameClickLoading);
function tabDom(resName, kpiName, name, info) {
//<div class="choose-tab"><span>浙江税务_出口退税_sc_134-内存使用率</span><a href="javascript:;">x</a></div>
var html =
'<div class="choose-tab">' +
'<input type="hidden" name="chooseDataInfo">' +
'<span>' + resName + '-' + kpiName + '</span>' +
'<a href="javascript:;">x</a>' +
'</div>'
var $dom = $(html)
$dom.find("input[type=hidden][name=chooseDataInfo]").val(info);
$(".choose-resKpiInfo>.layui-card-header").append($dom);
}
}
};
//对外暴露的接口
... ...
... ... @@ -2763,8 +2763,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
},
//打开详细信息
openDetail:function (resId,resType,title,editFlag,fn,cancelfn,type) {
//打开详细信息 旧版不传sign 新版传sign_
openDetail:function (resId,resType,title,editFlag,fn,cancelfn,type,sign_) {
resId = encodeURIComponent(resId)
layer.load(2);
if(editFlag && editFlag == true){
... ... @@ -2941,7 +2941,7 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
layer.alert('该资源只对接TRAP告警信息!',{icon:0});
return;
}
obj.openNewWin(url, title, params, editFlag, fn, cancelfn, type);
obj.openNewWin(url, title, params, editFlag, fn, cancelfn, type,sign_);
},
error: function () {
layer.closeAll('loading');
... ... @@ -2990,7 +2990,9 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
return cssStyle;
},
//打开弹框
openNewWin:function (url,name,params,editFlag,fn,cancelfn,type) {
openNewWin:function (url,name,params,editFlag,fn,cancelfn,type,sign_) {
//新视图设置百分百
var area= sign_?['100%','100%']:['90%','90%'];
if(!name){ name = "信息"; }
var btns = false;
//如果是编辑状态展示确定按钮
... ... @@ -3003,12 +3005,16 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
title: [name, 'font-size:20px;background-color: #d0ddec;'],
type: 1,
id: md5(url),
area: ['90%','90%'],
area: area ,
shadeClose: true,//开启遮罩层
content: laytpl(res.body).render(JSON.stringify(params)),
btn:btns,
move:false,
success:function(index){
success:function(layero,index){
if(sign_){
//关闭悬浮框有上角叉号
layero.find(".layui-layer-close1").addClass("hide");
}
if(params.state == 'stop' || params.state == 'alarmIgnore'){
$("a[data-opts='start']").show();
}else if(params.state == 'monitor'){
... ...
<div class="detail_page_common" style="min-width: 100%;min-height: 100%" data-name="detail_page_common">
</div>
<script type="text/javascript">
//资源指标列表
layui.define(['table', 'form','sessions','common'], function (exports) {
var commonDetail = layui.commonDetail;
layui.define(['table', 'form','sessions','common','commonCols'], function (exports) {
var commonCols= layui.commonCols;
//获取传递过来的数据 初始化默认值
let obj ={
resId:"139adf9dcb154dc4af835a16c241c784",//资源id
resType:"HOST_X86SERVER",//资源类型
editFlag: false,//编辑标识
provider:"",//厂商
name:"",//资源名称
ip:"",//IP
resTypeName:"",//资源类型名称
adminName:"",//管理员名称
manageIp:"",//管理ip
collProtocol:"ssh",//采集协议
}
//对外暴露的接口
commonDetail.openDetail(resId,resType,"详情页",true,function(data){
if(data){
console.log(111);
}
});
function initDetailPage(){
commonCols.detailPage(obj.resId,obj.resType,obj.editFlag,obj.provider,obj.name,obj.ip,obj.resTypeName,obj.adminName,obj.manageIp,obj.collProtocol);
}
initDetailPage()
});
</script>
... ...