@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.
Files changed (24) hide show
  1. package/build/index.js +11 -11
  2. package/es/core/hooks/usePolling.js +3 -3
  3. package/es/core/models/TopoApp.js +1 -1
  4. package/es/core/models/utils/linkUtils.js +31 -63
  5. package/es/core/services/overview.js +33 -9
  6. package/es/core/store/models/topoAlarm.js +9 -1
  7. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +124 -251
  8. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
  9. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
  10. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +171 -0
  11. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
  12. package/es/networkTopo/services/link.js +11 -12
  13. package/lib/core/hooks/usePolling.js +3 -3
  14. package/lib/core/models/TopoApp.js +1 -1
  15. package/lib/core/models/utils/linkUtils.js +32 -67
  16. package/lib/core/services/overview.js +32 -8
  17. package/lib/core/store/models/topoAlarm.js +10 -4
  18. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +125 -251
  19. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
  20. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
  21. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +184 -0
  22. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
  23. package/lib/networkTopo/services/link.js +11 -12
  24. package/package.json +2 -2
@@ -12,7 +12,8 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
12
12
 
13
13
  import _regeneratorRuntime from "@babel/runtime/regenerator";
14
14
  import moment from 'moment';
15
- import React, { useEffect, useMemo, useState } from 'react'; // import { Link } from 'react-router-dom';
15
+ import React, { useEffect, useMemo, useState } from 'react';
16
+ import { rlog } from '@riil-frontend/component-topology-utils/lib/rlog'; // import { Link } from 'react-router-dom';
16
17
 
17
18
  import Link from "../../../../../../../components/Link";
18
19
  import { queryCisByIds } from "../../../../../../services";
@@ -21,13 +22,13 @@ import service from "../../../../../../services/overview";
21
22
  import BaseInfoBlock from "./BaseInfoBlock";
22
23
  import BlockBox from "./BlockBox";
23
24
  import useMetricModels from "./hooks/useMetricModels";
25
+ import useAlarmAndRiskData from "./hooks/useAlarmAndRiskData";
24
26
  import styles from "./index.module.scss";
25
27
  import ResourceOverviewMetric from "./ResourceOverviewMetric";
26
28
  import useCiAttrAndMetricData from "./useCiAttrAndMetricData";
27
29
  import Configurator from "./components/Configurator";
28
30
  import { formatMetric } from "../../../../../../models/attributeFormatter";
29
31
  import LinkTopoCard from "./components/LinkTopo/LinkTopoCard";
30
- import { rlog } from '@riil-frontend/component-topology-utils/lib/rlog';
31
32
  import EventsCard from "./EventsCard"; // url 处理,UICBB 的地址需截取前缀
32
33
 
