Authored by zhangtianqi

采集器 资源解绑 功能

@@ -181,7 +181,7 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload', @@ -181,7 +181,7 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload',
181 title: '操作', 181 title: '操作',
182 align: 'center', 182 align: 'center',
183 fixed: 'right', 183 fixed: 'right',
184 - minWidth: 270, 184 + minWidth: 300,
185 templet: function (d) { 185 templet: function (d) {
186 var str = '<div>' + 186 var str = '<div>' +
187 '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="下载采集器" collector-data-download="' + d.collectorId + '"><i class="layui-icon layui-icon-download-circle"></i></button>' + 187 '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="下载采集器" collector-data-download="' + d.collectorId + '"><i class="layui-icon layui-icon-download-circle"></i></button>' +
@@ -194,6 +194,7 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload', @@ -194,6 +194,7 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload',
194 if (d.collType === 'collType_trap') { 194 if (d.collType === 'collType_trap') {
195 str += '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="绑定资源" collector-data-bindRes="' + d.collectorId + '"><i class="layui-icon">&#xe630;</i></button>'; 195 str += '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="绑定资源" collector-data-bindRes="' + d.collectorId + '"><i class="layui-icon">&#xe630;</i></button>';
196 } 196 }
  197 + str += '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-tips="解绑全部资源" collector-data-unbindRes="' + d.collectorId + '"><i class="layui-icon layui-icon-unlink"></i></button>'
197 str += '</div>'; 198 str += '</div>';
198 return str; 199 return str;
199 } 200 }
@@ -470,6 +471,34 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload', @@ -470,6 +471,34 @@ layui.define(['table', 'form', 'sessions', 'common', 'view', 'admin', 'upload',
470 var collectorId = $(this).attr('collector-data-stop'); 471 var collectorId = $(this).attr('collector-data-stop');
471 stopCollector([collectorId]); 472 stopCollector([collectorId]);
472 }); 473 });
  474 +
  475 + // 解绑全部资源
  476 + $('button[collector-data-unbindRes]').unbind('click').on('click',function (){
  477 + if ($.inArray('back:collector:start', checkList) == -1) {
  478 + layer.msg('暂无权限!', {icon: 7, time: 3000});
  479 + return;
  480 + }
  481 + let collectorId = $(this).attr('collector-data-unbindRes');
  482 + admin.req({
  483 + url:domainName + '/api-web/trapoid/unbind',
  484 + data:{
  485 + collectorId:collectorId,
  486 + resIdList:"",
  487 + },
  488 + success(response){
  489 + if (response && response.success) {
  490 + layer.msg('解绑成功', {icon: 1});
  491 + reloadCollectorTable();
  492 + }else{
  493 + this.error();
  494 + }
  495 + },
  496 + error(){
  497 + layer.closeAll('loading');
  498 + layer.msg('解绑失败', {icon: 2});
  499 + }
  500 + })
  501 + })
473 } 502 }
474 }); 503 });
475 504
@@ -6,11 +6,13 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -6,11 +6,13 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
6 var xmSelect = layui.table; 6 var xmSelect = layui.table;
7 var common = layui.common; 7 var common = layui.common;
8 var resListSelectIds = []; 8 var resListSelectIds = [];
  9 + var admin = layui.admin;
9 //对外暴露的接口 10 //对外暴露的接口
10 exports('reslist', function (data) { 11 exports('reslist', function (data) {
11 var sessions = layui.sessions; 12 var sessions = layui.sessions;
12 var router = layui.router(); 13 var router = layui.router();
13 var accessToken = sessions.getToken().access_token; 14 var accessToken = sessions.getToken().access_token;
  15 + var domainName = common.domainName;
14 var resType = (data && common.isNotEmpty(data.resType)) ? data.resType : ''; 16 var resType = (data && common.isNotEmpty(data.resType)) ? data.resType : '';
15 var table_data = []; 17 var table_data = [];
16 // 业务类型Id 18 // 业务类型Id
@@ -133,6 +135,18 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -133,6 +135,18 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
133 , {field: 'adminName', title: '负责人', align: 'center'} 135 , {field: 'adminName', title: '负责人', align: 'center'}
134 , {field: 'resTypeName', title: '资源类型', align: 'center'} 136 , {field: 'resTypeName', title: '资源类型', align: 'center'}
135 , {field: 'healthDesc', title: '资源状态', align: 'center'} 137 , {field: 'healthDesc', title: '资源状态', align: 'center'}
  138 + , {
  139 + title: "操作",
  140 + align: "center",
  141 + fixed: 'right',
  142 + hide: (trapCollectorId || collectorId)?false:true, // 绑定资源的时候掩藏操作列,解绑的时候显示
  143 + templet: function (d){
  144 + let str = '<div>' +
  145 + '<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>'
  146 + '</div>'
  147 + return str
  148 + }
  149 + }
136 ]], 150 ]],
137 done: function (res) { 151 done: function (res) {
138 table_data = res.data; 152 table_data = res.data;
@@ -144,7 +158,6 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -144,7 +158,6 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
144 } 158 }
145 }) 159 })
146 }) 160 })
147 -  
148 //回显 161 //回显
149 if (data && data.oldData) { 162 if (data && data.oldData) {
150 resListSelectIds = data.oldData; 163 resListSelectIds = data.oldData;
@@ -157,6 +170,36 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect @@ -157,6 +170,36 @@ layui.define(['table', 'form', 'admin', 'layer', 'common', 'sessions', 'xmSelect
157 }) 170 })
158 }) 171 })
159 } 172 }
  173 +
  174 + // 资源解绑(事件委托)
  175 + $('body').on('click','button[collector-data-unbindRes]',function (){
  176 + let resId = $(this).attr('collector-data-unbindRes');
  177 + let collId;
  178 + if (trapCollectorId && trapCollectorId!=''){
  179 + collId = trapCollectorId;
  180 + }else if(collectorId && collectorId!=''){
  181 + collId = collectorId;
  182 + }
  183 + admin.req({
  184 + url:domainName + '/api-web/trapoid/unbind',
  185 + data:{
  186 + collectorId:collId,
  187 + resIdList:resId,
  188 + },
  189 + success(response){
  190 + if (response && response.success) {
  191 + layer.msg('解绑成功', {icon: 1});
  192 + reloadTable(resType);
  193 + }else{
  194 + this.error();
  195 + }
  196 + },
  197 + error(){
  198 + layer.closeAll('loading');
  199 + layer.msg('解绑失败', {icon: 2});
  200 + }
  201 + })
  202 + })
160 } 203 }
161 }); 204 });
162 205