修改VPN页面

This commit is contained in:
lj124 2026-04-18 13:25:53 +08:00
parent 91d6e0f3d1
commit b51f41d9ff
2 changed files with 15 additions and 4 deletions

View File

@ -239,7 +239,9 @@
class="router-item"
>
<el-input v-model="router.ip" placeholder="IP地址 (如: 192.168.1.1)" style="flex: 1;" />
<el-input-number v-model="router.prefix" :min="1" :max="32" placeholder="前缀长度" style="flex: 1; margin-left: 10px;" />
<el-input-number v-model="router.prefix" :min="0" :max="32" placeholder="前缀长度" style="flex: 1; margin-left: 10px;" />
<!-- metric -->
<el-input-number v-model="router.metric" :min="0" :max="1000000" placeholder="metric" style="flex: 1; margin-left: 10px;" />
<el-button type="danger" size="small" text @click="removeRouter('ipv4', index)" style="margin-left: 10px;">
删除
</el-button>
@ -260,7 +262,9 @@
class="router-item"
>
<el-input v-model="router.ip" placeholder="IP地址 (如: 2001:db8::1)" style="flex: 1;" />
<el-input-number v-model="router.prefix" :min="1" :max="128" placeholder="前缀长度" style="flex: 1; margin-left: 10px;" />
<el-input-number v-model="router.prefix" :min="0" :max="128" placeholder="前缀长度" style="flex: 1; margin-left: 10px;" />
<!-- metric -->
<el-input-number v-model="router.metric" :min="0" :max="1000000" placeholder="metric" style="flex: 1; margin-left: 10px;" />
<el-button type="danger" size="small" text @click="removeRouter('ipv6', index)" style="margin-left: 10px;">
删除
</el-button>
@ -339,6 +343,7 @@ interface VPNRouter {
type: number;
ip: string;
prefix: number;
metric: number;
}
const serverList = ref<ServerConfig[]>([]);
@ -542,7 +547,8 @@ const addRouter = (type: 'ipv4' | 'ipv6') => {
const router: VPNRouter = {
type: type === 'ipv4' ? 4 : 6,
ip: '',
prefix: type === 'ipv4' ? 24 : 64
prefix: type === 'ipv4' ? 24 : 64,
metric: 35
};
if (!selectedServer.value.ipv4_router) {

View File

@ -56,7 +56,7 @@
<el-table-column prop="private_ipv4" label="内网IPv4" width="140" />
<el-table-column prop="uuid" label="会话ID" min-width="200" show-overflow-tooltip />
<el-table-column prop="host_info.hostname" label="主机名" min-width="200" show-overflow-tooltip />
<el-table-column prop="host_info.os" label="操作系统" min-width="200" show-overflow-tooltip>
<el-table-column prop="host_info.os" label="操作系统" min-width="120" show-overflow-tooltip>
<!-- tags 操作系统, windows 蓝色 linux 绿色macos 黄色; android 红色; ios 紫色; 其他 橙色 -->
<template #default="scope">
<el-tag v-if="scope.row.host_info.os === 'windows'" type="primary" size="small">Windows</el-tag>
@ -386,6 +386,9 @@ const getOnlineUsers = async (serverId: string) => {
if (response["code"] === 0) {
if(response.data){
// host_info
//key id
response.data.sort((a, b) => a.id - b.id);
onlineUsers.value = response.data.map((user: any) => ({
...user,
host_info: user.host_info || createEmptyHostInfo()
@ -414,6 +417,8 @@ const getOnlineUsers2 = async (serverId: string) => {
if (response["code"] === 0) {
if(response.data){
// host_info
//key id
response.data.sort((a, b) => a.id - b.id);
onlineUsers.value = response.data.map((user: any) => ({
...user,
host_info: user.host_info || createEmptyHostInfo()