33
34
  function formatUrl(url) {
@@ -91,32 +92,38 @@ export default function ResourceOverview(props) {
91
92
  metric = _useState2[0],
92
93
  setMetric = _useState2[1];
93
94
 
94
- var _useState3 = useState([]),
95
- alarmRiskList = _useState3[0],
96
- setAlarmRiskList = _useState3[1];
95
+ var _useState3 = useState(false),
96
+ isDevice = _useState3[0],
97
+ setIsDevice = _useState3[1]; // 是否是可上架设备
97
98
 
98
- var _useState4 = useState(false),
99
- isDevice = _useState4[0],
100
- setIsDevice = _useState4[1]; // 是否是可上架设备
101
99
 
100
+ var _useState4 = useState(false),
101
+ baseInfoInitLoading = _useState4[0],
102
+ settBaseInfoInitLoading = _useState4[1];
102
103
 
103
104
  var _useState5 = useState(false),
104
- baseInfoInitLoading = _useState5[0],
105
- settBaseInfoInitLoading = _useState5[1];
105
+ metricInitLoading = _useState5[0],
106
+ setMetricInitLoading = _useState5[1];
106
107
 
107
- var _useState6 = useState(false),
108
- metricInitLoading = _useState6[0],
109
- setMetricInitLoading = _useState6[1];
110
-
111
- var _useState7 = useState(),
112
- initFlag = _useState7[0],
113
- setInitFlag = _useState7[1];
108
+ var _useState6 = useState(),
109
+ initFlag = _useState6[0],
110
+ setInitFlag = _useState6[1];
114
111
 
115
112
  var ciTypeMeta = useMemo(function () {
116
113
  var typeMeta = topo.ciTyeCache.getCiType(ciType);
117
114
  return typeMeta;
118
115
  }, [id]);
119
116
 
117
+ var _useAlarmAndRiskData = useAlarmAndRiskData({
118
+ id: id,
119
+ resourceOverviewProps: resourceOverviewProps,
120
+ isAppTopo: isAppTopo,
121
+ childrenIds: childrenIds,
122
+ userId: userId
123
+ }),
124
+ alarmRiskList = _useAlarmAndRiskData.alarmRiskList,
125
+ refreshAlarmData = _useAlarmAndRiskData.refreshAlarmData;
126
+
120
127
  var _useMetricModels = useMetricModels({
121
128
  data: {
122
129
  type: type,
@@ -132,10 +139,8 @@ export default function ResourceOverview(props) {
132
139
 
133
140
  topo.resourceOverviewDrawer = {
134
141
  refreshData: function refreshData() {
135
- if (monitorMetricModels) {
136
- init();
137
- setInitFlag(new Date().getTime());
138
- }
142
+ refreshAlarmData();
143
+ setInitFlag(new Date().getTime());
139
144
  }
140
145
  };
141
146
  useEffect(function () {
@@ -146,18 +151,7 @@ export default function ResourceOverview(props) {
146
151
  window.topo_overview_metric_timer = null;
147
152
  }
148
153
  };
149
- }, []);
150
- useEffect(function () {
151
- if (monitorMetricModels) {
152
- init();
153
- }
154
- }, [ciAttrAndMetricData, ciTypeMeta, monitorMetricModels, id]);
155
-
156
- function init() {
157
- getDevice();
158
- getAlarmRiskData(id);
159
- } // 跳转前调用关闭操作
160
-
154
+ }, []); // 跳转前调用关闭操作
161
155
 
162
156
  function onClose() {
163
157
  isAppTopo && resourceOverviewProps.onClose && resourceOverviewProps.onClose();
@@ -213,42 +207,45 @@ export default function ResourceOverview(props) {
213
207
  dataIndex: item.code
214
208
  };
215
209
  })) || [];
216
- }, [id, monitorMetricModels, initFlag]); // 获取上架设备类型,判断资源是否是上架设备
217
-
218
- function getDevice() {
219
- return _getDevice.apply(this, arguments);
220
- } // 获取地址信息:机房 机柜 起始U-结束U
221
-
222
-
223
- function _getDevice() {
224
- _getDevice = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
225
- var list;
226
- return _regeneratorRuntime.wrap(function _callee$(_context) {
227
- while (1) {
228
- switch (_context.prev = _context.next) {
229
- case 0:
230
- _context.next = 2;
231
- return service.getDeviceTypeList();
232
-
233
- case 2:
234
- list = _context.sent;
235
- setIsDevice(list.some(function (item) {
236
- return item.code === ciType;
237
- })); // console.log('getDevice', ciType, list);
210
+ }, [id, monitorMetricModels, initFlag]);
211
+ useEffect(function () {
212
+ // 获取上架设备类型,判断资源是否是上架设备
213
+ function getDevice() {
214
+ return _getDevice.apply(this, arguments);
215
+ }
238
216
 
239
- case 4:
240
- case "end":
241
- return _context.stop();
217
+ function _getDevice() {
218
+ _getDevice = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
219
+ var list;
220
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
221
+ while (1) {
222
+ switch (_context.prev = _context.next) {
223
+ case 0:
224
+ _context.next = 2;
225
+ return service.getDeviceTypeList();
226
+
227
+ case 2:
228
+ list = _context.sent;
229
+ setIsDevice(list.some(function (item) {
230
+ return item.code === ciType;
231
+ })); // console.log('getDevice', ciType, list);
232
+
233
+ case 4:
234
+ case "end":
235
+ return _context.stop();
236
+ }
242
237
  }
243
- }
244
- }, _callee);
245
- }));
246
- return _getDevice.apply(this, arguments);
247
- }
238
+ }, _callee);
239
+ }));
240
+ return _getDevice.apply(this, arguments);
241
+ }
242
+
243
+ getDevice();
244
+ }, [ciType]); // 获取地址信息:机房 机柜 起始U-结束U
248
245
 
