优化系统消息交互

This commit is contained in:
刘祥超
2021-02-03 11:18:41 +08:00
parent b2feb452e0
commit ed302370e9
4 changed files with 17 additions and 10 deletions

View File

@@ -35,11 +35,11 @@ Vue.component("message-row", {
<strong>{{message.datetime}}</strong> <strong>{{message.datetime}}</strong>
<span v-if="message.cluster != null && message.cluster.id != null"> <span v-if="message.cluster != null && message.cluster.id != null">
<span> | </span> <span> | </span>
<a :href="'/clusters/cluster?clusterId=' + message.cluster.id">集群:{{message.cluster.name}}</a> <a :href="'/clusters/cluster?clusterId=' + message.cluster.id" target="_top">集群:{{message.cluster.name}}</a>
</span> </span>
<span v-if="message.node != null && message.node.id != null"> <span v-if="message.node != null && message.node.id != null">
<span> | </span> <span> | </span>
<a :href="'/clusters/cluster/node?clusterId=' + message.cluster.id + '&nodeId=' + message.node.id">节点:{{message.node.name}}</a> <a :href="'/clusters/cluster/node?clusterId=' + message.cluster.id + '&nodeId=' + message.node.id" target="_top">节点:{{message.node.name}}</a>
</span> </span>
<a href="" style="position: absolute; right: 1em" @click.prevent="readMessage(message.id)" title="标为已读"><i class="icon check"></i></a> <a href="" style="position: absolute; right: 1em" @click.prevent="readMessage(message.id)" title="标为已读"><i class="icon check"></i></a>
</td> </td>
@@ -50,25 +50,25 @@ Vue.component("message-row", {
<!-- 健康检查 --> <!-- 健康检查 -->
<div v-if="message.type == 'HealthCheckFailed'" style="margin-top: 0.8em"> <div v-if="message.type == 'HealthCheckFailed'" style="margin-top: 0.8em">
<a :href="'/clusters/cluster/node?clusterId=' + message.cluster.id + '&nodeId=' + param.node.id" v-for="param in params" class="ui label small basic" style="margin-bottom: 0.5em">{{param.node.name}}: {{param.error}}</a> <a :href="'/clusters/cluster/node?clusterId=' + message.cluster.id + '&nodeId=' + param.node.id" v-for="param in params" class="ui label small basic" style="margin-bottom: 0.5em" target="_top">{{param.node.name}}: {{param.error}}</a>
</div> </div>
<!-- 集群DNS设置 --> <!-- 集群DNS设置 -->
<div v-if="message.type == 'ClusterDNSSyncFailed'" style="margin-top: 0.8em"> <div v-if="message.type == 'ClusterDNSSyncFailed'" style="margin-top: 0.8em">
<a :href="'/dns/clusters/cluster?clusterId=' + message.cluster.id">查看问题 &raquo;</a> <a :href="'/dns/clusters/cluster?clusterId=' + message.cluster.id" target="_top">查看问题 &raquo;</a>
</div> </div>
<!-- 证书即将过期 --> <!-- 证书即将过期 -->
<div v-if="message.type == 'SSLCertExpiring'" style="margin-top: 0.8em"> <div v-if="message.type == 'SSLCertExpiring'" style="margin-top: 0.8em">
<a href="" @click.prevent="viewCert(params.certId)">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0">查看任务&raquo;</a> <a href="" @click.prevent="viewCert(params.certId)" target="_top">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0" target="_top">查看任务&raquo;</a>
</div> </div>
<!-- 证书续期成功 --> <!-- 证书续期成功 -->
<div v-if="message.type == 'SSLCertACMETaskSuccess'" style="margin-top: 0.8em"> <div v-if="message.type == 'SSLCertACMETaskSuccess'" style="margin-top: 0.8em">
<a href="" @click.prevent="viewCert(params.certId)">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0">查看任务&raquo;</a> <a href="" @click.prevent="viewCert(params.certId)" target="_top">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0" target="_top">查看任务&raquo;</a>
</div> </div>
<div v-if="message.type == 'SSLCertACMETaskFailed'" style="margin-top: 0.8em"> <div v-if="message.type == 'SSLCertACMETaskFailed'" style="margin-top: 0.8em">
<a href="" @click.prevent="viewCert(params.certId)">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0">查看任务&raquo;</a> <a href="" @click.prevent="viewCert(params.certId)" target="_top">查看证书</a> &nbsp;|&nbsp; <a :href="'/servers/certs/acme'" v-if="params != null && params.acmeTaskId > 0" target="_top">查看任务&raquo;</a>
</div> </div>
</td> </td>
</tr> </tr>

View File

@@ -42,8 +42,8 @@
</a> </a>
<!-- 消息 --> <!-- 消息 -->
<a href="/messages" class="item" :class="{active:teaMenu == 'message'}"> <a href="" class="item" :class="{active:teaMenu == 'message'}" @click.prevent="showMessages()">
<span v-if="globalMessageBadge > 0" class="blink"><i class="icon bell"></i>消息({{globalMessageBadge}}) </span> <span v-if="globalMessageBadge > 0" class="blink hover-span"><i class="icon bell"></i><span>消息({{globalMessageBadge}}) </span></span>
<span v-if="globalMessageBadge == 0" class="hover-span"><i class="icon bell disabled"></i><span class="disabled">消息(0)</span></span> <span v-if="globalMessageBadge == 0" class="hover-span"><i class="icon bell disabled"></i><span class="disabled">消息(0)</span></span>
</a> </a>

View File

@@ -59,6 +59,13 @@ Tea.context(function () {
}) })
} }
this.showMessages = function () {
teaweb.popup("/messages", {
height: "24em",
width: "50em"
})
}
/** /**
* 底部伸展框 * 底部伸展框
*/ */

View File

@@ -1,4 +1,4 @@
{$layout} {$layout "layout_popup"}
<first-menu v-if="messages.length > 0"> <first-menu v-if="messages.length > 0">
<a href="" class="item" @click.prevent="updatePageRead()">[当前页已读]</a> <a href="" class="item" @click.prevent="updatePageRead()">[当前页已读]</a>