change index

pull/4271/head
handsomewu 2024-11-14 19:36:57 +08:00
parent f737f07900
commit 923ec75bc5
1 changed files with 30 additions and 45 deletions

View File

@ -1,22 +1,16 @@
<template>
<div class="dashboard-editor-container">
me
<el-image
style="width: 100%; height: 100%"
:src="require('@/assets/custom-theme/topology.png')"
fit="fill"
/>
<el-image style="width: 100%; height: 100%" :src="require('@/assets/custom-theme/topology.png')" fit="fill" />
<el-table :data="tableData" border style="width: 100%">
<el-table-column prop="date" label="所属集群" width="180" />
<el-table-column prop="name" label="Node 名称" width="180" />
<el-table-column prop="cluster" label="所属集群" width="150" />
<el-table-column prop="name" label="Node 名称" width="150" />
<el-table-column prop="address" label="Node IP" />
<el-table-column prop="role" label="Role" />
<el-table-column prop="status" label="状态">
<el-table-column prop="uuid" label="算力统一标识" />
<el-table-column prop="status" label="状态" width="100">
<template slot-scope="scope">
<el-tag
:type="scope.row.status === 'Ready' ? 'success' : 'danger'"
disable-transitions
>{{ scope.row.status }}</el-tag>
<el-tag :type="scope.row.status === 'Ready' ? 'success' : 'danger'" disable-transitions>{{ scope.row.status
}}</el-tag>
</template>
</el-table-column>
</el-table>
@ -46,39 +40,30 @@ export default {
})
.then(response => response.json())
.then(data => {
// json
const parseClusterData = (clusterString, clusterName) => {
const rows = clusterString.trim().split('\n').slice(1)
return rows.map(row => {
const columns = row.trim().split(/\s{2,}/)
return {
cluster: clusterName,
name: columns[0],
status: columns[1],
role: columns[2],
age: columns[3],
version: columns[4],
ip: columns[5],
externalIp: columns[6] || '<none>',
osImage: columns[7],
kernelVersion: columns[8],
containerRuntime: columns[9]
}
})
}
const clusterAData = parseClusterData(data.cluster_a, 'Cluster A')
const clusterBData = parseClusterData(data.cluster_b, 'Cluster B')
const combinedData = [...clusterAData, ...clusterBData]
console.log('looking handsome', combinedData)
// json
console.log('looking handsome', data)
//
this.tableData = combinedData.map(node => ({
date: node.cluster, // cluster
name: node.name, // name
address: node.ip, // ip IP
role: node.role, // role
status: node.status // status
}))
//
const tableData = []
// cluster_a cluster_b
Object.keys(data).forEach(cluster => {
data[cluster].forEach(node => {
console.log(cluster)
//
tableData.push({
cluster: cluster, //
name: node.NAME, //
address: node.ADDRESS, // IP
role: node.ROLES, //
status: node.STATUS, //
uuid: node.UUID.replace('uuid=', '') // UUID "uuid="
})
})
})
//
this.tableData = tableData
})
.catch(error => console.error('Error fetching table data:', error))
}