From 4fc9a43fd279a7b6ba860d061ab7e4aee63dfec7 Mon Sep 17 00:00:00 2001
From: 2256907009 <2256907009@qq.com>
Date: Sun, 28 Sep 2025 23:29:18 +0800
Subject: [PATCH] feat:add guacamole
---
src/config/menus.js | 5 +
src/router/index.js | 7 +
src/utils/acs/guacamole.js | 34 ++
src/views/acs/guacamole/Guacamole.vue | 739 ++++++++++++++++++++++++++
src/views/acs/nodes/Nodes.vue | 46 +-
5 files changed, 829 insertions(+), 2 deletions(-)
create mode 100644 src/utils/acs/guacamole.js
create mode 100644 src/views/acs/guacamole/Guacamole.vue
diff --git a/src/config/menus.js b/src/config/menus.js
index 095bd4c..4f55ce3 100644
--- a/src/config/menus.js
+++ b/src/config/menus.js
@@ -35,6 +35,11 @@ export const menus = [
},
{
path: '/acs/nodes', title: '节点管理'
+ },
+ {
+ path: '/acs/guacamole',
+ title: '远程桌面网关管理',
+ icon: 'Monitor'
},{
path: '/audit',
title: '站点审计',
diff --git a/src/router/index.js b/src/router/index.js
index 5ff23a4..47f9c8c 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -130,6 +130,13 @@ const routes = [
meta: {
title: '节点管理'
}
+ },{
+ path: 'guacamole',
+ name: 'Guacamole',
+ component: () => import('../views/acs/guacamole/Guacamole.vue'),
+ meta: {
+ title: 'Guacamole管理'
+ }
}
]
},
diff --git a/src/utils/acs/guacamole.js b/src/utils/acs/guacamole.js
new file mode 100644
index 0000000..13b6184
--- /dev/null
+++ b/src/utils/acs/guacamole.js
@@ -0,0 +1,34 @@
+import {http2} from "@/utils/request.js";
+
+/**获取 guacamole 列表 */
+export const getGuacamoleList = data => {
+ return http2.get(`/v1/admin/server/get_guacamole_list`);
+};
+/**获取服务器 guacamole 信息 */
+export const getGuacamoleInfo = data => {
+ return http2.get(`/v1/admin/server/get_server_guacamole?server_id=${data}`);
+};
+/**新增 guacamole 参数 url:string,username:string,password:string*/
+export const addGuacamoleInfo = data => {
+ return http2.post(`/v1/admin/server/add_guacamole`, data,{
+ headers:{
+ 'Content-Type': 'multipart/form-data'
+ }
+ });
+};
+/**修改guacamole 参数 id:string,url:string,username:string,password:string*/
+export const updateGuacamoleInfo = data => {
+ return http2.post(`/v1/admin/server/edit_guacamole`, data,{
+ headers:{
+ 'Content-Type': 'multipart/form-data'
+ }
+ });
+};
+/**删除guacamole 参数 id:string */
+export const deleteGuacamoleInfo = data => {
+ return http2.post(`/v1/admin/server/delete_guacamole`, data,{
+ headers:{
+ 'Content-Type': 'multipart/form-data'
+ }
+ });
+};
diff --git a/src/views/acs/guacamole/Guacamole.vue b/src/views/acs/guacamole/Guacamole.vue
new file mode 100644
index 0000000..1e8a7c8
--- /dev/null
+++ b/src/views/acs/guacamole/Guacamole.vue
@@ -0,0 +1,739 @@
+
+ 远程桌面网关管理
+