Authored by 鲁尚清

状态指标下探更改- #1

@@ -24,10 +24,42 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -24,10 +24,42 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
24 //资源详细页面相关调用函数,包含各种展示类型的 24 //资源详细页面相关调用函数,包含各种展示类型的
25 25
26 let editKpiList = []; 26 let editKpiList = [];
  27 + let statusKpiList=[];//lsq 状态指标数据 2022-06-08
27 var obj = { 28 var obj = {
28 detailTimer:[], 29 detailTimer:[],
29 timerTime: 180000, 30 timerTime: 180000,
30 sessions: layui.sessions, 31 sessions: layui.sessions,
  32 + getStatusKpiList:function (){
  33 + //start lsq 根据kpiid获取是否是指标状态 2022-05-23
  34 + if(statusKpiList.length != 0){
  35 + return statusKpiList;
  36 + }
  37 + statusKpiList = [];
  38 + admin.req({
  39 + url: common.domainName + '/api-web/manage/kpi/page?' +
  40 + 'isWarning=&isTrend=&kpiLevel=&ignoreCnt=&startTime=&endTime=&kpiPower=',
  41 + data: {
  42 + page:1,limit:99999,
  43 + kpiName: '',resType: '',kpiIdent: 2,kpiCategory: '',
  44 + kpiDataType:'',kpiUnit:'',isWarning:'',isTrend:'',
  45 + kpiLevel:'',ignoreCnt:'',startTime:'',endTime:'',kpiPower:''
  46 + },
  47 + success(response) {
  48 + let arr=[];
  49 + if (response && response.success) {
  50 + arr=response.data;
  51 + arr.map(item=>{
  52 + statusKpiList.push(item.kpiId)
  53 + })
  54 + } else {
  55 + // layer.msg('状态指标获取失败!', {icon: 2});
  56 + }
  57 + },
  58 + error(){
  59 + // layer.msg('状态指标获取失败!', {icon: 2});
  60 + }
  61 + });
  62 + },
31 // 获取编辑指标 63 // 获取编辑指标
32 getEditKpiList:function (){ 64 getEditKpiList:function (){
33 var editFlag = localStorage.getItem("editFlag");//是否编辑状态 65 var editFlag = localStorage.getItem("editFlag");//是否编辑状态
@@ -74,6 +106,9 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -74,6 +106,9 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
74 {"flag": "base","name": "最近采集时间","id": "KPIF74D9D2B","value": "2019-12-16 10:04:54","status": "0" }]} 106 {"flag": "base","name": "最近采集时间","id": "KPIF74D9D2B","value": "2019-12-16 10:04:54","status": "0" }]}
75 */ 107 */
76 renderText: function (targetId, resId, kpiId, fn, hasTotal,flag,isBasic) { 108 renderText: function (targetId, resId, kpiId, fn, hasTotal,flag,isBasic) {
  109 + //start lsq 状态信息的状态也增加下探 202-06-08
  110 + let statusF=false;//是否为状态信息
  111 + //end lsq 2022-06-08
77 var url = "/api-web/detail/block?resId=" + resId + "&kpiId=" + kpiId + "&hasTotal=" + hasTotal; 112 var url = "/api-web/detail/block?resId=" + resId + "&kpiId=" + kpiId + "&hasTotal=" + hasTotal;
78 if (flag) { 113 if (flag) {
79 url += '&flag=' + flag; 114 url += '&flag=' + flag;
@@ -97,6 +132,12 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -97,6 +132,12 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
97 var fontColor=''; 132 var fontColor='';
98 var valueStr = ''; 133 var valueStr = '';
99 var titleStr = ''; 134 var titleStr = '';
  135 + //start lsq 判断当前kpiId是否在状态指标数据列表中 2022-06-08
  136 + let status=statusKpiList.indexOf(v.id);
  137 + if(status!=-1){
  138 + statusF=true;
  139 + }
  140 + //end lsq 2022-06-08
100 if(v.id == 'KPIE13DD9A3' || v.id == 'KPI02786E8D'){ 141 if(v.id == 'KPIE13DD9A3' || v.id == 'KPI02786E8D'){
101 valueStr = laytpl($("#linkStateDetailTpl").html()).render({linkStateList: v.value}); 142 valueStr = laytpl($("#linkStateDetailTpl").html()).render({linkStateList: v.value});
102 //获取flag 143 //获取flag
@@ -124,10 +165,17 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -124,10 +165,17 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
124 var tips = '<a class="detail_row_menu hide">\n' + 165 var tips = '<a class="detail_row_menu hide">\n' +
125 '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' + 166 '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' +
126 '</a>' 167 '</a>'
  168 + var tips = '<a class="detail_row_menu hide" data-statusf='+statusF+' data-id='+v.id+' data-flag='+v.flag+
  169 + ' data-name='+v.name+' data-kpiname='+v.name+' data-iswarning=1 data-ident=1' +
  170 + ' data-trend=0 data-unit="" data-hidem="hidem" data-nature="true" ' +
  171 + // ' data-restype='+((data && data[0])?data[0].resType:"")+'>\n' +
  172 + ' data-restype='+(v.resType?v.resType:"")+'>\n' +
  173 + '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' +
  174 + '</a>'
127 var menuId = ""; 175 var menuId = "";
128 - if (v.id == 'KPIE13DD9A3' || v.id == 'KPI02786E8D') { 176 + if (v.id == 'KPIE13DD9A3' || v.id == 'KPI02786E8D' || status!=-1) {
129 v.name = v.name + tips; 177 v.name = v.name + tips;
130 - menuId = "id=\"" + targetId + "_detail_row_menu\""; 178 + menuId = "id=\"" + targetId + "_detail_row_menu\" class='statusMenu'";
131 } 179 }
132 var $html = addIconByValue(valueStr); 180 var $html = addIconByValue(valueStr);
133 var resStyle = obj.alarmEleMatchStyle(v.flag, v.id); 181 var resStyle = obj.alarmEleMatchStyle(v.flag, v.id);
@@ -139,23 +187,27 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -139,23 +187,27 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
139 fn && fn(); 187 fn && fn();
140 188
141 //初始化监听告警压制需要的数据 189 //初始化监听告警压制需要的数据
142 - var rowMenu = $('#' + targetId).find('.detail_row_menu').eq(0);  
143 - rowMenu.attr("data-id", kpiIdList);  
144 - rowMenu.attr("data-flag", flags);  
145 - rowMenu.attr("data-name", "监控连接状态");  
146 - rowMenu.attr("data-kpiname", "监控连接状态");  
147 - rowMenu.attr("data-iswarning", "1");  
148 - rowMenu.attr("data-ident", "1");  
149 - rowMenu.attr("data-trend", "0");  
150 - rowMenu.attr("data-unit", "");  
151 - rowMenu.attr('data-hidem', 'true');  
152 - rowMenu.attr('data-nature', 'true');//性能趋势  
153 - // rowMenu.attr('data-canca', data.canCA);  
154 - // rowMenu.attr('data-incaing', data.inCAing);  
155 - // rowMenu.attr('data-restype', data.resType);  
156 - rowMenu.attr('data-restype', (data && data[0])?data[0].resType:''); 190 + if(!statusF){
  191 + var rowMenu = $('#' + targetId).find('.detail_row_menu').eq(0);
  192 + rowMenu.attr("data-id", kpiIdList);
  193 + rowMenu.attr("data-flag", flags);
  194 + rowMenu.attr("data-name", "监控连接状态");
  195 + rowMenu.attr("data-kpiname", "监控连接状态");
  196 + rowMenu.attr("data-iswarning", "1");
  197 + rowMenu.attr("data-ident", "1");
  198 + rowMenu.attr("data-trend", "0");
  199 + rowMenu.attr("data-unit", "");
  200 + rowMenu.attr('data-hidem', 'true');
  201 + rowMenu.attr('data-nature', 'true');//性能趋势
  202 + // rowMenu.attr('data-canca', data.canCA);
  203 + // rowMenu.attr('data-incaing', data.inCAing);
  204 + // rowMenu.attr('data-restype', data.resType);
  205 + rowMenu.attr('data-restype', (data && data[0])?data[0].resType:'');
  206 + }
  207 +
157 //监听告警压制等操作配置 208 //监听告警压制等操作配置
158 - $('#' + targetId + "_detail_row_menu").hover(function () { 209 + // $('#' + targetId + "_detail_row_menu").hover(function () {
  210 + $('#' + targetId + "_detail_row_menu.statusMenu").hover(function () {
159 var $that = $(this); 211 var $that = $(this);
160 var $btn = $that.find(".detail_row_menu"); 212 var $btn = $that.find(".detail_row_menu");
161 if ($btn.length > 0) { 213 if ($btn.length > 0) {
@@ -175,6 +227,9 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -175,6 +227,9 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
175 * @param cols 指定列(一组key value为一列) 227 * @param cols 指定列(一组key value为一列)
176 */ 228 */
177 renderTextCols: function (targetId, resId, kpiId, cols, isBasic) { 229 renderTextCols: function (targetId, resId, kpiId, cols, isBasic) {
  230 + //start lsq 状态信息的状态也增加下探 202-06-08
  231 + let statusF=false;//是否为状态信息
  232 + //end lsq 2022-06-08
178 var url = "/api-web/detail/block?resId=" + resId + "&kpiId=" + kpiId; 233 var url = "/api-web/detail/block?resId=" + resId + "&kpiId=" + kpiId;
179 if (isBasic) { 234 if (isBasic) {
180 url += '&isBasic=' + isBasic; 235 url += '&isBasic=' + isBasic;
@@ -184,6 +239,12 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -184,6 +239,12 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
184 }).done(function (res) { 239 }).done(function (res) {
185 var flags = ""; 240 var flags = "";
186 var kpiIdList= ""; 241 var kpiIdList= "";
  242 + //start lsq 判断当前kpiId是否在状态指标数据列表中 2022-06-08
  243 + let status=statusKpiList.indexOf(v.id);
  244 + if(status!=-1){
  245 + statusF=true;
  246 + }
  247 + //end lsq 2022-06-08
187 var data = res.data; 248 var data = res.data;
188 if (data.length > 0) { 249 if (data.length > 0) {
189 var dataArr = common.splieceGroup(data, cols); 250 var dataArr = common.splieceGroup(data, cols);
@@ -215,13 +276,21 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -215,13 +276,21 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
215 //获取kpi 276 //获取kpi
216 kpiIdList += ar.id + ","; 277 kpiIdList += ar.id + ",";
217 } 278 }
218 - var tips = '<a class="detail_row_menu hide">\n' + 279 + //start lsq 更改下探图标的属性值 2022-06-08
  280 + /* var tips = '<a class="detail_row_menu hide">\n' +
  281 + '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' +
  282 + '</a>'*/
  283 + var tips = '<a class="detail_row_menu hide" data-statusf='+statusF+' data-id='+v.id+' data-flag='+v.flag+
  284 + ' data-name='+v.name+' data-kpiname='+v.name+' data-iswarning=1 data-ident=1' +
  285 + ' data-trend=0 data-unit="" data-hidem="hidem" data-nature="true" ' +
  286 + ' data-restype='+(v.resType?v.resType:"")+'>\n' +
219 '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' + 287 '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' +
220 '</a>' 288 '</a>'
  289 + //end lsq 2022-06-08
221 var menuId = ""; 290 var menuId = "";
222 - if (ar.id == 'KPIE13DD9A3' || ar.id == 'KPI02786E8D') { 291 + if (ar.id == 'KPIE13DD9A3' || ar.id == 'KPI02786E8D' || status!=-1) {
223 ar.name = ar.name + tips; 292 ar.name = ar.name + tips;
224 - menuId = "id=\"" + targetId + "_detail_row_menu\""; 293 + menuId = "id=\"" + targetId + "_detail_row_menu\" class='statusMenu'";
225 } 294 }
226 var $html = addIconByValue(valueStr); 295 var $html = addIconByValue(valueStr);
227 var resStyle = obj.alarmEleMatchStyle(ar.flag, ar.id); 296 var resStyle = obj.alarmEleMatchStyle(ar.flag, ar.id);
@@ -243,20 +312,24 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -243,20 +312,24 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
243 $("#" + targetId).html(li); 312 $("#" + targetId).html(li);
244 } 313 }
245 //初始化监听告警压制需要的数据 314 //初始化监听告警压制需要的数据
246 - var rowMenu = $('#' + targetId).find('.detail_row_menu').eq(0);  
247 - rowMenu.attr("data-id", kpiIdList);  
248 - rowMenu.attr("data-flag", flags);  
249 - rowMenu.attr("data-name", "监控连接状态");  
250 - rowMenu.attr("data-kpiname", "监控连接状态");  
251 - rowMenu.attr("data-iswarning", "1");  
252 - rowMenu.attr("data-ident", "1");  
253 - rowMenu.attr("data-trend", "0");  
254 - rowMenu.attr("data-unit", "");  
255 - rowMenu.attr('data-hidem', 'true');  
256 - rowMenu.attr('data-nature', 'true');//性能趋势  
257 - rowMenu.attr('data-restype', (data && data[0])?data[0].resType:''); 315 + if(!statusF){
  316 + var rowMenu = $('#' + targetId).find('.detail_row_menu').eq(0);
  317 + rowMenu.attr("data-id", kpiIdList);
  318 + rowMenu.attr("data-flag", flags);
  319 + rowMenu.attr("data-name", "监控连接状态");
  320 + rowMenu.attr("data-kpiname", "监控连接状态");
  321 + rowMenu.attr("data-iswarning", "1");
  322 + rowMenu.attr("data-ident", "1");
  323 + rowMenu.attr("data-trend", "0");
  324 + rowMenu.attr("data-unit", "");
  325 + rowMenu.attr('data-hidem', 'true');
  326 + rowMenu.attr('data-nature', 'true');//性能趋势
  327 + rowMenu.attr('data-restype', (data && data[0])?data[0].resType:'');
  328 + }
  329 +
258 //监听告警压制等操作配置 330 //监听告警压制等操作配置
259 - $('#' + targetId + "_detail_row_menu").hover(function () { 331 + // $('#' + targetId + "_detail_row_menu").hover(function () {
  332 + $('#' + targetId + "_detail_row_menu.statusMenu").hover(function () {
260 var $that = $(this); 333 var $that = $(this);
261 var $btn = $that.find(".detail_row_menu"); 334 var $btn = $that.find(".detail_row_menu");
262 if ($btn.length > 0) { 335 if ($btn.length > 0) {
@@ -4138,6 +4211,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -4138,6 +4211,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
4138 var canCA = $menu.data('canca'); 4211 var canCA = $menu.data('canca');
4139 var inCAing = $menu.data('incaing'); 4212 var inCAing = $menu.data('incaing');
4140 var nature = $menu.data('nature'); 4213 var nature = $menu.data('nature');
  4214 + //lsq 状态信息无其他下探 2022-06-08
  4215 + var statusF = $menu.data('statusf');
4141 var menubox = '<div class="detail_menubox" id="detail_menubox_id" style="color:#666;"><ul>'; 4216 var menubox = '<div class="detail_menubox" id="detail_menubox_id" style="color:#666;"><ul>';
4142 if (!nature) { 4217 if (!nature) {
4143 menubox += 4218 menubox +=
@@ -4150,8 +4225,10 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -4150,8 +4225,10 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
4150 if (!nature) { 4225 if (!nature) {
4151 menubox += '<li type="t"><i class="layui-icon">&#xe62c;</i>性能趋势</li>'; 4226 menubox += '<li type="t"><i class="layui-icon">&#xe62c;</i>性能趋势</li>';
4152 } 4227 }
4153 - 4228 + // if(!statusF){
4154 menubox += '<li type="n"><i class="layui-icon">&#xe758;</i>压制次数</li>'; 4229 menubox += '<li type="n"><i class="layui-icon">&#xe758;</i>压制次数</li>';
  4230 + // }
  4231 +
4155 // Start Wang 2022/3/28 14:06 833:屏蔽纳入容量预测按钮 https://hgkj.zentaopm.com/task-view-833.html 4232 // Start Wang 2022/3/28 14:06 833:屏蔽纳入容量预测按钮 https://hgkj.zentaopm.com/task-view-833.html
4156 // 后面计划将功能作为配置项 4233 // 后面计划将功能作为配置项
4157 // if (canCA) { 4234 // if (canCA) {
@@ -4182,45 +4259,25 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -4182,45 +4259,25 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
4182 flag = flag.replace(/^\s+|\s+$/g, ""); 4259 flag = flag.replace(/^\s+|\s+$/g, "");
4183 } 4260 }
4184 //start lsq 根据kpiid获取是否是指标状态 2022-05-23 4261 //start lsq 根据kpiid获取是否是指标状态 2022-05-23
4185 - admin.req({  
4186 - url: common.domainName + '/api-web/manage/kpi/page?' +  
4187 - 'isWarning=&isTrend=&kpiLevel=&ignoreCnt=&startTime=&endTime=&kpiPower=',  
4188 - data: {  
4189 - page:1,limit:99999,  
4190 - kpiName: '',resType: '',kpiIdent: 2,kpiCategory: '',  
4191 - kpiDataType:'',kpiUnit:'',isWarning:'',isTrend:'',  
4192 - kpiLevel:'',ignoreCnt:'',startTime:'',endTime:'',kpiPower:''  
4193 - },  
4194 - success(response) {  
4195 - let arr=[];  
4196 - if (response && response.success) {  
4197 - arr=response.data;  
4198 - let idArr=[];  
4199 - let idStr='';  
4200 - if(id.indexOf(',')!=-1){  
4201 - idArr=id.split(',');  
4202 - idStr=idArr[0];  
4203 - }else{  
4204 - idStr=id;  
4205 - }  
4206 - let isKpi=false;  
4207 - arr.map(item=>{  
4208 - if(idStr==item.kpiId){  
4209 - isKpi=true;  
4210 - }  
4211 - })  
4212 - if(isKpi){  
4213 - let menuboxStr = '<li type="link-status-kpi"><i class="layui-icon">&#xe758;</i>状态指标</li>';  
4214 - $("#detail_menubox_id ul").append(menuboxStr)  
4215 - }  
4216 - } else {  
4217 - // layer.msg('状态指标获取失败!', {icon: 2});  
4218 - }  
4219 - },  
4220 - error(){  
4221 - // layer.msg('状态指标获取失败!', {icon: 2}); 4262 + //start lsq 根据kpiid获取是否是指标状态 2022-05-23
  4263 + let idArr=[];
  4264 + let idStr='';
  4265 + if(id.indexOf(',')!=-1){
  4266 + idArr=id.split(',');
  4267 + idStr=idArr[0];
  4268 + }else{
  4269 + idStr=id;
  4270 + }
  4271 + let isKpi=false;
  4272 + statusKpiList.map(item=>{
  4273 + if(idStr==item){
  4274 + isKpi=true;
4222 } 4275 }
4223 - }); 4276 + })
  4277 + if(isKpi){
  4278 + let menuboxStr = '<li type="link-status-kpi"><i class="layui-icon">&#xe758;</i>状态指标</li>';
  4279 + $("#detail_menubox_id ul").append(menuboxStr)
  4280 + }
4224 setTimeout(function (){ 4281 setTimeout(function (){
4225 //end lsq 2022-05-23 4282 //end lsq 2022-05-23
4226 //菜单点击事件 4283 //菜单点击事件
@@ -4289,7 +4346,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -4289,7 +4346,8 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
4289 } 4346 }
4290 }); 4347 });
4291 } 4348 }
4292 - 4349 + //lsq 页面加载完就调用一下获取状态指标列表数据 2022-06-08
  4350 + obj.getStatusKpiList();
4293 //对外暴露的接口 4351 //对外暴露的接口
4294 exports('commonDetail', obj); 4352 exports('commonDetail', obj);
4295 }); 4353 });