249
246
  function getAddressFormat(_x) {
250
247
  return _getAddressFormat.apply(this, arguments);
251
- } // 获取告警/风险信息
248
+ } // 告警table列配置
252
249
 
253
250
 
254
251
  function _getAddressFormat() {
@@ -297,131 +294,6 @@ export default function ResourceOverview(props) {
297
294
  return _getAddressFormat.apply(this, arguments);
298
295
  }
299
296
 
300
- function getAlarmRiskData(_x2) {
301
- return _getAlarmRiskData.apply(this, arguments);
302
- } // 告警table列配置
303
-
304
-
305
- function _getAlarmRiskData() {
306
- _getAlarmRiskData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(id) {
307
- var _alarmList, _yield$resourceOvervi, alarmList, _yield$alarmService$g, _alarmList2, AllComponentsByCiId, _yield$service$getRis, riskList;
308
-
309
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
310
- while (1) {
311
- switch (_context3.prev = _context3.next) {
312
- case 0:
313
- if (!isAppTopo) {
314
- _context3.next = 9;
315
- break;
316
- }
317
-
318
- _context3.next = 3;
319
- return resourceOverviewProps === null || resourceOverviewProps === void 0 ? void 0 : resourceOverviewProps.getData({
320
- id: id // metrics: topModelMetrics,
321
-
322
- });
323
-
324
- case 3:
325
- _yield$resourceOvervi = _context3.sent;
326
- alarmList = _yield$resourceOvervi.alarms;
327
- alarmList = ((_alarmList = alarmList) === null || _alarmList === void 0 ? void 0 : _alarmList.map(function (item) {
328
- return {
329
- type: 'alarm',
330
- icon: 'gaojing-3',
331
- className: "alarm-color-icon-lv" + item.alertLevel,
332
- title: "[" + item.alertObject + "] " + item.alertTitle,
333
- link: "/default/pagecenter/alertDetail/view/" + item.alertId + "?alertId=" + item.alertId + "&resId=" + item.ciId + "&title=" + item.alertObject + "&ruleId=" + item.ruleId,
334
- time: item.createTime,
335
- status: item.status,
336
- params: [{
337
- alertId: item.alertId,
338
- status: 'dealing',
339
- userId: userId,
340
- isBaseAlert: false
341
- }]
342
- };
343
- })) || [];
344
- setAlarmRiskList(alarmList);
345
- _context3.next = 24;
346
- break;
347
-
348
- case 9:
349
- _context3.next = 11;
350
- return alarmService.getAlarmByIds([id].concat(childrenIds), {
351
- alertStatusList: ['toDeal', 'woDealing', 'dealing'],
352
- // toDeal: 待处理, dealing:处理中
353
- pageNum: 1,
354
- pageSize: 10000,
355
- sortField: 'alertLevel',
356
- sortOrder: 'asc'
357
- });
358
-
359
- case 11:
360
- _yield$alarmService$g = _context3.sent;
361
- _alarmList2 = _yield$alarmService$g.datas;
362
- // 2022-07-16 后端不支持多列排序,暂通过前端实现,按创建时间倒序
363
- _alarmList2 = _alarmList2.sort(function (a, b) {
364
- return b.createTime - a.createTime;
365
- });
366
- _alarmList2 = _alarmList2.map(function (item) {
367
- return {
368
- type: 'alarm',
369
- icon: 'gaojing-3',
370
- className: "alarm-color-icon-lv" + item.alertLevel,
371
- title: "" + item.alertObject + item.alertTitle,
372
- link: "/default/pagecenter/alertDetail/view/" + item.alertId + "?alertId=" + item.alertId + "&resId=" + item.ciId + "&title=" + item.alertObject + "&ruleId=" + item.ruleId,
373
- time: item.createTime,
374
- status: item.status,
375
- params: [{
376
- alertId: item.alertId,
377
- status: 'dealing',
378
- userId: userId,
379
- isBaseAlert: false
380
- }]
381
- };
382
- }); // fix NEWITOM-33635【南昌大学】网络拓扑上双击设备拉开的抽屉中无法看到风险
383
-
384
- _context3.next = 17;
385
- return service.queryAllComponentsByCiId(id);
386
-
387
- case 17:
388
- AllComponentsByCiId = _context3.sent;
389
- _context3.next = 20;
390
- return service.getRiskByIds({
391
- ciIdList: [id].concat(childrenIds, AllComponentsByCiId.map(function (item) {
392
- return item.id;
393
- })),
394
- statusList: ['toDeal', 'dealing'],
395
- current: 1,
396
- pageSize: 10000
397
- });
398
-
399
- case 20:
400
- _yield$service$getRis = _context3.sent;
401
- riskList = _yield$service$getRis.content;
402
- riskList = riskList.map(function (item) {
403
- return {
404
- type: 'risk',
405
- icon: 'Overall_risk_full',
406
- className: 'risk-icon',
407
- title: "" + item.ciName + item.itemName,
408
- link: "/default/inspectionTaskList/inspectionReport?title=" + item.ciName + "&reportId=" + item.executeId + "&reportTime=" + item.executeTime + "&reportType=" + item.viewType + "&reportName=" + item.reportName,
409
- time: item.firstFoundTime
410
- };
411
- }); // console.log('告警和风险', alarmList, riskList);
412
-
413
- setAlarmRiskList([].concat(_alarmList2, riskList));
414
-
415
- case 24:
416
- case "end":
417
- return _context3.stop();
418
- }
419
- }
420
- }, _callee3);
421
- }));
422
- return _getAlarmRiskData.apply(this, arguments);
423
- }
424
-
425
297
  var columns = [{
426
298
  title: '描述',
427
299
  dataIndex: 'title',
@@ -475,31 +347,31 @@ export default function ResourceOverview(props) {
475
347
  }
476
348
  }]; // 告警/风险 操作 (受理)
