From 1dc256452e2b14ca17171e05cff99317b315ebaf Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Tue, 30 Dec 2025 11:01:05 +0800 Subject: [PATCH] update --- apps/web-antd/.env.development | 2 + apps/web-antd/.vscode/settings.json | 3 +- apps/web-antd/src/api/core/log.ts | 5 +- apps/web-antd/src/api/core/server.ts | 4 + apps/web-antd/src/api/core/user.ts | 1 + apps/web-antd/src/model/type.ts | 1 + apps/web-antd/src/store/util.ts | 52 +++++ .../views/dashboard/serverList/appList.vue | 74 +++++-- .../views/dashboard/serverList/editServer.vue | 188 ++++++++++++++++++ .../src/views/dashboard/serverList/index.vue | 39 ++-- .../src/views/language/language/language.vue | 23 ++- .../src/views/userlog/userlist/user.vue | 6 +- .../src/views/userlog/userlist/userlist.vue | 27 +-- 13 files changed, 363 insertions(+), 62 deletions(-) create mode 100644 apps/web-antd/src/store/util.ts create mode 100644 apps/web-antd/src/views/dashboard/serverList/editServer.vue diff --git a/apps/web-antd/.env.development b/apps/web-antd/.env.development index c138f48..15ff81c 100644 --- a/apps/web-antd/.env.development +++ b/apps/web-antd/.env.development @@ -14,3 +14,5 @@ VITE_DEVTOOLS=false # 是否注入全局loading VITE_INJECT_APP_LOADING=true + +VITE_PUBLIC_SRC_PATH=../../public diff --git a/apps/web-antd/.vscode/settings.json b/apps/web-antd/.vscode/settings.json index 99205dd..0a8ba92 100644 --- a/apps/web-antd/.vscode/settings.json +++ b/apps/web-antd/.vscode/settings.json @@ -1,3 +1,4 @@ { - "workbench.colorTheme": "GitHub Light Colorblind (Beta)" + "workbench.colorTheme":"One Dark Pro", + "editor.fontSize": 14 } \ No newline at end of file diff --git a/apps/web-antd/src/api/core/log.ts b/apps/web-antd/src/api/core/log.ts index e82ea7c..4e20685 100644 --- a/apps/web-antd/src/api/core/log.ts +++ b/apps/web-antd/src/api/core/log.ts @@ -13,9 +13,10 @@ export interface UserLogAssetParam { StartTime?: number; EndTime?: number; ItemId?: number; - PageSize: number; - CurrentPage: number; + PageSize?: number; + CurrentPage?: number; AppId?: number; + Node?: number; } export interface UserLogOrder { Id: number; diff --git a/apps/web-antd/src/api/core/server.ts b/apps/web-antd/src/api/core/server.ts index 48e6e48..757a106 100644 --- a/apps/web-antd/src/api/core/server.ts +++ b/apps/web-antd/src/api/core/server.ts @@ -24,6 +24,10 @@ export interface ServerData { PlayerNum?: number; Loading?:boolean; Reload?:boolean; + CpuUsage?: number; + MemUsage?: number; + ClientVersion?: string; + Tags?: string[]; } export interface NodeData{ diff --git a/apps/web-antd/src/api/core/user.ts b/apps/web-antd/src/api/core/user.ts index ada50a0..7b80f42 100644 --- a/apps/web-antd/src/api/core/user.ts +++ b/apps/web-antd/src/api/core/user.ts @@ -15,6 +15,7 @@ export interface UserListParam { currentPage: number; StartTime?: number; EndTime?: number; + Nickname?: string; } diff --git a/apps/web-antd/src/model/type.ts b/apps/web-antd/src/model/type.ts index 505e529..93f21c2 100644 --- a/apps/web-antd/src/model/type.ts +++ b/apps/web-antd/src/model/type.ts @@ -52,6 +52,7 @@ export interface languageType { en_US: string; zh_CN: string; pt_BR: string; + url?: string; } diff --git a/apps/web-antd/src/store/util.ts b/apps/web-antd/src/store/util.ts new file mode 100644 index 0000000..0f763cb --- /dev/null +++ b/apps/web-antd/src/store/util.ts @@ -0,0 +1,52 @@ +import MergeData from "./MergeData.json"; + +export function getImageUrl(key: string): string { + if (!key) return ""; + + // 1. 判断 key 是否为 UI_MergeData_ 格式,取出数字;同时支持直接传入数字字符串或数字 + let id: string | null = null; + const m = /^UI_MergeData_(\d+)$/.exec(key); + if (m) id = m[1] ?? ""; + else if (/^\d+$/.test(key)) id = key; + else id = String(key); + + // 2. 从 MergeData 中取出 id 对应的 Icon + const item = (MergeData as any)[id]; + const icon = item && typeof item.Icon === 'string' ? item.Icon : ''; + if (!icon) return ''; + + // 3. 在 Node 环境中遍历指定文件夹寻找包含 Icon 名称的文件并返回绝对路径 + // 如果不在 Node 环境(例如浏览器),则回退返回 icon 字符串 + try { + // @ts-ignore + const fs = require('fs'); + // @ts-ignore + const path = require('path'); + const SEARCH_DIR = 'D:\\Github\\AplusB_Pet_nation\\Assets\\GameMain\\UI\\UISprites\\MergeObj'; + + function findFile(dir: string): string | null { + let entries: string[] = []; + try { entries = fs.readdirSync(dir); } catch (e) { return null; } + for (const name of entries) { + const full = path.join(dir, name); + let stat; + try { stat = fs.statSync(full); } catch (e) { continue; } + if (stat.isDirectory()) { + const res = findFile(full); + if (res) return res; + } else { + if (name.indexOf(icon) !== -1) return path.resolve(full); + } + } + return null; + } + + const found = findFile(SEARCH_DIR); + if (found) return found; + } catch (e) { + // 非 Node 环境或访问失败,忽略并回退 + } + + // 回退:返回 icon 名称(供前端拼接资源路径使用) + return icon; +} \ No newline at end of file diff --git a/apps/web-antd/src/views/dashboard/serverList/appList.vue b/apps/web-antd/src/views/dashboard/serverList/appList.vue index ad62756..dedcf5a 100644 --- a/apps/web-antd/src/views/dashboard/serverList/appList.vue +++ b/apps/web-antd/src/views/dashboard/serverList/appList.vue @@ -1,10 +1,10 @@ + + \ No newline at end of file diff --git a/apps/web-antd/src/views/dashboard/serverList/index.vue b/apps/web-antd/src/views/dashboard/serverList/index.vue index 4f2d747..25c60ab 100644 --- a/apps/web-antd/src/views/dashboard/serverList/index.vue +++ b/apps/web-antd/src/views/dashboard/serverList/index.vue @@ -74,6 +74,7 @@ const [addServerM, addServerApi] = useVbenModal({ }, }); + const serverList = [ { AppId: 1, @@ -135,6 +136,8 @@ async function addServer() { + + async function update() { reload.value = true; const Value = await BaseFormApi.getValues(); @@ -163,64 +166,64 @@ async function update() { diff --git a/apps/web-antd/src/views/language/language/language.vue b/apps/web-antd/src/views/language/language/language.vue index dbe48c2..bd5a95c 100644 --- a/apps/web-antd/src/views/language/language/language.vue +++ b/apps/web-antd/src/views/language/language/language.vue @@ -1,6 +1,6 @@