...
|
...
|
@@ -30,6 +30,24 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
,range: true
|
|
|
});
|
|
|
var resType = localStorage.getItem("currentResType");
|
|
|
|
|
|
// 获取合并通知开关是否开启
|
|
|
getNoticeMergeFlag();
|
|
|
function getNoticeMergeFlag(){
|
|
|
admin.req({
|
|
|
url: common.domainName + '/api-web/manage/ddic/findSucDdics/noticeMergeFlag'
|
|
|
, method: 'POST'
|
|
|
, async: false
|
|
|
, success: function (res) {
|
|
|
$.each(res.data, function (i, v) {
|
|
|
if(v.ddicCode == 'on'){
|
|
|
$('#noticeMergeTab').show();
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
|
|
|
//编辑
|
|
|
if(data && data.id){
|
|
|
admin.req({
|
...
|
...
|
@@ -48,6 +66,14 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
$("#alarmPolicyType").val(res.object.policyType);
|
|
|
}
|
|
|
});
|
|
|
// 获取通知合并策略的表达式
|
|
|
admin.req({
|
|
|
url:domainName + '/api-web/policyMerge/get?noticeMergePolicyId='+data.id
|
|
|
,done:function (res){
|
|
|
$("#noticeMergeFlagExpr").val(res.data[0].noticeMergeExpr);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
}else{
|
|
|
$("#seriousTimes").val('00:00:00 - 23:59:59');
|
|
|
$("#importantTimes").val('00:00:00 - 23:59:59');
|
...
|
...
|
@@ -179,7 +205,85 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
data.seriousTimes = $("#seriousTimes").val();
|
|
|
data.importantTimes = $("#importantTimes").val();
|
|
|
data.commonlyTimes = $("#commonlyTimes").val();
|
|
|
var that = this;
|
|
|
|
|
|
if(!data.kpiId){
|
|
|
layer.msg("请先选择指标!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
if(!data.kpiId || data.kpiId == ''){
|
|
|
layer.msg("请先选择指标!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
if(!data.alarmContentExpr || data.alarmContentExpr == ''){
|
|
|
layer.msg("请先填写告警内容描述表达式!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
if(!data.alarmContentExpr || data.alarmContentExpr == ''){
|
|
|
layer.msg("请先填写告警内容描述表达式!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
var importantPolicy = data.seriousPolicy;
|
|
|
var importantExpr = data.importantPolicy;
|
|
|
var commonlyPolicy = data.commonlyPolicy;
|
|
|
if((!importantPolicy || importantPolicy == '') && (!importantExpr || importantExpr == '') && (!commonlyPolicy || commonlyPolicy == '')){
|
|
|
layer.msg("严重、重要和一般告警的表达式必须有一项不为空!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
if(!data.noticeMergeFlagExpr || data.noticeMergeFlagExpr == ''){
|
|
|
layer.msg("请先填写通知合并策略描述表达式!", {
|
|
|
icon: 7
|
|
|
, time: 3000
|
|
|
});
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 保存通知合并策略
|
|
|
*/
|
|
|
var noticeMergeFlagExpr = $("#noticeMergeFlagExpr").val()
|
|
|
function saveNoticeMerge(id){
|
|
|
var noticeMergeData = {
|
|
|
"mergePolicyId": id,
|
|
|
"mergePolicyName": data.alarmPolicyName,
|
|
|
"mergePolicyDesc": data.alarmPolicyName,
|
|
|
"noticeMergeExpr": noticeMergeFlagExpr,
|
|
|
"policyType": data.policyType,
|
|
|
"kpiId": data.kpiId
|
|
|
}
|
|
|
admin.req({
|
|
|
url : domainName + '/api-web/policyMerge/save?access_token='+accessToken
|
|
|
,data:JSON.stringify(noticeMergeData)
|
|
|
,type:'post'
|
|
|
,contentType: "application/json; charset=utf-8"
|
|
|
,done:function (res){
|
|
|
if(!res.success){
|
|
|
layer.msg(res.msg ? res.msg : '通知合并策略保存失败', { offset: '15px' , icon: 7 , time: 1000 });
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
charToExpr(data, 'alarmContentExpr');
|
|
|
charToExpr(data, 'cleanPolicy');
|
|
|
charToExpr(data, 'commonlyExpr');
|
...
|
...
|
@@ -187,6 +291,7 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
charToExpr(data, 'seriousExpr');
|
|
|
|
|
|
form.on('submit(add-alarmpolicy-form)',function () {
|
|
|
delete data.noticeMergeFlagExpr;
|
|
|
admin.req({
|
|
|
url : domainName + '/api-web/alarmPolicy/save?access_token='+accessToken
|
|
|
,data:JSON.stringify(data)
|
...
|
...
|
@@ -194,6 +299,9 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
,contentType: "application/json; charset=utf-8"
|
|
|
,done:function (res){
|
|
|
if(res.success){
|
|
|
// 保存通知合并策略
|
|
|
saveNoticeMerge(res.str);
|
|
|
|
|
|
localStorage.setItem("detailPageOfcustomPolicyId",res.str)
|
|
|
layer.msg(res.msg, { offset: '15px' , icon: 1 , time: 1000 },function (){
|
|
|
localStorage.removeItem("currentResType");
|
...
|
...
|
@@ -263,4 +371,4 @@ layui.define(['form', 'admin', 'laydate', 'common','sessions','reskpilist'], fun |
|
|
$('#add-alarmpolicy-form').find('[name="policyType"]').attr("disabled","disabled");
|
|
|
}
|
|
|
});
|
|
|
}); |
|
|
\ No newline at end of file |
|
|
}); |
...
|
...
|
|