477
349
 
478
- function alarmRiskOperation(_x3, _x4) {
350
+ function alarmRiskOperation(_x2, _x3) {
479
351
  return _alarmRiskOperation.apply(this, arguments);
480
352
  }
481
353
 
482
354
  function _alarmRiskOperation() {
483
- _alarmRiskOperation = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(type, params) {
355
+ _alarmRiskOperation = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(type, params) {
484
356
  var res;
485
- return _regeneratorRuntime.wrap(function _callee4$(_context4) {
357
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
486
358
  while (1) {
487
- switch (_context4.prev = _context4.next) {
359
+ switch (_context3.prev = _context3.next) {
488
360
  case 0:
489
361
  if (!(type === 'alarm')) {
490
- _context4.next = 6;
362
+ _context3.next = 6;
491
363
  break;
492
364
  }
493
365
 
494
- _context4.next = 3;
366
+ _context3.next = 3;
495
367
  return service.handleAlarm(params);
496
368
 
497
369
  case 3:
498
- res = _context4.sent;
370
+ res = _context3.sent;
499
371
 
500
372
  _Message.success('受理成功');
501
373
 
502
- getAlarmRiskData(id); // if (isAppTopo) {
374
+ refreshAlarmData(id); // if (isAppTopo) {
503
375
  // const {
504
376
  // displayName: ciName,
505
377
  // attributeMap: modelAttributeMap,
@@ -512,10 +384,10 @@ export default function ResourceOverview(props) {
512
384
 
513
385
  case 6:
514
386
  case "end":
515
- return _context4.stop();
387
+ return _context3.stop();
516
388
  }
517
389
  }
518
- }, _callee4);
390
+ }, _callee3);
519
391
  }));
520
392
  return _alarmRiskOperation.apply(this, arguments);
521
393
  }
@@ -525,40 +397,40 @@ export default function ResourceOverview(props) {
525
397
  ciType: ciType,
526
398
  type: type,
527
399
  // name: '123'
528
- name: props.name
400
+ name: props.name ? props.name : props.resourceData.attributes.name
529
401
  }; // 基本信息设置改变
530
402
 
