update
All checks were successful
Build Multi-Platform Binaries / build-frontend (push) Successful in 34s
Build Multi-Platform Binaries / build-binaries (amd64, darwin, server, false) (push) Successful in 5m6s
Build Multi-Platform Binaries / build-binaries (amd64, linux, client, true) (push) Successful in 1m39s
Build Multi-Platform Binaries / build-binaries (amd64, linux, server, true) (push) Successful in 5m8s
Build Multi-Platform Binaries / build-binaries (amd64, windows, client, true) (push) Successful in 2m45s
Build Multi-Platform Binaries / build-binaries (amd64, windows, server, true) (push) Successful in 5m50s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, client, true) (push) Successful in 2m20s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, server, true) (push) Successful in 4m25s
Build Multi-Platform Binaries / build-binaries (arm64, darwin, server, false) (push) Successful in 5m1s
Build Multi-Platform Binaries / build-binaries (arm64, linux, client, true) (push) Successful in 1m4s
Build Multi-Platform Binaries / build-binaries (arm64, linux, server, true) (push) Successful in 5m16s
Build Multi-Platform Binaries / build-binaries (arm64, windows, server, false) (push) Successful in 5m13s
All checks were successful
Build Multi-Platform Binaries / build-frontend (push) Successful in 34s
Build Multi-Platform Binaries / build-binaries (amd64, darwin, server, false) (push) Successful in 5m6s
Build Multi-Platform Binaries / build-binaries (amd64, linux, client, true) (push) Successful in 1m39s
Build Multi-Platform Binaries / build-binaries (amd64, linux, server, true) (push) Successful in 5m8s
Build Multi-Platform Binaries / build-binaries (amd64, windows, client, true) (push) Successful in 2m45s
Build Multi-Platform Binaries / build-binaries (amd64, windows, server, true) (push) Successful in 5m50s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, client, true) (push) Successful in 2m20s
Build Multi-Platform Binaries / build-binaries (arm, 7, linux, server, true) (push) Successful in 4m25s
Build Multi-Platform Binaries / build-binaries (arm64, darwin, server, false) (push) Successful in 5m1s
Build Multi-Platform Binaries / build-binaries (arm64, linux, client, true) (push) Successful in 1m4s
Build Multi-Platform Binaries / build-binaries (arm64, linux, server, true) (push) Successful in 5m16s
Build Multi-Platform Binaries / build-binaries (arm64, windows, server, false) (push) Successful in 5m13s
This commit is contained in:
@@ -115,11 +115,39 @@ func (h *ClientHandler) Get(c *gin.Context) {
|
||||
|
||||
online, lastPing, remoteAddr := h.app.GetServer().GetClientStatus(clientID)
|
||||
|
||||
// 复制插件列表
|
||||
plugins := make([]db.ClientPlugin, len(client.Plugins))
|
||||
copy(plugins, client.Plugins)
|
||||
|
||||
// 如果客户端在线,获取实时插件运行状态
|
||||
if online {
|
||||
if statusList, err := h.app.GetServer().GetClientPluginStatus(clientID); err == nil {
|
||||
// 创建运行中插件的映射
|
||||
runningPlugins := make(map[string]bool)
|
||||
for _, s := range statusList {
|
||||
runningPlugins[s.PluginName] = s.Running
|
||||
}
|
||||
// 更新插件状态
|
||||
for i := range plugins {
|
||||
if running, ok := runningPlugins[plugins[i].Name]; ok {
|
||||
plugins[i].Running = running
|
||||
} else {
|
||||
plugins[i].Running = false
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// 客户端离线时,所有插件都标记为未运行
|
||||
for i := range plugins {
|
||||
plugins[i].Running = false
|
||||
}
|
||||
}
|
||||
|
||||
resp := dto.ClientResponse{
|
||||
ID: client.ID,
|
||||
Nickname: client.Nickname,
|
||||
Rules: client.Rules,
|
||||
Plugins: client.Plugins,
|
||||
Plugins: plugins,
|
||||
Online: online,
|
||||
LastPing: lastPing,
|
||||
RemoteAddr: remoteAddr,
|
||||
|
||||
Reference in New Issue
Block a user