@riil-frontend/component-topology 8.0.0-a.8 → 8.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +11 -11
- package/es/core/hooks/usePolling.js +3 -3
- package/es/core/models/TopoApp.js +1 -1
- package/es/core/models/utils/linkUtils.js +31 -63
- package/es/core/services/overview.js +33 -9
- package/es/core/store/models/topoAlarm.js +9 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +124 -251
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +171 -0
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
- package/es/networkTopo/services/link.js +11 -12
- package/lib/core/hooks/usePolling.js +3 -3
- package/lib/core/models/TopoApp.js +1 -1
- package/lib/core/models/utils/linkUtils.js +32 -67
- package/lib/core/services/overview.js +32 -8
- package/lib/core/store/models/topoAlarm.js +10 -4
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +125 -251
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +184 -0
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
- package/lib/networkTopo/services/link.js +11 -12
- package/package.json +2 -2
@@ -21,7 +21,7 @@ export default function useMetricPolling(_ref) {
|
|
21
21
|
|
22
22
|
|
23
23
|
var queryLinkMetricsRequest = useRequest(queryLinkLatestMetrics, {
|
24
|
-
pollingInterval:
|
24
|
+
pollingInterval: 60 * 1000,
|
25
25
|
pollingWhenHidden: false,
|
26
26
|
debounceInterval: 200,
|
27
27
|
manual: true,
|
@@ -31,7 +31,7 @@ export default function useMetricPolling(_ref) {
|
|
31
31
|
}
|
32
32
|
});
|
33
33
|
var queryInterfaceMetricsRequest = useRequest(queryLinkInterfacesLatestMetrics, {
|
34
|
-
pollingInterval:
|
34
|
+
pollingInterval: 60 * 1000,
|
35
35
|
pollingWhenHidden: false,
|
36
36
|
debounceInterval: 200,
|
37
37
|
manual: true,
|
@@ -0,0 +1,171 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
3
|
+
import { useRequest } from 'ahooks';
|
4
|
+
import { useEffect, useState } from 'react';
|
5
|
+
import alarmService from "../../../../../../../services/alarm";
|
6
|
+
import service from "../../../../../../../services/overview";
|
7
|
+
/**
|
8
|
+
* 概览指标定义
|
9
|
+
* @param {*} props
|
10
|
+
*/
|
11
|
+
|
12
|
+
var useAlarmAndRiskData = function useAlarmAndRiskData(props) {
|
13
|
+
var id = props.id,
|
14
|
+
isAppTopo = props.isAppTopo,
|
15
|
+
resourceOverviewProps = props.resourceOverviewProps,
|
16
|
+
childrenIds = props.childrenIds,
|
17
|
+
userId = props.userId;
|
18
|
+
|
19
|
+
var _useState = useState([]),
|
20
|
+
alarmRiskList = _useState[0],
|
21
|
+
setAlarmRiskList = _useState[1]; // 获取告警/风险信息
|
22
|
+
|
23
|
+
|
24
|
+
function getAlarmRiskData(_x) {
|
25
|
+
return _getAlarmRiskData.apply(this, arguments);
|
26
|
+
} // 轮询hooks
|
27
|
+
|
28
|
+
|
29
|
+
function _getAlarmRiskData() {
|
30
|
+
_getAlarmRiskData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(id) {
|
31
|
+
var _alarmList, _yield$resourceOvervi, alarmList, _yield$alarmService$g, _alarmList2, AllComponentsByCiId, _yield$service$getRis, riskList;
|
32
|
+
|
33
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
34
|
+
while (1) {
|
35
|
+
switch (_context.prev = _context.next) {
|
36
|
+
case 0:
|
37
|
+
if (!isAppTopo) {
|
38
|
+
_context.next = 9;
|
39
|
+
break;
|
40
|
+
}
|
41
|
+
|
42
|
+
_context.next = 3;
|
43
|
+
return resourceOverviewProps === null || resourceOverviewProps === void 0 ? void 0 : resourceOverviewProps.getData({
|
44
|
+
id: id // metrics: topModelMetrics,
|
45
|
+
|
46
|
+
});
|
47
|
+
|
48
|
+
case 3:
|
49
|
+
_yield$resourceOvervi = _context.sent;
|
50
|
+
alarmList = _yield$resourceOvervi.alarms;
|
51
|
+
alarmList = ((_alarmList = alarmList) === null || _alarmList === void 0 ? void 0 : _alarmList.map(function (item) {
|
52
|
+
return {
|
53
|
+
type: 'alarm',
|
54
|
+
icon: 'gaojing-3',
|
55
|
+
className: "alarm-color-icon-lv" + item.alertLevel,
|
56
|
+
title: "[" + item.alertObject + "] " + item.alertTitle,
|
57
|
+
link: "/default/pagecenter/alertDetail/view/" + item.alertId + "?alertId=" + item.alertId + "&resId=" + item.ciId + "&title=" + item.alertObject + "&ruleId=" + item.ruleId,
|
58
|
+
time: item.createTime,
|
59
|
+
status: item.status,
|
60
|
+
params: [{
|
61
|
+
alertId: item.alertId,
|
62
|
+
status: 'dealing',
|
63
|
+
userId: userId,
|
64
|
+
isBaseAlert: false
|
65
|
+
}]
|
66
|
+
};
|
67
|
+
})) || [];
|
68
|
+
setAlarmRiskList(alarmList);
|
69
|
+
_context.next = 24;
|
70
|
+
break;
|
71
|
+
|
72
|
+
case 9:
|
73
|
+
_context.next = 11;
|
74
|
+
return alarmService.getAlarmByIds([id].concat(childrenIds), {
|
75
|
+
alertStatusList: ['toDeal', 'woDealing', 'dealing'],
|
76
|
+
// toDeal: 待处理, dealing:处理中
|
77
|
+
pageNum: 1,
|
78
|
+
pageSize: 10000,
|
79
|
+
sortField: 'alertLevel',
|
80
|
+
sortOrder: 'asc'
|
81
|
+
});
|
82
|
+
|
83
|
+
case 11:
|
84
|
+
_yield$alarmService$g = _context.sent;
|
85
|
+
_alarmList2 = _yield$alarmService$g.datas;
|
86
|
+
// 2022-07-16 后端不支持多列排序,暂通过前端实现,按创建时间倒序
|
87
|
+
_alarmList2 = _alarmList2.sort(function (a, b) {
|
88
|
+
return b.createTime - a.createTime;
|
89
|
+
});
|
90
|
+
_alarmList2 = _alarmList2.map(function (item) {
|
91
|
+
return {
|
92
|
+
type: 'alarm',
|
93
|
+
icon: 'gaojing-3',
|
94
|
+
className: "alarm-color-icon-lv" + item.alertLevel,
|
95
|
+
title: "" + item.alertObject + item.alertTitle,
|
96
|
+
link: "/default/pagecenter/alertDetail/view/" + item.alertId + "?alertId=" + item.alertId + "&resId=" + item.ciId + "&title=" + item.alertObject + "&ruleId=" + item.ruleId,
|
97
|
+
time: item.createTime,
|
98
|
+
status: item.status,
|
99
|
+
params: [{
|
100
|
+
alertId: item.alertId,
|
101
|
+
status: 'dealing',
|
102
|
+
userId: userId,
|
103
|
+
isBaseAlert: false
|
104
|
+
}]
|
105
|
+
};
|
106
|
+
}); // fix NEWITOM-33635【南昌大学】网络拓扑上双击设备拉开的抽屉中无法看到风险
|
107
|
+
|
108
|
+
_context.next = 17;
|
109
|
+
return service.queryAllComponentsByCiId(id);
|
110
|
+
|
111
|
+
case 17:
|
112
|
+
AllComponentsByCiId = _context.sent;
|
113
|
+
_context.next = 20;
|
114
|
+
return service.getRiskByIds({
|
115
|
+
ciIdList: [id].concat(childrenIds, AllComponentsByCiId.map(function (item) {
|
116
|
+
return item.id;
|
117
|
+
})),
|
118
|
+
statusList: ['toDeal', 'dealing'],
|
119
|
+
current: 1,
|
120
|
+
pageSize: 10000
|
121
|
+
});
|
122
|
+
|
123
|
+
case 20:
|
124
|
+
_yield$service$getRis = _context.sent;
|
125
|
+
riskList = _yield$service$getRis.content;
|
126
|
+
riskList = riskList.map(function (item) {
|
127
|
+
return {
|
128
|
+
type: 'risk',
|
129
|
+
icon: 'Overall_risk_full',
|
130
|
+
className: 'risk-icon',
|
131
|
+
title: "" + item.ciName + item.itemName,
|
132
|
+
link: "/default/inspectionTaskList/inspectionReport?title=" + item.ciName + "&reportId=" + item.executeId + "&reportTime=" + item.executeTime + "&reportType=" + item.viewType + "&reportName=" + item.reportName,
|
133
|
+
time: item.firstFoundTime
|
134
|
+
};
|
135
|
+
}); // console.log('告警和风险', alarmList, riskList);
|
136
|
+
|
137
|
+
setAlarmRiskList([].concat(_alarmList2, riskList));
|
138
|
+
|
139
|
+
case 24:
|
140
|
+
case "end":
|
141
|
+
return _context.stop();
|
142
|
+
}
|
143
|
+
}
|
144
|
+
}, _callee);
|
145
|
+
}));
|
146
|
+
return _getAlarmRiskData.apply(this, arguments);
|
147
|
+
}
|
148
|
+
|
149
|
+
var request = useRequest(getAlarmRiskData, {
|
150
|
+
pollingInterval: 1000 * 15,
|
151
|
+
pollingWhenHidden: false,
|
152
|
+
// debounceInterval: 200,
|
153
|
+
manual: true,
|
154
|
+
onSuccess: function onSuccess() {}
|
155
|
+
});
|
156
|
+
useEffect(function () {
|
157
|
+
setAlarmRiskList([]);
|
158
|
+
request.run(id);
|
159
|
+
return function () {
|
160
|
+
request.cancel();
|
161
|
+
};
|
162
|
+
}, [id]);
|
163
|
+
return {
|
164
|
+
alarmRiskList: alarmRiskList,
|
165
|
+
refreshAlarmData: function refreshAlarmData() {
|
166
|
+
request.run();
|
167
|
+
}
|
168
|
+
};
|
169
|
+
};
|
170
|
+
|
171
|
+
export default useAlarmAndRiskData;
|
@@ -92,9 +92,9 @@ var useMetricModels = function useMetricModels(props) {
|
|
92
92
|
}
|
93
93
|
|
94
94
|
var request = useRequest(fetchData, {
|
95
|
-
pollingInterval: 1000 *
|
96
|
-
|
97
|
-
// debounceInterval:
|
95
|
+
pollingInterval: 1000 * 60,
|
96
|
+
pollingWhenHidden: false,
|
97
|
+
// debounceInterval: 200,
|
98
98
|
manual: true,
|
99
99
|
onSuccess: function onSuccess(newMetricModels) {
|
100
100
|
var a = metricModels.map(function (item) {
|
@@ -148,7 +148,7 @@ export default {
|
|
148
148
|
*/
|
149
149
|
queryAssociatedlinks: function queryAssociatedlinks(ids, type) {
|
150
150
|
return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {
|
151
|
-
var stag, ttag, condition, parm,
|
151
|
+
var stag, ttag, condition, parm, result;
|
152
152
|
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
153
153
|
while (1) {
|
154
154
|
switch (_context5.prev = _context5.next) {
|
@@ -167,28 +167,27 @@ export default {
|
|
167
167
|
sort: "name asc",
|
168
168
|
currentPage: 1,
|
169
169
|
pageSize: 99
|
170
|
-
};
|
171
|
-
jsonParm = JSON.stringify(parm); // console.log("queryAssociatedlinks", ids, parm, jsonParm);
|
170
|
+
}; // console.log("queryAssociatedlinks", ids, parm, jsonParm);
|
172
171
|
|
173
|
-
_context5.prev =
|
174
|
-
_context5.next =
|
175
|
-
return request.post("/mdc/v1/api/cmdb/commonQueryCiData",
|
172
|
+
_context5.prev = 5;
|
173
|
+
_context5.next = 8;
|
174
|
+
return request.post("/mdc/v1/api/cmdb/commonQueryCiData", parm);
|
176
175
|
|
177
|
-
case
|
176
|
+
case 8:
|
178
177
|
result = _context5.sent;
|
179
178
|
return _context5.abrupt("return", result);
|
180
179
|
|
181
|
-
case
|
182
|
-
_context5.prev =
|
183
|
-
_context5.t0 = _context5["catch"](
|
180
|
+
case 12:
|
181
|
+
_context5.prev = 12;
|
182
|
+
_context5.t0 = _context5["catch"](5);
|
184
183
|
rlog.error("查询可关联链路", _context5.t0);
|
185
184
|
|
186
|
-
case
|
185
|
+
case 15:
|
187
186
|
case "end":
|
188
187
|
return _context5.stop();
|
189
188
|
}
|
190
189
|
}
|
191
|
-
}, _callee5, null, [[
|
190
|
+
}, _callee5, null, [[5, 12]]);
|
192
191
|
}))();
|
193
192
|
}
|
194
193
|
};
|
@@ -34,9 +34,9 @@ var usePolling = function usePolling(props) {
|
|
34
34
|
var resIdsList = resAndMetrics === null || resAndMetrics === void 0 ? void 0 : resAndMetrics.resIdsList; // 轮询hooks
|
35
35
|
|
36
36
|
var _useRequest = (0, _ahooks.useRequest)(refresh, {
|
37
|
-
pollingInterval:
|
38
|
-
|
39
|
-
// debounceInterval:
|
37
|
+
pollingInterval: 60 * 1000,
|
38
|
+
pollingWhenHidden: false,
|
39
|
+
// debounceInterval: 200,
|
40
40
|
manual: true,
|
41
41
|
onSuccess: function onSuccess(result) {
|
42
42
|
if (result) {
|
@@ -54,7 +54,7 @@ var _ElementTagTipConfig = _interopRequireDefault(require("./tagstips/ElementTag
|
|
54
54
|
var _SelectionModel = _interopRequireDefault(require("./SelectionModel"));
|
55
55
|
|
56
56
|
// eslint-disable-next-line no-undef
|
57
|
-
var version = typeof "8.0.
|
57
|
+
var version = typeof "8.0.1" === 'string' ? "8.0.1" : null;
|
58
58
|
console.info("\u62D3\u6251\u7248\u672C: " + version);
|
59
59
|
/**
|
60
60
|
* 拓扑显示和编辑
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
4
4
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports.buildTopoLinkData = buildTopoLinkData;
|
7
|
-
exports.
|
7
|
+
exports.compatibleWith = void 0;
|
8
8
|
exports.getLinksDetail = getLinksDetail;
|
9
9
|
exports.isCrucialLink = isCrucialLink;
|
10
10
|
exports.isExitLink = isExitLink;
|
@@ -13,11 +13,9 @@ exports.showLinkByConfig = exports.plurals = void 0;
|
|
13
13
|
|
14
14
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
15
15
|
|
16
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
17
|
-
|
18
16
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
19
17
|
|
20
|
-
var
|
18
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
21
19
|
|
22
20
|
var _keyBy = _interopRequireDefault(require("lodash/keyBy"));
|
23
21
|
|
@@ -27,6 +25,8 @@ var _services = require("../../services");
|
|
27
25
|
|
28
26
|
var _htElementUtils = require("../../../utils/htElementUtils");
|
29
27
|
|
28
|
+
var _CiTypeCache = _interopRequireDefault(require("../cache/CiTypeCache"));
|
29
|
+
|
30
30
|
// 查询所有连线
|
31
31
|
// const interfaceTypeMap = {
|
32
32
|
// "network.interface": {
|
@@ -56,43 +56,6 @@ function isExitLink(link) {
|
|
56
56
|
return (link === null || link === void 0 ? void 0 : link.attributes) && !(link !== null && link !== void 0 && link.attributes['destination_id']);
|
57
57
|
}
|
58
58
|
|
59
|
-
var getInterfaceObject = /*#__PURE__*/function () {
|
60
|
-
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(codes) {
|
61
|
-
var query, promises, result, ifDoc;
|
62
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
63
|
-
while (1) {
|
64
|
-
switch (_context.prev = _context.next) {
|
65
|
-
case 0:
|
66
|
-
query = _lodash["default"].compact(_lodash["default"].uniq(codes));
|
67
|
-
promises = query.map(_services.queryModelAsset);
|
68
|
-
_context.next = 4;
|
69
|
-
return Promise.all(promises);
|
70
|
-
|
71
|
-
case 4:
|
72
|
-
result = _context.sent;
|
73
|
-
ifDoc = {};
|
74
|
-
result.map(function (ifItem) {
|
75
|
-
ifDoc[ifItem.code] = {
|
76
|
-
displayName: ifItem.displayName
|
77
|
-
};
|
78
|
-
});
|
79
|
-
return _context.abrupt("return", ifDoc);
|
80
|
-
|
81
|
-
case 8:
|
82
|
-
case "end":
|
83
|
-
return _context.stop();
|
84
|
-
}
|
85
|
-
}
|
86
|
-
}, _callee);
|
87
|
-
}));
|
88
|
-
|
89
|
-
return function getInterfaceObject(_x) {
|
90
|
-
return _ref.apply(this, arguments);
|
91
|
-
};
|
92
|
-
}();
|
93
|
-
|
94
|
-
exports.getInterfaceObject = getInterfaceObject;
|
95
|
-
|
96
59
|
function mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc) {
|
97
60
|
var linkCiMap = (0, _keyBy["default"])(links, 'id');
|
98
61
|
return links.map(function (link) {
|
@@ -135,57 +98,59 @@ function mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc) {
|
|
135
98
|
});
|
136
99
|
}
|
137
100
|
|
138
|
-
function getLinksDetail(
|
101
|
+
function getLinksDetail(_x, _x2) {
|
139
102
|
return _getLinksDetail.apply(this, arguments);
|
140
103
|
}
|
141
104
|
|
142
105
|
function _getLinksDetail() {
|
143
|
-
_getLinksDetail = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
106
|
+
_getLinksDetail = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(links, nodes) {
|
144
107
|
var linkCis, interfaceIds, interfaceTypes, interfaceCis, interfaceDoc;
|
145
|
-
return _regenerator["default"].wrap(function
|
108
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
146
109
|
while (1) {
|
147
|
-
switch (
|
110
|
+
switch (_context.prev = _context.next) {
|
148
111
|
case 0:
|
149
112
|
if (!(!links || !links.length)) {
|
150
|
-
|
113
|
+
_context.next = 2;
|
151
114
|
break;
|
152
115
|
}
|
153
116
|
|
154
|
-
return
|
117
|
+
return _context.abrupt("return", []);
|
155
118
|
|
156
119
|
case 2:
|
157
120
|
// const linkCis = await topoService.relation.batchQueryRelation(
|
158
121
|
// links.map((link) => link.id)
|
159
122
|
// );
|
160
123
|
linkCis = links;
|
161
|
-
interfaceIds = []
|
162
|
-
|
163
|
-
linkCis.
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
124
|
+
interfaceIds = [].concat(linkCis.map(function (item) {
|
125
|
+
return item.attributes.source_id;
|
126
|
+
}), linkCis.map(function (item) {
|
127
|
+
return item.attributes.destination_id;
|
128
|
+
}));
|
129
|
+
interfaceTypes = _lodash["default"].compact(_lodash["default"].uniq([].concat(linkCis.map(function (item) {
|
130
|
+
return item.attributes.source_type;
|
131
|
+
}), linkCis.map(function (item) {
|
132
|
+
return item.attributes.destination_type;
|
133
|
+
})))).filter(function (item) {
|
134
|
+
return item !== 'ip';
|
168
135
|
});
|
169
|
-
|
136
|
+
_context.next = 7;
|
170
137
|
return (0, _services.queryCisByIds)(interfaceIds);
|
171
138
|
|
172
|
-
case
|
173
|
-
interfaceCis =
|
174
|
-
|
175
|
-
return
|
176
|
-
return item !== 'ip';
|
177
|
-
}));
|
139
|
+
case 7:
|
140
|
+
interfaceCis = _context.sent;
|
141
|
+
_context.next = 10;
|
142
|
+
return _CiTypeCache["default"].getCiTypeMap(interfaceTypes);
|
178
143
|
|
179
|
-
case
|
180
|
-
interfaceDoc =
|
181
|
-
return
|
144
|
+
case 10:
|
145
|
+
interfaceDoc = _context.sent;
|
146
|
+
return _context.abrupt("return", mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc));
|
182
147
|
|
183
|
-
case
|
148
|
+
case 12:
|
184
149
|
case "end":
|
185
|
-
return
|
150
|
+
return _context.stop();
|
186
151
|
}
|
187
152
|
}
|
188
|
-
},
|
153
|
+
}, _callee);
|
189
154
|
}));
|
190
155
|
return _getLinksDetail.apply(this, arguments);
|
191
156
|
}
|
@@ -13,6 +13,10 @@ var _componentTopologyUtils = require("@riil-frontend/component-topology-utils")
|
|
13
13
|
|
14
14
|
var _cmdb = require("./cmdb");
|
15
15
|
|
16
|
+
// 机房可上架设备类型缓存数据
|
17
|
+
var roomDeviceTypeList = null; // 资源子组件缓存
|
18
|
+
|
19
|
+
var ciComponentsMap = {};
|
16
20
|
var _default = {
|
17
21
|
/**
|
18
22
|
* 根据资源id获取风险
|
@@ -46,19 +50,31 @@ var _default = {
|
|
46
50
|
*/
|
47
51
|
queryAllComponentsByCiId: function queryAllComponentsByCiId(id) {
|
48
52
|
return (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
53
|
+
var components;
|
49
54
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
50
55
|
while (1) {
|
51
56
|
switch (_context2.prev = _context2.next) {
|
52
57
|
case 0:
|
53
|
-
|
58
|
+
components = ciComponentsMap[id];
|
59
|
+
|
60
|
+
if (components) {
|
61
|
+
_context2.next = 6;
|
62
|
+
break;
|
63
|
+
}
|
64
|
+
|
65
|
+
_context2.next = 4;
|
54
66
|
return _componentTopologyUtils.request.post('/mdc/v1/api/cmdb/queryAllComponentsByCiId', {
|
55
67
|
id: id
|
56
68
|
});
|
57
69
|
|
58
|
-
case
|
59
|
-
|
70
|
+
case 4:
|
71
|
+
components = _context2.sent;
|
72
|
+
ciComponentsMap[id] = components;
|
60
73
|
|
61
|
-
case
|
74
|
+
case 6:
|
75
|
+
return _context2.abrupt("return", components);
|
76
|
+
|
77
|
+
case 7:
|
62
78
|
case "end":
|
63
79
|
return _context2.stop();
|
64
80
|
}
|
@@ -197,13 +213,21 @@ var _default = {
|
|
197
213
|
while (1) {
|
198
214
|
switch (_context8.prev = _context8.next) {
|
199
215
|
case 0:
|
200
|
-
|
201
|
-
|
216
|
+
if (roomDeviceTypeList) {
|
217
|
+
_context8.next = 4;
|
218
|
+
break;
|
219
|
+
}
|
202
220
|
|
203
|
-
|
204
|
-
return
|
221
|
+
_context8.next = 3;
|
222
|
+
return _componentTopologyUtils.request.post("/room/v1/api/device/type/list", {});
|
205
223
|
|
206
224
|
case 3:
|
225
|
+
roomDeviceTypeList = _context8.sent;
|
226
|
+
|
227
|
+
case 4:
|
228
|
+
return _context8.abrupt("return", roomDeviceTypeList);
|
229
|
+
|
230
|
+
case 5:
|
207
231
|
case "end":
|
208
232
|
return _context8.stop();
|
209
233
|
}
|
@@ -15,13 +15,19 @@ var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-ut
|
|
15
15
|
|
16
16
|
var _lodash = _interopRequireDefault(require("lodash"));
|
17
17
|
|
18
|
-
var _topoData = require("../../../utils/topoData");
|
19
|
-
|
20
18
|
/**
|
21
19
|
* 告警
|
22
20
|
*/
|
23
21
|
var showAlarmStatus = ["toDeal", "dealing", "change", "woDealing"];
|
24
22
|
|
23
|
+
var sortList = function sortList(a, b) {
|
24
|
+
if (a.level === b.level) {
|
25
|
+
return a.obj.createTime - b.obj.createTime;
|
26
|
+
} else {
|
27
|
+
return a.level - b.level;
|
28
|
+
}
|
29
|
+
};
|
30
|
+
|
25
31
|
function _default(topo) {
|
26
32
|
return {
|
27
33
|
// 定义 model 的初始 state
|
@@ -124,7 +130,7 @@ function _default(topo) {
|
|
124
130
|
}) < 0) {
|
125
131
|
var newArr = [].concat(doc[rid]);
|
126
132
|
newArr.push(item);
|
127
|
-
doc[rid] = newArr.sort(
|
133
|
+
doc[rid] = newArr.sort(sortList);
|
128
134
|
}
|
129
135
|
} else {
|
130
136
|
doc[rid] = [item];
|
@@ -155,7 +161,7 @@ function _default(topo) {
|
|
155
161
|
status: old.status
|
156
162
|
}));
|
157
163
|
|
158
|
-
doc[rid] = _newArr.sort(
|
164
|
+
doc[rid] = _newArr.sort(sortList);
|
159
165
|
|
160
166
|
_rlog["default"].debug("告警级别变更", doc[rid], item);
|
161
167
|
} else {
|