531
- function baseInfoColChange(_x5) {
403
+ function baseInfoColChange(_x4) {
532
404
  return _baseInfoColChange.apply(this, arguments);
533
405
  } // 获取属性信息
534
406
 
535
407
 
536
408
  function _baseInfoColChange() {
537
- _baseInfoColChange = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(col) {
409
+ _baseInfoColChange = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(col) {
538
410
  var _col;
539
411
 
540
412
  var infoData, attributeMap, _iterator, _step, item, value, contentTitle, link, address, owned_computer_room, owned_cabinet, roomLink, node, _data, _ref2, _ref2$, _item, _attributeMap, object, _object, displayName, attr;
541
413
 
542
- return _regeneratorRuntime.wrap(function _callee5$(_context5) {
414
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
543
415
  while (1) {
544
- switch (_context5.prev = _context5.next) {
416
+ switch (_context4.prev = _context4.next) {
545
417
  case 0:
546
418
  if ((_col = col) !== null && _col !== void 0 && _col.length) {
547
- _context5.next = 3;
419
+ _context4.next = 3;
548
420
  break;
549
421
  }
550
422
 
551
423
  setBaseInfo([]);
552
- return _context5.abrupt("return");
424
+ return _context4.abrupt("return");
553
425
 
554
426
  case 3:
555
427
  settBaseInfoInitLoading(true);
556
428
  infoData = [];
557
- _context5.next = 7;
429
+ _context4.next = 7;
558
430
  return getAttribute(id);
559
431
 
560
432
  case 7:
561
- attributeMap = _context5.sent;
433
+ attributeMap = _context4.sent;
562
434
  // console.log('getAttribute', attributeMap);
563
435
  col = col.filter(function (item) {
564
436
  return !item.hidden;
@@ -567,15 +439,15 @@ export default function ResourceOverview(props) {
567
439
 
568
440
  case 10:
569
441
  if ((_step = _iterator()).done) {
570
- _context5.next = 47;
442
+ _context4.next = 47;
571
443
  break;
572
444
  }
573
445
 
574
446
  item = _step.value;
575
447
  value = formatMetric(attributeMap[item.dataIndex], ciTypeMeta.attributeMap[item.dataIndex]);
576
448
  contentTitle = value;
577
- _context5.t0 = item.dataIndex;
578
- _context5.next = _context5.t0 === 'display_name' ? 17 : _context5.t0 === 'ciName' ? 21 : _context5.t0 === 'res_address' ? 24 : _context5.t0 === 'imageName' ? 31 : 35;
449
+ _context4.t0 = item.dataIndex;
450
+ _context4.next = _context4.t0 === 'display_name' ? 17 : _context4.t0 === 'ciName' ? 21 : _context4.t0 === 'res_address' ? 24 : _context4.t0 === 'imageName' ? 31 : 35;
579
451
  break;
580
452
 
581
453
  case 17:
@@ -589,19 +461,19 @@ export default function ResourceOverview(props) {
589
461
  to: formatUrl(link)
590
462
  }, attributeMap.display_name || '-'));
591
463
  contentTitle = attributeMap.display_name || '-';
592
- return _context5.abrupt("break", 36);
464
+ return _context4.abrupt("break", 36);
593
465
 
594
466
  case 21:
595
467
  value = ciTypeMeta.displayName;
596
468
  contentTitle = value;
597
- return _context5.abrupt("break", 36);
469
+ return _context4.abrupt("break", 36);
598
470
 
599
471
  case 24:
600
- _context5.next = 26;
472
+ _context4.next = 26;
601
473
  return getAddressFormat(attributeMap);
602
474
 
603
475
  case 26:
604
- address = _context5.sent;
476
+ address = _context4.sent;
605
477
  owned_computer_room = attributeMap.owned_computer_room, owned_cabinet = attributeMap.owned_cabinet; // 跳转3D机房定位设备
606
478
 
607
479
  if (owned_computer_room && owned_cabinet) {
@@ -620,16 +492,16 @@ export default function ResourceOverview(props) {
620
492
  }
621
493
 
622
494
  contentTitle = address;
623
- return _context5.abrupt("break", 36);
495
+ return _context4.abrupt("break", 36);
624
496
 
625
497
  case 31:
626
498
  node = topo.getDataModel().getDataByTag(id);
627
499
  value = (node === null || node === void 0 ? void 0 : node.a('customName')) || (node === null || node === void 0 ? void 0 : node.a('name')) || '-';
628
500
  contentTitle = value;
629
- return _context5.abrupt("break", 36);
501
+ return _context4.abrupt("break", 36);
630
502
 
631
503
  case 35:
632
- return _context5.abrupt("break", 36);
504
+ return _context4.abrupt("break", 36);
633
505
 
634
506
  case 36:
635
507
  // 拿翻译字段属性数据
@@ -668,7 +540,7 @@ export default function ResourceOverview(props) {
668
540
  }));
669
541
 
670
542
  case 45:
671
- _context5.next = 10;
543
+ _context4.next = 10;
672
544
  break;
673
545
 
674
546
  case 47:
@@ -677,58 +549,58 @@ export default function ResourceOverview(props) {
677
549
 
678
550
  case 49:
679
551
  case "end":
680
- return _context5.stop();
552
+ return _context4.stop();
681
553
  }
682
554
  }
683
- }, _callee5);
555
+ }, _callee4);
684
556
  }));
685
557
  return _baseInfoColChange.apply(this, arguments);
686
558
  }
