mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-11-10 17:30:29 +08:00
数据看板增加事件列表(商业版)
This commit is contained in:
37
web/public/js/components/common/node-role-name.js
Normal file
37
web/public/js/components/common/node-role-name.js
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
// 节点角色名称
|
||||||
|
Vue.component("node-role-name", {
|
||||||
|
props: ["v-role"],
|
||||||
|
data: function () {
|
||||||
|
let roleName = ""
|
||||||
|
switch (this.vRole) {
|
||||||
|
case "node":
|
||||||
|
roleName = "边缘节点"
|
||||||
|
break
|
||||||
|
case "monitor":
|
||||||
|
roleName = "监控节点"
|
||||||
|
break
|
||||||
|
case "api":
|
||||||
|
roleName = "API节点"
|
||||||
|
break
|
||||||
|
case "user":
|
||||||
|
roleName = "用户平台"
|
||||||
|
break
|
||||||
|
case "admin":
|
||||||
|
roleName = "管理平台"
|
||||||
|
break
|
||||||
|
case "database":
|
||||||
|
roleName = "数据库节点"
|
||||||
|
break
|
||||||
|
case "dns":
|
||||||
|
roleName = "DNS节点"
|
||||||
|
break
|
||||||
|
case "report":
|
||||||
|
roleName = "区域监控终端"
|
||||||
|
break
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
roleName: roleName
|
||||||
|
}
|
||||||
|
},
|
||||||
|
template: `<span>{{roleName}}</span>`
|
||||||
|
})
|
||||||
@@ -3,4 +3,5 @@
|
|||||||
<menu-item href="/dashboard/boards/waf" code="waf">WAF</menu-item>
|
<menu-item href="/dashboard/boards/waf" code="waf">WAF</menu-item>
|
||||||
<menu-item href="/dashboard/boards/dns" code="dns">DNS</menu-item>
|
<menu-item href="/dashboard/boards/dns" code="dns">DNS</menu-item>
|
||||||
<menu-item href="/dashboard/boards/user" code="user">用户</menu-item>
|
<menu-item href="/dashboard/boards/user" code="user">用户</menu-item>
|
||||||
|
<menu-item href="/dashboard/boards/events" code="event">事件<span :class="{red: countEvents > 0}">({{countEvents}})</span></menu-item>
|
||||||
</first-menu>
|
</first-menu>
|
||||||
66
web/views/@default/dashboard/boards/events.html
Normal file
66
web/views/@default/dashboard/boards/events.html
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
{$layout}
|
||||||
|
{$template "menu"}
|
||||||
|
|
||||||
|
<p class="comment" v-if="logs.length == 0">暂时还没有事件。</p>
|
||||||
|
|
||||||
|
<second-menu v-if="logs.length > 0">
|
||||||
|
<a href="" class="item" @click.prevent="updatePageRead()">[本页已读]</a>
|
||||||
|
</second-menu>
|
||||||
|
|
||||||
|
<table class="ui table selectable celled" v-if="logs.length > 0">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th nowrap="">节点类型</th>
|
||||||
|
<th nowrap="">集群</th>
|
||||||
|
<th nowrap="">节点</th>
|
||||||
|
<th>信息</th>
|
||||||
|
<th class="one op">操作</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tr v-for="log in logs">
|
||||||
|
<td>
|
||||||
|
<node-role-name :v-role="log.role"></node-role-name>
|
||||||
|
</td>
|
||||||
|
<td nowrap="">
|
||||||
|
<span v-if="log.role == 'node'">
|
||||||
|
<link-icon :href="'/clusters/cluster?clusterId=' + log.node.cluster.id">{{log.node.cluster.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-else-if="log.role == 'dns'">
|
||||||
|
<link-icon :href="'/ns/clusters/cluster?clusterId=' + log.node.cluster.id">{{log.node.cluster.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-else class="disabled">-</span>
|
||||||
|
</td>
|
||||||
|
<td nowrap="">
|
||||||
|
<span v-if="log.role == 'node'">
|
||||||
|
<link-icon :href="'/clusters/cluster/node?clusterId=' + log.node.cluster.id + '&nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'api'">
|
||||||
|
<link-icon :href="'/api/node?nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'dns'">
|
||||||
|
<link-icon :href="'/ns/clusters/cluster/node?clusterId=' + log.node.cluster.id + '&nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'database'">
|
||||||
|
<link-icon :href="'/db/node?nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'admin'">管理平台</span>
|
||||||
|
<span v-if="log.role == 'user'">
|
||||||
|
<link-icon :href="'/settings/userNodes/node?nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'monitor'">
|
||||||
|
<link-icon :href="'/settings/monitorNodes/node?nodeId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
<span v-if="log.role == 'report'">
|
||||||
|
<link-icon :href="'/clusters/monitors/reporters/reporter?reporterId=' + log.node.id">{{log.node.name}}</link-icon>
|
||||||
|
</span>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<node-log-row :v-log="log" :v-keyword="keyword"></node-log-row>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<a href="" @click.prevent="updateRead(log.id)">已读</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<div class="page" v-html="page"></div>
|
||||||
24
web/views/@default/dashboard/boards/events.js
Normal file
24
web/views/@default/dashboard/boards/events.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
Tea.context(function () {
|
||||||
|
this.updateRead = function (logId) {
|
||||||
|
this.$post(".readEvents")
|
||||||
|
.params({
|
||||||
|
logIds: [logId]
|
||||||
|
})
|
||||||
|
.success(function () {
|
||||||
|
teaweb.reload()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
this.updatePageRead = function () {
|
||||||
|
let logIds = this.logs.map(function (v) {
|
||||||
|
return v.id
|
||||||
|
})
|
||||||
|
this.$post(".readEvents")
|
||||||
|
.params({
|
||||||
|
logIds: logIds
|
||||||
|
})
|
||||||
|
.success(function () {
|
||||||
|
teaweb.reload()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user