Authored by 高磊

Merge branch 'wangfeng-mj' into 'master-mj'

告警过滤回填



See merge request !1249
@@ -151,7 +151,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -151,7 +151,7 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
151 let str = '<div>' + 151 let str = '<div>' +
152 '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="资源解绑" collector-data-unbindRes="' + d.resId + '"><i class="layui-icon layui-icon-unlink"></i></button>' 152 '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="资源解绑" collector-data-unbindRes="' + d.resId + '"><i class="layui-icon layui-icon-unlink"></i></button>'
153 if (isTrap) { 153 if (isTrap) {
154 - str += '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="告警过滤" ' + 154 + str += '<button class="layui-btn layui-btn-normal layui-btn-xs" style="margin-left: 10px !important;" lay-tips="告警过滤" ' +
155 'collector-data-filteralarms-name = "'+d.resName+'" ' + 155 'collector-data-filteralarms-name = "'+d.resName+'" ' +
156 'collector-data-filteralarms="' + d.resId + '"><i class="layui-icon layui-icon-fonts-clear"></i></button>'; 156 'collector-data-filteralarms="' + d.resId + '"><i class="layui-icon layui-icon-fonts-clear"></i></button>';
157 } 157 }
@@ -218,56 +218,74 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -218,56 +218,74 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
218 // 点击该按钮,弹出对话框,上方显示采集器名称(不可编辑), 218 // 点击该按钮,弹出对话框,上方显示采集器名称(不可编辑),
219 // 资源名称(不可编辑),下方有个文本域,可以输入过滤内容,过滤内容不能为空。 219 // 资源名称(不可编辑),下方有个文本域,可以输入过滤内容,过滤内容不能为空。
220 // 点击保存根据采集器id,资源id将过滤内容更新到b_trap_config表的filter字段中。 220 // 点击保存根据采集器id,资源id将过滤内容更新到b_trap_config表的filter字段中。
221 -  
222 let resId = $(this).attr('collector-data-filteralarms'); 221 let resId = $(this).attr('collector-data-filteralarms');
223 let resName = $(this).attr('collector-data-filteralarms-name'); 222 let resName = $(this).attr('collector-data-filteralarms-name');
224 - let content = ` 223 +
  224 + let params = {
  225 + resourceId:resId,
  226 + trapCollectorId: trapCollectorId
  227 + }
  228 + admin.req({
  229 + url: domainName + '/api-web/trapoid/get/filter',
  230 + type: 'POST',
  231 + contentType: 'application/json',
  232 + data: JSON.stringify(params),
  233 + }).done(function (response) {
  234 + let filterContent = response.str;
  235 + let content = `
225 <form class="layui-form" lay-filter="collectorFilterAlarmsForm"> 236 <form class="layui-form" lay-filter="collectorFilterAlarmsForm">
226 <div class="layui-form-item"> 237 <div class="layui-form-item">
227 <label class="layui-form-label">采集器:</label> 238 <label class="layui-form-label">采集器:</label>
228 - <div class="layui-input-block" style="line-height: 36px;">${collectorName}</div> 239 + <div class="layui-input-block" >${collectorName}</div>
229 <input type="hidden" id="trapCollectorId" name="trapCollectorId" value="${trapCollectorId}"> 240 <input type="hidden" id="trapCollectorId" name="trapCollectorId" value="${trapCollectorId}">
230 </div> 241 </div>
231 <div class="layui-form-item"> 242 <div class="layui-form-item">
232 <label class="layui-form-label">资源名称:</label> 243 <label class="layui-form-label">资源名称:</label>
233 - <div class="layui-input-block" style="line-height: 36px;">${resName}</div> 244 + <div class="layui-input-block">${resName}</div>
234 <input type="hidden" id="resourceId" name="resourceId" value="${resId}"> 245 <input type="hidden" id="resourceId" name="resourceId" value="${resId}">
235 </div> 246 </div>
236 <div class="layui-form-item"> 247 <div class="layui-form-item">
237 <label class="layui-form-label"><span style="color: red;">*</span>过滤内容:</label> 248 <label class="layui-form-label"><span style="color: red;">*</span>过滤内容:</label>
238 <div class="layui-input-inline"> 249 <div class="layui-input-inline">
239 - <textarea class="layui-textarea" name="filterContent" placeholder="请输入描述"></textarea> 250 + <textarea class="layui-textarea" name="filterContent" placeholder="请输入描述" value="${filterContent}"></textarea>
240 </div> 251 </div>
241 </div> 252 </div>
242 </form> 253 </form>
243 ` 254 `
244 - layer.open({  
245 - type: 1  
246 - , title: '告警过滤' //不显示标题栏  
247 - , closeBtn: false  
248 - , area: ['500px', '500px']  
249 - , shade: 0.8  
250 - , resize: false  
251 - , id: 'collector-filter-alarms-res-win' //设定一个id,防止重复弹出  
252 - , btn: ['确定','返回']  
253 - , content: content  
254 - , yes: function (index, layero) {  
255 - var formData = form.val('collectorFilterAlarmsForm');  
256 - admin.req({  
257 - url: domainName + '/api-web/trapoid/update/filter',  
258 - type: 'POST',  
259 - contentType: 'application/json',  
260 - data: JSON.stringify(formData),  
261 - }).done(function (response) {  
262 - if (response.success) {  
263 - layer.msg('操作成功', {icon: 1, timeout: 3000});  
264 - } else {  
265 - layer.msg('操作失败!', {icon: 2, timeout: 3000}); 255 + layer.open({
  256 + type: 1
  257 + , title: '告警过滤' //不显示标题栏
  258 + , closeBtn: false
  259 + , area: ['60%', '500px']
  260 + , shade: 0.8
  261 + , resize: false
  262 + , id: 'collector-filter-alarms-res-win' //设定一个id,防止重复弹出
  263 + , btn: ['确定','返回']
  264 + , content: content
  265 + , yes: function (index, layero) {
  266 + var formData = form.val('collectorFilterAlarmsForm');
  267 + if(formData.filterContent){
  268 + admin.req({
  269 + url: domainName + '/api-web/trapoid/update/filter',
  270 + type: 'POST',
  271 + contentType: 'application/json',
  272 + data: JSON.stringify(formData),
  273 + }).done(function (response) {
  274 + if (response.success) {
  275 + layer.msg('操作成功', {icon: 1, timeout: 3000});
  276 + } else {
  277 + layer.msg('操作失败!', {icon: 2, timeout: 3000});
  278 + }
  279 + });
  280 +
  281 + layer.close(index);
  282 + }else{
  283 + layer.msg('请输入告警过滤信息', {icon: 7, timeout: 3000});
266 } 284 }
267 - });  
268 285
269 - layer.close(index);  
270 - } 286 + }
  287 + });
  288 +
271 }); 289 });
272 290
273 }); 291 });