687
559
 
688
- function getAttribute(_x6) {
560
+ function getAttribute(_x5) {
689
561
  return _getAttribute.apply(this, arguments);
690
562
  } // 指标设置改变
691
563
 
692
564
 
693
565
  function _getAttribute() {
694
- _getAttribute = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(id) {
695
- var _yield$resourceOvervi2, baseInfos, res, _ref3, attributes;
566
+ _getAttribute = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(id) {
567
+ var _yield$resourceOvervi, baseInfos, res, _ref3, attributes;
696
568
 
697
- return _regeneratorRuntime.wrap(function _callee6$(_context6) {
569
+ return _regeneratorRuntime.wrap(function _callee5$(_context5) {
698
570
  while (1) {
699
- switch (_context6.prev = _context6.next) {
571
+ switch (_context5.prev = _context5.next) {
700
572
  case 0:
701
573
  if (id) {
702
- _context6.next = 2;
574
+ _context5.next = 2;
703
575
  break;
704
576
  }
705
577
 
706
- return _context6.abrupt("return");
578
+ return _context5.abrupt("return");
707
579
 
708
580
  case 2:
709
581
  if (!(resourceOverviewProps !== null && resourceOverviewProps !== void 0 && resourceOverviewProps.getData)) {
710
- _context6.next = 9;
582
+ _context5.next = 9;
711
583
  break;
712
584
  }
713
585
 
714
- _context6.next = 5;
586
+ _context5.next = 5;
715
587
  return resourceOverviewProps === null || resourceOverviewProps === void 0 ? void 0 : resourceOverviewProps.getData({
716
588
  id: id
717
589
  });
718
590
 
719
591
  case 5:
720
- _yield$resourceOvervi2 = _context6.sent;
721
- baseInfos = _yield$resourceOvervi2.baseInfos;
592
+ _yield$resourceOvervi = _context5.sent;
593
+ baseInfos = _yield$resourceOvervi.baseInfos;
722
594
 
723
595
  if (!baseInfos) {
724
- _context6.next = 9;
596
+ _context5.next = 9;
725
597
  break;
726
598
  }
727
599
 
728
- return _context6.abrupt("return", baseInfos);
600
+ return _context5.abrupt("return", baseInfos);
729
601
 
730
602
  case 9:
731
- _context6.next = 11;
603
+ _context5.next = 11;
732
604
  return service.commonQueryCiData({
733
605
  condition: "id('" + id + "')",
734
606
  refAttribute: true,
@@ -741,33 +613,33 @@ export default function ResourceOverview(props) {
741
613
  });
742
614
 
743
615
  case 11:
744
- res = _context6.sent;
616
+ res = _context5.sent;
745
617
  _ref3 = (res === null || res === void 0 ? void 0 : res.data[0]) || {}, attributes = _ref3.attributes;
746
- return _context6.abrupt("return", attributes || {});
618
+ return _context5.abrupt("return", attributes || {});
747
619
 
748
620
  case 14:
749
621
  case "end":
750
- return _context6.stop();
622
+ return _context5.stop();
751
623
  }
752
624
  }
753
- }, _callee6);
625
+ }, _callee5);
754
626
  }));
755
627
  return _getAttribute.apply(this, arguments);
756
628
  }
757
629
 
758
- function metricColChange(_x7) {
630
+ function metricColChange(_x6) {
759
631
  return _metricColChange.apply(this, arguments);
760
632
  }
761
633
 
762
634
  function _metricColChange() {
763
- _metricColChange = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7(col) {
635
+ _metricColChange = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(col) {
764
636
  var _col2, _col3;
765
637
 
766
638
  var codes, endTime, params, _ref4, times, metricList;
767
639
 
768
- return _regeneratorRuntime.wrap(function _callee7$(_context7) {
640
+ return _regeneratorRuntime.wrap(function _callee6$(_context6) {
769
641
  while (1) {
770
- switch (_context7.prev = _context7.next) {
642
+ switch (_context6.prev = _context6.next) {
771
643
  case 0:
772
644
  // console.log('metricColChange col', col);
773
645
  col = (_col2 = col) === null || _col2 === void 0 ? void 0 : _col2.filter(function (item) {
@@ -775,13 +647,13 @@ export default function ResourceOverview(props) {
775
647
  });
776
648
 
777
649
  if ((_col3 = col) !== null && _col3 !== void 0 && _col3.length) {
778
- _context7.next = 4;
650
+ _context6.next = 4;
779
651
  break;
780
652
  }
781
653
 
782
654
  setMetric([]); // Message.error('指标未设置')
783
655
 
784
- return _context7.abrupt("return");
656
+ return _context6.abrupt("return");
785
657
 
786
658
  case 4:
787
659
  codes = col.map(function (item) {
@@ -806,11 +678,11 @@ export default function ResourceOverview(props) {
806
678
  }
807
679
 
808
680
  setMetricInitLoading(true);
809
- _context7.next = 11;
681
+ _context6.next = 11;
810
682
  return service.getMetricList(params);
811
683
 
812
684
  case 11:
813
- metricList = _context7.sent;
685
+ metricList = _context6.sent;
814
686
  rlog.debug('metricColChange', metricList, monitorMetricModels);
815
687
  setMetric(col.map(function (item, key) {
816
688
  return {
@@ -838,10 +710,10 @@ export default function ResourceOverview(props) {
838
710
 
839
711
  case 16:
840
712
  case "end":
841
- return _context7.stop();
713
+ return _context6.stop();
842
714
  }
843
715
  }
844
- }, _callee7);
716
+ }, _callee6);
845
717
  }));
846
718
  return _metricColChange.apply(this, arguments);
847
719
  }
@@ -954,12 +826,13 @@ export default function ResourceOverview(props) {
954
826
  ciAttrAndMetricData: ciAttrAndMetricData
955
827
  },
956
828
  data: metric,
957
- loading: metricInitLoading
829
+ loading: metricInitLoading,
830
+ formatMetricLatestValue: resourceOverviewProps.formatMetricLatestValue
958
831
  })), /*#__PURE__*/React.createElement(EventsCard, {
959
832
  alarmRiskList: alarmRiskList,
960
833
  closeDetailDrawer: onClose,
961
834
  onHandleAlarm: function onHandleAlarm() {
962
- getAlarmRiskData(id);
835
+ refreshAlarmData(id);
963
836
  }
964
837
  }));
965
838
  }
@@ -60,7 +60,8 @@ export default function ResourceOverviewMetric(props) {
60
60
  var topo = props.topo,
61
61
  type = props.type,
62
62
  data = props.data,
63
- loading = props.loading;
63
+ loading = props.loading,
64
+ formatMetricLatestValue = props.formatMetricLatestValue;
64
65
 
65
66
  function formatValue(itemData) {
66
67
  var _list;
@@ -69,7 +70,8 @@ export default function ResourceOverviewMetric(props) {
69
70
  metricItem = itemData.metricItem,
70
71
  list = itemData.list;
71
72
  var format = metricValueFormat({
72
- value: (_list = list[list.length - 1]) === null || _list === void 0 ? void 0 : _list.metricValue,
73
+ // 支持业务拓扑历史时间点指标值处理
74
+ value: formatMetricLatestValue ? formatMetricLatestValue(list) : (_list = list[list.length - 1]) === null || _list === void 0 ? void 0 : _list.metricValue,
73
75
  dataType: metricItem.dataType,
74
76
  dict: topo.dictCache.getDictObject(),
75
77
  unit: metricItem.unit,