diff --git a/nezha-fronted/src/components/common/detailView/list/endpoint/endpointDetail.vue b/nezha-fronted/src/components/common/detailView/list/endpoint/endpointDetail.vue new file mode 100644 index 000000000..3d7123ce8 --- /dev/null +++ b/nezha-fronted/src/components/common/detailView/list/endpoint/endpointDetail.vue @@ -0,0 +1,221 @@ + + + + + diff --git a/nezha-fronted/src/components/common/detailView/view/detailViewRight.vue b/nezha-fronted/src/components/common/detailView/view/detailViewRight.vue index 979626d42..80739c2e2 100644 --- a/nezha-fronted/src/components/common/detailView/view/detailViewRight.vue +++ b/nezha-fronted/src/components/common/detailView/view/detailViewRight.vue @@ -103,6 +103,8 @@ export default { handler (n) { if (n === fromRoute.asset) { this.targetTab = 'panelTab' + } else if (n === fromRoute.endpoint) { + this.targetTab = 'panelTab' } } }, diff --git a/nezha-fronted/src/components/common/mixin/detailViewMixin.js b/nezha-fronted/src/components/common/mixin/detailViewMixin.js index 778069564..6ddadace0 100644 --- a/nezha-fronted/src/components/common/mixin/detailViewMixin.js +++ b/nezha-fronted/src/components/common/mixin/detailViewMixin.js @@ -22,41 +22,14 @@ export default { let dataList = '' localStorage.setItem('detail-view-' + this.tableId, this.detailType) if (this.detailType === 'view') { - // modelIdsDetail dataList = 'detailList' - this.selectValue.modelIdsDetail = [] - this.selectValue.modelIds.forEach(modelId => { - this.titleSearchList.model.children.forEach(model => { - const brand = model.children.find(children => modelId == children.id) - if (brand) { - this.selectValue.modelIdsDetail.push(brand.brandId + '-' + modelId) - } - }) - }) - this.selectValue.fieldsDetail = [] - if (this.selectValue.fields) { - const obj = JSON.parse(this.selectValue.fields) - Object.keys(obj).forEach(key => { - obj[key].forEach(item => { - this.selectValue.fieldsDetail.push(key + '-' + item) - }) - }) + if (this.from === this.fromRoute.asset) { + this.setAsset(true) } } else { dataList = 'dataList' - const obj = {} - this.selectValue.modelIds = this.selectValue.modelIdsDetail.map(item => item.split('-')[1]) - this.selectValue.fieldsDetail.forEach(item => { - const arr = item.split('-') - if (obj[arr[0]]) { - obj[arr[0]].push(arr[1]) - } else { - obj[arr[0]] = [arr[1]] - } - }) - this.selectValue.fields = JSON.stringify(obj) - if (this.selectValue.fields === '{}') { - this.selectValue.fields = '' + if (this.from === this.fromRoute.asset) { + this.setAsset(false) } } setTimeout(() => { @@ -99,6 +72,43 @@ export default { this.orderBy = '-' + order } this.getTableData() + }, + setAsset (flag) { + if (flag) { + this.selectValue.modelIdsDetail = [] + this.selectValue.modelIds.forEach(modelId => { + this.titleSearchList.model.children.forEach(model => { + const brand = model.children.find(children => modelId == children.id) + if (brand) { + this.selectValue.modelIdsDetail.push(brand.brandId + '-' + modelId) + } + }) + }) + this.selectValue.fieldsDetail = [] + if (this.selectValue.fields) { + const obj = JSON.parse(this.selectValue.fields) + Object.keys(obj).forEach(key => { + obj[key].forEach(item => { + this.selectValue.fieldsDetail.push(key + '-' + item) + }) + }) + } + } else { + const obj = {} + this.selectValue.modelIds = this.selectValue.modelIdsDetail.map(item => item.split('-')[1]) + this.selectValue.fieldsDetail.forEach(item => { + const arr = item.split('-') + if (obj[arr[0]]) { + obj[arr[0]].push(arr[1]) + } else { + obj[arr[0]] = [arr[1]] + } + }) + this.selectValue.fields = JSON.stringify(obj) + if (this.selectValue.fields === '{}') { + this.selectValue.fields = '' + } + } } } } diff --git a/nezha-fronted/src/components/page/monitor/endpoint/endpointList.vue b/nezha-fronted/src/components/page/monitor/endpoint/endpointList.vue index f8e5690e9..f756bfdea 100644 --- a/nezha-fronted/src/components/page/monitor/endpoint/endpointList.vue +++ b/nezha-fronted/src/components/page/monitor/endpoint/endpointList.vue @@ -1,7 +1,78 @@