diff --git a/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss b/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss index 89cac95b9..c1d03a12a 100644 --- a/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss +++ b/nezha-fronted/src/assets/css/components/common/bottomBox/bottomBox.scss @@ -254,11 +254,15 @@ padding-left: 8px; } -#processBottomTab,#networkBottomTab{ +#processBottomTab, +#networkBottomTab, +#vsysBottomTab { .sub-container .nz-table-list { height: 100%; } - #assetProcessTable,#assetNetworkTable{ + #assetProcessTable, + #assetNetworkTable, + #assetVsysTable { height: calc(100% - 14px) !important; } } diff --git a/nezha-fronted/src/components/common/bottomBox/bottomBox.vue b/nezha-fronted/src/components/common/bottomBox/bottomBox.vue index 22c8164f6..0a5cb783c 100644 --- a/nezha-fronted/src/components/common/bottomBox/bottomBox.vue +++ b/nezha-fronted/src/components/common/bottomBox/bottomBox.vue @@ -45,6 +45,7 @@ + @@ -84,6 +85,7 @@ import issueTab from './tabs/issueTab' import alertRuleEvalLog from './tabs/alertRuleEvalLog' import assetSubTab from './tabs/assetSubTab' import commentsBottomTab from './tabs/commentsBottomTab' +import vsysBottomTab from './tabs/vsysBottomTab' import endpointQuery from './tabs/endpointQuery' import endpointTab from './tabs/endpointTab' import endpointTabNew from './tabs/endpointTabNew' @@ -129,7 +131,8 @@ export default { IpDetails, recordRuleEvalLog, issueTab, - commentsBottomTab + commentsBottomTab, + vsysBottomTab }, props: { isFullScreen: Boolean, // 是否全屏 @@ -255,6 +258,7 @@ export default { assetTabs () { const hasSub = this.obj && this.obj.childrenNum const hasProcess = this.obj && this.obj.clientState == '1' + const hasVays = this.obj && this.obj.tsgAppliance == '1' const tabs = [ { prop: 'panelTab', name: this.$t('overall.dashboard') }, { prop: 'alertMessageTab', name: this.$t('overall.alert') }, @@ -268,6 +272,9 @@ export default { tabs.push({ prop: 'process', name: this.$t('overall.process') }, { prop: 'network', name: this.$t('overall.network') }) } tabs.push({ prop: 'comments', name: this.$t('overall.comments') }) + if (hasVays) { + tabs.push({ prop: 'vsys', name: this.$t('asset.vsys') }) + } return tabs }, endpointTabs () { diff --git a/nezha-fronted/src/components/common/bottomBox/tabs/vsysBottomTab.vue b/nezha-fronted/src/components/common/bottomBox/tabs/vsysBottomTab.vue new file mode 100644 index 000000000..cb37e74ac --- /dev/null +++ b/nezha-fronted/src/components/common/bottomBox/tabs/vsysBottomTab.vue @@ -0,0 +1,89 @@ + + + {{obj.name}} + + + + + + + diff --git a/nezha-fronted/src/components/common/mixin/routerPathParams.js b/nezha-fronted/src/components/common/mixin/routerPathParams.js index 2f10923ef..882e2ccbe 100644 --- a/nezha-fronted/src/components/common/mixin/routerPathParams.js +++ b/nezha-fronted/src/components/common/mixin/routerPathParams.js @@ -87,7 +87,8 @@ export default { name: this.bottomBox.object.name, configs: this.bottomBox.object.configs ? this.bottomBox.object.configs.map(item => { return { type: item.type, enable: item.enable } }) : '', childrenNum: this.bottomBox.object.childrenNum || '', - clientState: this.bottomBox.object.clientState || '' + clientState: this.bottomBox.object.clientState || '', + tsgAppliance: this.bottomBox.object.model.tsgAppliance || '' }) this.$router.replace({ path: path, query: params }).catch(err => {}) } else if (from === 'nzDetailList' && this.detailViewRightObj) { @@ -97,7 +98,8 @@ export default { name: this.detailViewRightObj.name, configs: this.detailViewRightObj.configs ? this.detailViewRightObj.configs.map(item => { return { type: item.type, enable: item.enable } }) : '', childrenNum: this.detailViewRightObj.childrenNum || '', - clientState: this.detailViewRightObj.clientState || '' + clientState: this.detailViewRightObj.clientState || '', + tsgAppliance: this.detailViewRightObj.model.tsgAppliance || '' }) this.$router.replace({ path: path, query: params }).catch(err => {}) } else if (from === 'bottomBox' && this.targetTab) { diff --git a/nezha-fronted/src/components/common/table/asset/assetVsysTable.vue b/nezha-fronted/src/components/common/table/asset/assetVsysTable.vue new file mode 100644 index 000000000..0c03f81c5 --- /dev/null +++ b/nezha-fronted/src/components/common/table/asset/assetVsysTable.vue @@ -0,0 +1,90 @@ + + {queryMessage(row)}" + > + + + {{item.label}} + + + + + {{scope.row[item.prop] ? utcTimeToTimezoneStr(scope.row[item.prop]) : '-'}} + + + {{$t('overall.result.success')}} + {{$t('overall.result.failed')}} + + {{scope.row[item.prop]}} + - + + + + + + + + No results found + + + + + + + +