Authored by 王涛

Merge branch 'master-v32-ztq' into 'master'

feat: 天津代码迁移(快照历史弹窗无数据问题)



See merge request !1136
@@ -929,6 +929,115 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -929,6 +929,115 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
929 }, 929 },
930 930
931 /** 931 /**
  932 + * 渲染文本,指定列数展示,key、value展示的方式
  933 + * @param targetId html存放目标id
  934 + * @param resId 资源id
  935 + * @param kpiId 指标id,多个指标逗号隔开
  936 + * @param cols 指定列(一组key value为一列)
  937 + */
  938 + anapshotRenderTextCols: function (targetId,data, cols, isBasic) {
  939 + var flags = "";
  940 + var kpiIdList = "";
  941 + if (data.length > 0) {
  942 + var dataArr = common.splieceGroup(data, cols);
  943 + var li = "";
  944 + //先遍历分组后的,在遍历组内的数组
  945 + $.each(dataArr, function (i, v) {
  946 + var span = '';
  947 + $.each(v, function (j, ar) {
  948 + var valueStr = '';
  949 + var titleStr = '';
  950 + //end lsq 2022-06-08
  951 + if (ar.kpiId == 'KPIE13DD9A3') {
  952 + valueStr = laytpl($("#linkStateDetailTpl").html()).render({linkStateList: ar.value});
  953 + } else if (ar.value != 'null') {
  954 + if (ar.value == 'Infinity%') {
  955 + valueStr = ''
  956 + } else {
  957 + valueStr = ar.kpiValue;
  958 + }
  959 + titleStr = valueStr;
  960 + }
  961 + if (ar.kpiId == 'KPIE13DD9A3' || ar.kpiId == 'KPI02786E8D') {
  962 + //获取flag
  963 + $.each(ar.value, function (i, v) {
  964 + flags += v.flag + ",";
  965 + });
  966 + if (flags != '') {
  967 + flags = flags.substring(0, flags.length - 1);
  968 + }
  969 + //获取kpi
  970 + kpiIdList += ar.kpiId + ",";
  971 + }
  972 + //start lsq 更改下探图标的属性值 2022-06-08
  973 + var tips = '<a class="detail_row_menu hide" data-id=' + ar.kpiId + ' data-flag=' + ar.flag +
  974 + ' data-name=' + ar.kpiName + ' data-kpiname=' + ar.kpiName + ' data-iswarning=1 data-ident=1' +
  975 + ' data-trend=0 data-unit="" data-hidem="hidem" data-nature="true" ' +
  976 + ' data-restype=' + (ar.resType ? ar.resType : "") + '>\n' +
  977 + '<img style="width: 17px;height: 17px;" src="/src/style/img/icon_row_menu.png">\n' +
  978 + '</a>'
  979 + //end lsq 2022-06-08
  980 + var menuId = "";
  981 + if (ar.kpiId == 'KPIE13DD9A3' || ar.kpiId == 'KPI02786E8D' ) {
  982 + ar.kpiName = ar.kpiName + tips;
  983 + menuId = "id=\"" + targetId + "_detail_row_menu\" class='statusMenu'";
  984 + }
  985 + let unit='';
  986 + if(ar.unit != null && ar.kpiValue != null && ar.kpiValue.indexOf('从不过期') == -1){
  987 + unit=ar.unit;
  988 + }
  989 + var $html = addIconByValue(valueStr);
  990 + var resStyle = obj.alarmEleMatchStyle(ar.flag, ar.kpiId);
  991 + span += ' <span ' + menuId + ' style="text-align:left;width:40%">' + ar.kpiName + '</span>' +
  992 + '<span title="' + titleStr + '" style="width:60%;overflow: hidden !important;text-overflow: ellipsis;white-space: nowrap;' + resStyle + '">'
  993 + + $html + valueStr +unit+ '</span>';
  994 + //补充空白区域
  995 + if (v.length < cols) {
  996 + var l = cols - v.length;
  997 + var appendSpan = '';
  998 + for (var n = 0; n < l; n++) {
  999 + appendSpan += "<span></span><span></span>";
  1000 + }
  1001 + span += appendSpan;
  1002 + }
  1003 + });
  1004 + li += '<li>' + span + '</li>'
  1005 + });
  1006 + $("ul#" + targetId).html(li);
  1007 + }
  1008 + },
  1009 + snapshotRenderResHealth: function (data){
  1010 + var clas = 'res-state-pie--good';
  1011 + if (data.icon == 'worst') {
  1012 + clas = 'res-state-pie--bad';
  1013 + }
  1014 + if (data.icon == 'worse') {
  1015 + clas = 'res-state-pie--middle';
  1016 + }
  1017 + var reslt = "优", yz = '0', yb = '0', zy = '0';
  1018 + if (data.state) {
  1019 + reslt = data.state;
  1020 + }
  1021 + if (data.yz) {
  1022 + yz = data.yz == 'null' || '' ? 0 : data.yz;
  1023 + }
  1024 + if (data.zy) {
  1025 + zy = data.zy == 'null' || '' ? 0 : data.zy;
  1026 + }
  1027 + if (data.yb) {
  1028 + yb = data.yb == 'null' || '' ? 0 : data.yb;
  1029 + }
  1030 + var html = '<div class="res-state-pie ' + clas + '">' + reslt + '</div>' +
  1031 + ' <ul>' +
  1032 + ' <li>严重告警:' + yz + '</li>' +
  1033 + ' <li>重要告警:' + zy + '</li>' +
  1034 + ' <li>一般告警:' + yb + '</li>' +
  1035 + ' </ul>';
  1036 +
  1037 + $("#hostminicomputerpartition_resstate").html(html);
  1038 + },
  1039 +
  1040 + /**
932 * 资源状态 1041 * 资源状态
933 * @param targetId 资源状体区域ID 1042 * @param targetId 资源状体区域ID
934 * @param resId 1043 * @param resId
@@ -3262,6 +3371,47 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele @@ -3262,6 +3371,47 @@ layui.define(['laytpl', 'admin', 'form', 'table', 'echarts', 'sessions', 'xmSele
3262 } 3371 }
3263 }, 3372 },
3264 /** 3373 /**
  3374 + * 活动告警
  3375 + * @param tableId
  3376 + * @param resId
  3377 + */
  3378 + snapshotRenderActiveAlarms: function (title,tableId, data) {
  3379 + //start lsq 状态信息的状态也增加下探 202-06-08
  3380 + let statusF = false;//是否为状态信息
  3381 + //end lsq 2022-06-08
  3382 + $('#' + tableId).prev().text(title)
  3383 + var alarmlist = table.render({
  3384 + elem: '#' + tableId
  3385 + , data: data
  3386 + , cols: [[
  3387 + {
  3388 + field: 'LAY_INDEX', title: '序号', align: 'center', width: 100,
  3389 + templet: function (d) {
  3390 + return '<span>' + d.LAY_INDEX + '</span>';
  3391 + }
  3392 + }
  3393 + , {
  3394 + field: 'alarmLevel', title: '告警级别', align: 'center', width: 140, sort: true,
  3395 + templet: function (d) {
  3396 + if (d.alarmLevel == 3) {
  3397 + return '<span class="layui-table-warn" style="width: 100%;">严重</span>';
  3398 + } else if (d.alarmLevel == 2) {
  3399 + return '<span class="layui-table-close" style="width: 100%;">重要</span>';
  3400 + } else if (d.alarmLevel == 1) {
  3401 + return '<span class="layui-table-normal" style="width: 100%;">一般</span>';
  3402 + }
  3403 + }
  3404 + }
  3405 + , {field: 'alarmContent', title: '告警内容', align: 'center'}
  3406 + , {
  3407 + field: 'kpiName', title: '指标名称', align: 'center', width: '20%',
  3408 + }
  3409 + , {field: 'updateTime', title: '告警时间', align: 'center', width: '15%'}
  3410 + ]],
  3411 + });
  3412 +
  3413 + },
  3414 + /**
3265 * 虚拟化虚拟机列表 3415 * 虚拟化虚拟机列表
3266 * @param tableId 3416 * @param tableId
3267 * @param resId 3417 * @param resId
@@ -64,7 +64,7 @@ export default { @@ -64,7 +64,7 @@ export default {
64 }, 64 },
65 selectFilterMethod(val) { 65 selectFilterMethod(val) {
66 // 下拉框调用tree树筛选 66 // 下拉框调用tree树筛选
67 - this.$refs.kpiTree.filter(val) 67 + this.$refs.bizTree.filter(val)
68 }, 68 },
69 selectChangeMethod(e) { 69 selectChangeMethod(e) {
70 var arrNew = [] 70 var arrNew = []
@@ -78,7 +78,7 @@ export default { @@ -78,7 +78,7 @@ export default {
78 } 78 }
79 } 79 }
80 // 设置勾选的值 80 // 设置勾选的值
81 - this.$refs.kpiTree.setCheckedNodes(arrNew) 81 + this.$refs.bizTree.setCheckedNodes(arrNew)
82 }, 82 },
83 filterNode(value, data) { 83 filterNode(value, data) {
84 if (!value) return true 84 if (!value) return true