Compare commits
2 Commits
8020d52adc
...
52e6977ced
| Author | SHA1 | Date |
|---|---|---|
|
|
52e6977ced | |
|
|
cef070df10 |
|
|
@ -477,6 +477,8 @@ import {
|
|||
MatchVPNPolicyHandler
|
||||
} from '@/api/vpn';
|
||||
|
||||
import { ServerConfig } from '@/types/vpn';
|
||||
|
||||
// 全局协议选项数组
|
||||
const protocolOptions = ref([
|
||||
{ label: '全部协议', value: 0 },
|
||||
|
|
@ -542,32 +544,6 @@ interface VPNPolicy extends VPNPolicyBase {
|
|||
UpdatedAt: string;
|
||||
}
|
||||
|
||||
// 服务器配置接口
|
||||
interface ServerConfig {
|
||||
name: string;
|
||||
server_id: string;
|
||||
server_ip: string;
|
||||
server_ipv6: string;
|
||||
server_ip_type: number;
|
||||
server_info: string;
|
||||
udp_port: number;
|
||||
tcp_port: number;
|
||||
protocol: number;
|
||||
ip_type: number;
|
||||
ipv4_address_pool: string;
|
||||
ipv6_address_pool: string;
|
||||
dns_server: string;
|
||||
tunnel: string;
|
||||
allow_user_id: Array<{id: number}>;
|
||||
encryption: string;
|
||||
hash: string;
|
||||
no_policy_action: number;
|
||||
user_max_device: number;
|
||||
duration_time: number;
|
||||
ipv4_router: Array<{type: number, ip: string, prefix: number}>;
|
||||
ipv6_router: Array<{type: number, ip: string, prefix: number}>;
|
||||
}
|
||||
|
||||
// 响应式数据
|
||||
const serverList = ref<ServerConfig[]>([]);
|
||||
const selectedServer = ref<ServerConfig | null>(null);
|
||||
|
|
@ -662,7 +638,16 @@ const getOnlineServers = async () => {
|
|||
try {
|
||||
const response = await GetVPNServerOnlineListHandler();
|
||||
if (response.data && Array.isArray(response.data)) {
|
||||
onlineServers.value = response.data.map((server: any) => server.server_id);
|
||||
let online_server: ServerConfig[] = [];
|
||||
online_server = response.data;
|
||||
onlineServers.value = [];
|
||||
for(
|
||||
let server of online_server
|
||||
){
|
||||
if(server.vpn_status?.status === 2){
|
||||
onlineServers.value.push(server.server_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取在线服务器状态失败:', error);
|
||||
|
|
|
|||
|
|
@ -286,7 +286,7 @@ import { ref, reactive, onMounted, onUnmounted } from 'vue';
|
|||
import { ElMessage, ElMessageBox } from 'element-plus';
|
||||
import {getAllDefaultUsers} from '@/api/user';
|
||||
import { GetVPNServerConfigHandler, SetVPNServerConfigHandler, DeleteVPNServerHandler, GetVPNAddressPoolHandler, GetVPNTunnelConfigHandler, GetVPNServerOnlineListHandler } from '@/api/vpn';
|
||||
|
||||
import { ServerConfig } from '@/types/vpn';
|
||||
interface UserID {
|
||||
id: number;
|
||||
}
|
||||
|
|
@ -341,31 +341,6 @@ interface VPNRouter {
|
|||
prefix: number;
|
||||
}
|
||||
|
||||
interface ServerConfig {
|
||||
name: string;
|
||||
server_id: string;
|
||||
server_ip: string;
|
||||
server_ipv6: string;
|
||||
server_ip_type: number;
|
||||
server_info: string;
|
||||
udp_port: number;
|
||||
tcp_port: number;
|
||||
protocol: number;
|
||||
ip_type: number;
|
||||
ipv4_address_pool: string;
|
||||
ipv6_address_pool: string;
|
||||
dns_server: string;
|
||||
tunnel: string;
|
||||
allow_user_id: UserID[];
|
||||
encryption: string;
|
||||
hash: string;
|
||||
no_policy_action:number;
|
||||
user_max_device: number;
|
||||
duration_time: number;
|
||||
ipv4_router: VPNRouter[];
|
||||
ipv6_router: VPNRouter[];
|
||||
}
|
||||
|
||||
const serverList = ref<ServerConfig[]>([]);
|
||||
const selectedServer = ref<ServerConfig | null>(null);
|
||||
const addressPools = ref<AddressPoolRequest[]>([]);
|
||||
|
|
@ -412,7 +387,16 @@ const getOnlineServers = async () => {
|
|||
try {
|
||||
const response = await GetVPNServerOnlineListHandler();
|
||||
if (response.data && Array.isArray(response.data)) {
|
||||
onlineServers.value = response.data.map((server: any) => server.server_id);
|
||||
let online_server: ServerConfig[] = [];
|
||||
online_server = response.data;
|
||||
onlineServers.value = [];
|
||||
for(
|
||||
let server of online_server
|
||||
){
|
||||
if(server.vpn_status?.status === 2){
|
||||
onlineServers.value.push(server.server_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取在线服务器状态失败:', error);
|
||||
|
|
|
|||
|
|
@ -360,7 +360,16 @@ const getOnlineServers = async () => {
|
|||
try {
|
||||
const response = await GetVPNServerOnlineListHandler();
|
||||
if (response.data && Array.isArray(response.data)) {
|
||||
onlineServers.value = response.data.map((server: any) => server.server_id);
|
||||
let online_server: ServerConfig[] = [];
|
||||
online_server = response.data;
|
||||
onlineServers.value = [];
|
||||
for(
|
||||
let server of online_server
|
||||
){
|
||||
if(server.vpn_status?.status === 2){
|
||||
onlineServers.value.push(server.server_id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取在线服务器状态失败:', error);
|
||||
|
|
|
|||
Loading…
Reference in New Issue