...
|
...
|
@@ -251,9 +251,11 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
return '<div class="small-icon small-icon-msg"></div>'
|
|
|
break;
|
|
|
}
|
|
|
}}
|
|
|
, {field: 'alarmTempTotal', title: '订阅对象', align: 'center', sort: true, width:120,
|
|
|
templet:function (d){
|
|
|
}
|
|
|
}
|
|
|
, {
|
|
|
field: 'alarmTempTotal', title: '订阅对象', align: 'center', sort: true, minWidth: 140,
|
|
|
templet: function (d) {
|
|
|
// if(d.useTotal != '0'){
|
|
|
// return `<div><span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-target">${d.useTotal}</span></div>`;
|
|
|
// }else{
|
...
|
...
|
@@ -263,7 +265,9 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
return `<div>
|
|
|
<!--<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-target">${d.useTotal}</span> / -->
|
|
|
<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-resource" lay-tips="资源订阅">${d.resSubTotal}</span> /
|
|
|
<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-kpi" lay-tips="指标订阅">${d.kpiSubTotal}</span>
|
|
|
<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-kpi" lay-tips="指标订阅">${d.kpiSubTotal}</span> /
|
|
|
<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-resType" lay-tips="资源类型">${d.resTypeSubTotal}</span> /
|
|
|
<span data-id="${d.subId}" class="layui-table-link view-alarmsubscribe-busId" lay-tips="业务系统">${d.busSubTotal}</span>
|
|
|
</div>`;
|
|
|
|
|
|
}}
|
...
|
...
|
@@ -304,9 +308,11 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
}
|
|
|
, {title: '操作', align: 'center',width:200,fixed: 'right', toolbar:
|
|
|
'<div>' +
|
|
|
'<button data-id="{{d.subId}}" lay-tips="删除" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-alarmsubscribe-btn"><i class="layui-icon layui-icon-delete"></i></button>'+
|
|
|
'<button data-id="{{d.subId}}" lay-tips="资源订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-resource-btn"><i class="layui-icon layui-icon-star"></i></button>'+
|
|
|
'<button data-id="{{d.subId}}" lay-tips="指标订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-kpi-btn"><i class="layui-icon layui-icon-star-fill"></i></button>'+
|
|
|
'<button data-id="{{d.subId}}" lay-tips="删除" type="button" class="layui-btn layui-btn-xs layui-btn-normal delete-alarmsubscribe-btn"><i class="layui-icon layui-icon-delete"></i></button>' +
|
|
|
'<button data-id="{{d.subId}}" lay-tips="资源订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-resource-btn"><i class="layui-icon layui-icon-star"></i></button>' +
|
|
|
'<button data-id="{{d.subId}}" lay-tips="指标订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-kpi-btn"><i class="layui-icon layui-icon-star-fill"></i></button>' +
|
|
|
'<button data-id="{{d.subId}}" lay-tips="资源类型订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-resType-btn"><i class="layui-icon layui-icon-star-fill"></i></button>' +
|
|
|
'<button data-id="{{d.subId}}" lay-tips="业务类型订阅" type="button" class="layui-btn layui-btn-xs layui-btn-normal alarmsubscribe-busId-btn"><i class="layui-icon layui-icon-star-fill"></i></button>' +
|
|
|
'</div>'
|
|
|
}
|
|
|
]],
|
...
|
...
|
@@ -475,7 +481,8 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
,data:{
|
|
|
subId:subId,
|
|
|
busId:busId,
|
|
|
resTypeCode:resTypeCode
|
|
|
resTypeCode:resTypeCode,
|
|
|
keyword:$('#condition-resType-keyword').val()
|
|
|
}
|
|
|
,done:function (res){
|
|
|
layer.closeAll('loading');
|
...
|
...
|
@@ -613,6 +620,15 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|
|
|
//回车搜索
|
|
|
$('#condition-resType-keyword').keydown(function (e) {
|
|
|
if (e.keyCode === 13) {
|
|
|
var bus = xmSelect.get('#dyglResListBusType', true);
|
|
|
var resType = xmSelect.get('#dyglResListResType', true);
|
|
|
reloadTbody(bus.getValue('valueStr'),resType.getValue('valueStr'));
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|
...
|
...
|
@@ -658,7 +674,6 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
}
|
|
|
|
|
|
function reloadData(res) {
|
|
|
|
|
|
var trs = '';
|
|
|
$.each(res.data,function (i,v){
|
|
|
trs += `<tr><td>${i+1}</td><td>${v.resName}</td><td>${v.ip}</td><td>${v.adminName}</td>
|
...
|
...
|
@@ -668,6 +683,11 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
<form class="layui-form layui-card-header layuiadmin-card-header-auto" lay-filter="dyglTools-form">
|
|
|
<div class="layui-form-item">
|
|
|
<div class="layui-inline">
|
|
|
<div class="layui-input-inline layui-input-inline--long">
|
|
|
<input type="text" id="condition-resType-keyword" placeholder="输入名称,回车搜索" autocomplete="off"
|
|
|
lay-tips="关键字检索包含: </br>IP地址</br>资源名称</br>负责人"
|
|
|
class="layui-input">
|
|
|
</div>
|
|
|
<div class="layui-input-inline layui-input-inline--long multi-query" id="dyglResListBusType">
|
|
|
</div>
|
|
|
<div class="layui-input-inline layui-input-inline--long multi-query" id="dyglResListResType">
|
...
|
...
|
@@ -742,8 +762,8 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
reloadalarmsubscribeTable();
|
|
|
});
|
|
|
$("#"+id).parent().parent().remove();
|
|
|
}else{
|
|
|
layer.msg("删除失败,请与管理员联系",{icon:7,time:3000});
|
|
|
} else {
|
|
|
layer.msg("删除失败,请与管理员联系", {icon: 7, time: 3000});
|
|
|
}
|
|
|
}
|
|
|
});
|
...
|
...
|
@@ -752,16 +772,37 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
}
|
|
|
});
|
|
|
});
|
|
|
|
|
|
//查看资源类型订阅列表
|
|
|
$(".view-alarmsubscribe-resType").on("click", function () {
|
|
|
var subId = $(this).data("id");
|
|
|
common.openWin("template/res/typeSubscribeList", "选择资源类型", {
|
|
|
subId: subId,
|
|
|
type: 0
|
|
|
}, ["返回"], function () {
|
|
|
reloadalarmsubscribeTable();
|
|
|
return true;
|
|
|
});
|
|
|
});
|
|
|
//查看业务类型订阅列表
|
|
|
$(".view-alarmsubscribe-busId").on("click", function () {
|
|
|
var subId = $(this).data("id");
|
|
|
common.openWin("template/res/typeSubscribeList", "选择业务系统", {
|
|
|
subId: subId,
|
|
|
type: 1
|
|
|
}, ["返回"], function () {
|
|
|
reloadalarmsubscribeTable();
|
|
|
return true;
|
|
|
});
|
|
|
});
|
|
|
//资源订阅
|
|
|
$(".alarmsubscribe-resource-btn").on("click",function (){
|
|
|
$(".alarmsubscribe-resource-btn").on("click", function () {
|
|
|
if ($.inArray('back:alarmsubscribe:resource', checkList) == -1) {
|
|
|
layer.msg('暂无权限!', {icon: 7, time: 3000});
|
|
|
return;
|
|
|
}
|
|
|
var subId = $(this).data("id");
|
|
|
var oldData = getResOrKpiBySubId(subId,'res');
|
|
|
oldData = $.map(oldData,function (item) {
|
|
|
var oldData = getResOrKpiBySubId(subId, 'res');
|
|
|
oldData = $.map(oldData, function (item) {
|
|
|
return item.resId;
|
|
|
})
|
|
|
common.openWin("template/res/reslist","选择资源",{oldData:oldData},["选择"], function () {
|
...
|
...
|
@@ -873,17 +914,65 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
return true;
|
|
|
});
|
|
|
});
|
|
|
//资源类型订阅
|
|
|
$(".alarmsubscribe-resType-btn").on("click", function () {
|
|
|
var subId = $(this).data("id");
|
|
|
var list = getResTypeOrBusId(subId, 0);
|
|
|
//回填数据
|
|
|
common.openWin("baseconfig/resourcetype/index", "选择资源类型", {"resTypes": list,"showType":0}, ["选择"], function () {
|
|
|
//找到选择的资源类型 并且订阅
|
|
|
var resourcetype = layui.resourcetype({"resTypes": list});
|
|
|
var data = resourcetype.getResTypeChecks();
|
|
|
insertResTypeOrBusId(data, 0, subId);
|
|
|
});
|
|
|
});
|
|
|
//业务类型订阅
|
|
|
$(".alarmsubscribe-busId-btn").on("click", function () {
|
|
|
var subId = $(this).data("id");
|
|
|
var list = getResTypeOrBusId(subId, 1);
|
|
|
//回填数据
|
|
|
common.openWin("baseconfig/bustype/index", "选择业务类型", {busIds: list}, ["选择"], function () {
|
|
|
//找到选择的所有业务 并且订阅
|
|
|
var bustype = layui.bustype({"busIds": list});
|
|
|
var data = bustype.getData();
|
|
|
insertResTypeOrBusId(data, 1, subId);
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|
|
|
//添加或修改 资源类型订阅或业务订阅
|
|
|
function insertResTypeOrBusId(data, type, subId, id) {
|
|
|
let typeCode = data.map(item => item.resTypeCode ? item.resTypeCode : item.busId).toString();
|
|
|
let typeSubscribe = {
|
|
|
id: id,
|
|
|
subId: subId,
|
|
|
subType: type,
|
|
|
typeCode: typeCode
|
|
|
};
|
|
|
admin.req({
|
|
|
url: common.domainName + '/api-web/bTypeSubscribe/insertOrChange?access_token=' + accessToken,
|
|
|
type: 'post',
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(typeSubscribe),
|
|
|
success: function (response) {
|
|
|
if (response.success) {
|
|
|
layer.closeAll();
|
|
|
layer.msg(!id ? '添加成功' : '修改成功', {icon: 1, time: 3000});
|
|
|
reloadalarmsubscribeTable();
|
|
|
}
|
|
|
},
|
|
|
});
|
|
|
}
|
|
|
|
|
|
//根据订阅id获取订阅的资源或指标
|
|
|
function getResOrKpiBySubId(subId,type) {
|
|
|
function getResOrKpiBySubId(subId, type) {
|
|
|
var oldData = [];
|
|
|
var url = '';
|
|
|
if (type == 'res') {
|
|
|
url = common.domainName+'/api-web/manage/resource/getResIdsBySubId?subId=' + subId;
|
|
|
url = common.domainName + '/api-web/manage/resource/getResIdsBySubId?subId=' + subId;
|
|
|
} else if (type == 'kpi') {
|
|
|
url = common.domainName+'/api-web/alarmsubscribe/getResAndKpiBySubId?subId=' + subId;
|
|
|
url = common.domainName + '/api-web/alarmsubscribe/getResAndKpiBySubId?subId=' + subId;
|
|
|
}
|
|
|
admin.req({
|
|
|
url: url,
|
...
|
...
|
@@ -896,13 +985,28 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
}
|
|
|
|
|
|
//打开告警订阅窗口
|
|
|
function openAlarmsubscribeForm(id){
|
|
|
var title = id?"编辑告警订阅":"新增告警订阅";
|
|
|
title = `<a class="layui-icon layui-icon-edit win_title_icon"></a>${title}`;
|
|
|
common.openWin('baseconfig/alarmsubscribe/add',title, {id:id},['保存','取消'],function () {
|
|
|
function openAlarmsubscribeForm(id) {
|
|
|
var title = id ? "编辑告警订阅" : "新增告警订阅";
|
|
|
title = `<a class="layui-icon layui-icon-edit win_title_icon"></a>${title}`;
|
|
|
common.openWin('baseconfig/alarmsubscribe/add', title, {id: id}, ['保存', '取消'], function () {
|
|
|
$("#alarmsubscribe-form-save-id").trigger("click");
|
|
|
return false;
|
|
|
},null,['60%','80%'],null,null);
|
|
|
}, null, ['60%', '80%'], null, null);
|
|
|
}
|
|
|
|
|
|
//根据busId获取业务类型或资源的订阅
|
|
|
function getResTypeOrBusId(subId, type) {
|
|
|
let list = [];
|
|
|
admin.req({
|
|
|
url: common.domainName + '/api-web/bTypeSubscribe/subscribeList?subId=' + subId + '&subType=' + type,
|
|
|
async: false,
|
|
|
success: function (response) {
|
|
|
if (response.success) {
|
|
|
list = response.data.map(item => item.typeCode);
|
|
|
}
|
|
|
},
|
|
|
});
|
|
|
return list;
|
|
|
}
|
|
|
|
|
|
|
...
|
...
|
@@ -910,9 +1014,9 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
function reloadalarmsubscribeTable() {
|
|
|
var conditions = form.val('alarmsubscribe-form');
|
|
|
alarmsubscribeTable.reload({
|
|
|
where:{
|
|
|
access_token:accessToken,
|
|
|
policyId:policyId,
|
|
|
where: {
|
|
|
access_token: accessToken,
|
|
|
policyId: policyId,
|
|
|
subName: conditions.subName,
|
|
|
subType: subTypeSelect.getValue('valueStr'),
|
|
|
subWay: noticeWaySelect.getValue("valueStr"),
|
...
|
...
|
@@ -1019,10 +1123,9 @@ layui.define(['table', 'form', 'admin', 'layer', 'common','sessions'], function |
|
|
}
|
|
|
}
|
|
|
});
|
|
|
|
|
|
//获取选中的数据
|
|
|
function getCheckSubscribeData() {
|
|
|
return table.checkStatus('alarmsubscribeTable').data;
|
|
|
return table.checkStatus('alarmsubscTable').data;
|
|
|
}
|
|
|
|
|
|
return { getSubscribeData: getCheckSubscribeData,reloadsubscribe:reloadalarmsubscribeTable};
|
...
|
...
|
|