fix: 优化关系图 节点弹框严重等级逻辑

This commit is contained in:
@changcode
2022-09-26 15:56:03 +08:00
parent 92e2727514
commit a57e483249
2 changed files with 23 additions and 13 deletions

View File

@@ -102,7 +102,7 @@
<template v-if="shipSeverity.length > 0">
<span v-for="ship in shipSeverity" class="ship-severity">
<span class="ship-body-list-security-alert" :class="iconClass(ship)">{{ ship.eventSeverity }}</span>
<span class="ship-body-list-security-length">{{ ship.length }}</span>
<span class="ship-body-list-security-length">{{ ship.totalNumberOfEvents }}</span>
</span>
</template>
<span v-else-if="!loadingAlert && shipSeverity.length <= 0" class="no-recent-alerts"><i style="font-size: 14px;" class="el-icon-success"></i>{{$t('relationShip.noRecentAlerts')}}</span>

View File

@@ -171,20 +171,30 @@ export default {
const performance = get(urlObj.performanceUrl, queryParams)
const security = get(urlObj.securityUrl, queryParams)
Promise.all([performance, security]).then(res => {
const alertEventSeverity = ['critical', 'high', 'medium', 'info', 'low']
// const alertEventSeverity = ['critical', 'high', 'medium', 'info', 'low']
const alertAll = [...res[0].data.result, ...res[1].data.result]
alertEventSeverity.forEach(d => {
const eventArray = alertAll.filter(p => d === p.eventSeverity)
const eventArrayMap = eventArray.map(t => { return { eventSeverity: t.eventSeverity } })
if (eventArrayMap) {
const eventObject = eventArrayMap.find(e => e.eventSeverity === d)
const eventObjectMap = object.keys(eventObject).map(m => {
return {
eventSeverity: eventObject[m],
length: eventArray.length
}
// alertEventSeverity.forEach(d => {
// const eventArray = alertAll.filter(p => d === p.eventSeverity)
// const eventArrayMap = eventArray.map(t => { return { eventSeverity: t.eventSeverity } })
// if (eventArrayMap) {
// const eventObject = eventArrayMap.find(e => e.eventSeverity === d)
// const eventObjectMap = object.keys(eventObject).map(m => {
// return {
// eventSeverity: eventObject[m],
// length: eventArray.length
// }
// })
// this.shipSeverity.push(...eventObjectMap)
// }
// })
alertAll.forEach(t => {
const hit = this.shipSeverity.find(e => e.eventSeverity === t.eventSeverity)
if (hit) {
this.shipSeverity.forEach(d => {
d.totalNumberOfEvents++
})
this.shipSeverity.push(...eventObjectMap)
} else {
this.shipSeverity.push({ eventSeverity: t.eventSeverity, totalNumberOfEvents: 1 })
}
})
this.loadingAlert = false