mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-09-29 07:56:37 +08:00
6f6fececa8
- 使用HeroUI Checkbox组件替换原生checkbox - 重构隧道列表为card-based tile风格 - 添加选中/未选中/已分配状态视觉区分 - 应用eslint --fix代码格式统一 Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
130 lines
5.2 KiB
TypeScript
130 lines
5.2 KiB
TypeScript
import Network from "./network";
|
|
|
|
// 登陆相关接口
|
|
export interface LoginData {
|
|
username: string;
|
|
password: string;
|
|
captchaId: string;
|
|
}
|
|
|
|
export interface LoginResponse {
|
|
token: string;
|
|
role_id: number;
|
|
name: string;
|
|
requirePasswordChange?: boolean;
|
|
}
|
|
|
|
export const login = (data: LoginData) =>
|
|
Network.post<LoginResponse>("/user/login", data);
|
|
|
|
// 用户CRUD操作 - 全部使用POST请求
|
|
export const createUser = (data: any) => Network.post("/user/create", data);
|
|
export const getAllUsers = (pageData: any = {}) =>
|
|
Network.post("/user/list", pageData);
|
|
export const updateUser = (data: any) => Network.post("/user/update", data);
|
|
export const deleteUser = (id: number) => Network.post("/user/delete", { id });
|
|
export const getUserPackageInfo = () => Network.post("/user/package");
|
|
|
|
// 节点CRUD操作 - 全部使用POST请求
|
|
export const createNode = (data: any) => Network.post("/node/create", data);
|
|
export const getNodeList = () => Network.post("/node/list");
|
|
export const updateNode = (data: any) => Network.post("/node/update", data);
|
|
export const deleteNode = (id: number) => Network.post("/node/delete", { id });
|
|
export const getNodeInstallCommand = (id: number) =>
|
|
Network.post("/node/install", { id });
|
|
export const updateNodeOrder = (data: {
|
|
nodes: Array<{ id: number; inx: number }>;
|
|
}) => Network.post("/node/update-order", data);
|
|
export const checkNodeStatus = (nodeId?: number) => {
|
|
const params = nodeId ? { nodeId } : {};
|
|
|
|
return Network.post("/node/check-status", params);
|
|
};
|
|
|
|
// 隧道CRUD操作 - 全部使用POST请求
|
|
export const createTunnel = (data: any) => Network.post("/tunnel/create", data);
|
|
export const getTunnelList = () => Network.post("/tunnel/list");
|
|
export const getTunnelById = (id: number) =>
|
|
Network.post("/tunnel/get", { id });
|
|
export const updateTunnel = (data: any) => Network.post("/tunnel/update", data);
|
|
export const deleteTunnel = (id: number) =>
|
|
Network.post("/tunnel/delete", { id });
|
|
export const diagnoseTunnel = (tunnelId: number) =>
|
|
Network.post("/tunnel/diagnose", { tunnelId });
|
|
export const updateTunnelOrder = (data: {
|
|
tunnels: Array<{ id: number; inx: number }>;
|
|
}) => Network.post("/tunnel/update-order", data);
|
|
|
|
// 用户隧道权限管理操作 - 全部使用POST请求
|
|
export const assignUserTunnel = (data: any) =>
|
|
Network.post("/tunnel/user/assign", data);
|
|
export const batchAssignUserTunnel = (data: {
|
|
userId: number;
|
|
tunnels: Array<{ tunnelId: number; speedId?: number | null }>;
|
|
}) => Network.post("/tunnel/user/batch-assign", data);
|
|
export const getUserTunnelList = (queryData: any = {}) =>
|
|
Network.post("/tunnel/user/list", queryData);
|
|
export const removeUserTunnel = (params: any) =>
|
|
Network.post("/tunnel/user/remove", params);
|
|
export const updateUserTunnel = (data: any) =>
|
|
Network.post("/tunnel/user/update", data);
|
|
export const userTunnel = () => Network.post("/tunnel/user/tunnel");
|
|
|
|
// 转发CRUD操作 - 全部使用POST请求
|
|
export const createForward = (data: any) =>
|
|
Network.post("/forward/create", data);
|
|
export const getForwardList = () => Network.post("/forward/list");
|
|
export const updateForward = (data: any) =>
|
|
Network.post("/forward/update", data);
|
|
export const deleteForward = (id: number) =>
|
|
Network.post("/forward/delete", { id });
|
|
export const forceDeleteForward = (id: number) =>
|
|
Network.post("/forward/force-delete", { id });
|
|
|
|
// 转发服务控制操作 - 通过Java后端接口
|
|
export const pauseForwardService = (forwardId: number) =>
|
|
Network.post("/forward/pause", { id: forwardId });
|
|
export const resumeForwardService = (forwardId: number) =>
|
|
Network.post("/forward/resume", { id: forwardId });
|
|
|
|
// 转发诊断操作
|
|
export const diagnoseForward = (forwardId: number) =>
|
|
Network.post("/forward/diagnose", { forwardId });
|
|
|
|
// 转发排序操作
|
|
export const updateForwardOrder = (data: {
|
|
forwards: Array<{ id: number; inx: number }>;
|
|
}) => Network.post("/forward/update-order", data);
|
|
|
|
// 限速规则CRUD操作 - 全部使用POST请求
|
|
export const createSpeedLimit = (data: any) =>
|
|
Network.post("/speed-limit/create", data);
|
|
export const getSpeedLimitList = () => Network.post("/speed-limit/list");
|
|
export const updateSpeedLimit = (data: any) =>
|
|
Network.post("/speed-limit/update", data);
|
|
export const deleteSpeedLimit = (id: number) =>
|
|
Network.post("/speed-limit/delete", { id });
|
|
|
|
// 修改密码接口
|
|
export const updatePassword = (data: any) =>
|
|
Network.post("/user/updatePassword", data);
|
|
|
|
// 重置流量接口
|
|
export const resetUserFlow = (data: { id: number; type: number }) =>
|
|
Network.post("/user/reset", data);
|
|
|
|
// 网站配置相关接口
|
|
export const getConfigs = () => Network.post("/config/list");
|
|
export const getConfigByName = (name: string) =>
|
|
Network.post("/config/get", { name });
|
|
export const updateConfigs = (configMap: Record<string, string>) =>
|
|
Network.post("/config/update", configMap);
|
|
export const updateConfig = (name: string, value: string) =>
|
|
Network.post("/config/update-single", { name, value });
|
|
|
|
// 验证码相关接口
|
|
export const checkCaptcha = () => Network.post("/captcha/check");
|
|
export const generateCaptcha = () => Network.post(`/captcha/generate`);
|
|
export const verifyCaptcha = (data: { captchaId: string; trackData: string }) =>
|
|
Network.post("/captcha/verify", data);
|