From 3f9eaecf37fc63edb5276bb9a2629f13c324894a Mon Sep 17 00:00:00 2001 From: ssongliu <73214554+ssongliu@users.noreply.github.com> Date: Mon, 28 Apr 2025 18:47:52 +0800 Subject: [PATCH] fix: Fix the problem of abnormal menu display and hide switching (#8503) --- agent/app/api/v2/database_postgresql.go | 18 +++++++++--------- agent/app/dto/setting.go | 1 + agent/utils/postgresql/client/remote.go | 4 ++-- core/cmd/server/docs/docs.go | 18 +++++++++--------- core/cmd/server/docs/swagger.json | 18 +++++++++--------- frontend/src/lang/modules/en.ts | 5 +++-- frontend/src/lang/modules/ja.ts | 3 ++- frontend/src/lang/modules/ko.ts | 5 +++-- frontend/src/lang/modules/ms.ts | 5 +++-- frontend/src/lang/modules/pt-br.ts | 5 +++-- frontend/src/lang/modules/ru.ts | 5 +++-- frontend/src/lang/modules/zh-Hant.ts | 5 +++-- frontend/src/lang/modules/zh.ts | 5 +++-- .../views/setting/panel/hidemenu/index.vue | 19 +++++++++++++++++++ frontend/src/views/setting/panel/index.vue | 18 +++++++++++------- .../views/setting/panel/systemip/index.vue | 4 ++-- 16 files changed, 85 insertions(+), 53 deletions(-) diff --git a/agent/app/api/v2/database_postgresql.go b/agent/app/api/v2/database_postgresql.go index 7e50733ed..d2e0b8c0a 100644 --- a/agent/app/api/v2/database_postgresql.go +++ b/agent/app/api/v2/database_postgresql.go @@ -9,7 +9,7 @@ import ( "github.com/gin-gonic/gin" ) -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Create postgresql database // @Accept json // @Param request body dto.PostgresqlDBCreate true "request" @@ -40,7 +40,7 @@ func (b *BaseApi) CreatePostgresql(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Bind postgresql user // @Accept json // @Param request body dto.PostgresqlBindUser true "request" @@ -62,7 +62,7 @@ func (b *BaseApi) BindPostgresqlUser(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Update postgresql database description // @Accept json // @Param request body dto.UpdateDescription true "request" @@ -84,7 +84,7 @@ func (b *BaseApi) UpdatePostgresqlDescription(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Change postgresql privileges // @Accept json // @Param request body dto.ChangeDBInfo true "request" @@ -106,7 +106,7 @@ func (b *BaseApi) ChangePostgresqlPrivileges(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Change postgresql password // @Accept json // @Param request body dto.ChangeDBInfo true "request" @@ -137,7 +137,7 @@ func (b *BaseApi) ChangePostgresqlPassword(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Page postgresql databases // @Accept json // @Param request body dto.PostgresqlDBSearch true "request" @@ -163,7 +163,7 @@ func (b *BaseApi) SearchPostgresql(c *gin.Context) { }) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Load postgresql database from remote // @Accept json // @Param request body dto.PostgresqlLoadDB true "request" @@ -185,7 +185,7 @@ func (b *BaseApi) LoadPostgresqlDBFromRemote(c *gin.Context) { helper.Success(c) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Check before delete postgresql database // @Accept json // @Param request body dto.PostgresqlDBDeleteCheck true "request" @@ -207,7 +207,7 @@ func (b *BaseApi) DeleteCheckPostgresql(c *gin.Context) { helper.SuccessWithData(c, apps) } -// @Tags Database Postgresql +// @Tags Database PostgreSQL // @Summary Delete postgresql database // @Accept json // @Param request body dto.PostgresqlDBDelete true "request" diff --git a/agent/app/dto/setting.go b/agent/app/dto/setting.go index 2faf00894..7c09099ce 100644 --- a/agent/app/dto/setting.go +++ b/agent/app/dto/setting.go @@ -3,6 +3,7 @@ package dto type SettingInfo struct { DockerSockPath string `json:"dockerSockPath"` SystemVersion string `json:"systemVersion"` + SystemIP string `json:"systemIP"` LocalTime string `json:"localTime"` TimeZone string `json:"timeZone"` diff --git a/agent/utils/postgresql/client/remote.go b/agent/utils/postgresql/client/remote.go index 3156fc5d6..52bde7e30 100644 --- a/agent/utils/postgresql/client/remote.go +++ b/agent/utils/postgresql/client/remote.go @@ -194,10 +194,10 @@ func (r *Remote) Recover(info RecoverInfo) error { } if err != nil { all, _ := io.ReadAll(stderrPipe) - global.LOG.Errorf("[Postgresql] DB:[%s] Recover Error: %s", info.Name, string(all)) + global.LOG.Errorf("[PostgreSQL] DB:[%s] Recover Error: %s", info.Name, string(all)) return err } - global.LOG.Infof("[Postgresql] DB:[%s] Restoring: %s", info.Name, readString) + global.LOG.Infof("[PostgreSQL] DB:[%s] Restoring: %s", info.Name, readString) } return nil diff --git a/core/cmd/server/docs/docs.go b/core/cmd/server/docs/docs.go index fd4e37bd3..a345f8c1b 100644 --- a/core/cmd/server/docs/docs.go +++ b/core/cmd/server/docs/docs.go @@ -8479,7 +8479,7 @@ const docTemplate = `{ ], "summary": "Create postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8519,7 +8519,7 @@ const docTemplate = `{ ], "summary": "Load postgresql database from remote", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, @@ -8554,7 +8554,7 @@ const docTemplate = `{ ], "summary": "Bind postgresql user", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8599,7 +8599,7 @@ const docTemplate = `{ ], "summary": "Delete postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8658,7 +8658,7 @@ const docTemplate = `{ ], "summary": "Check before delete postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, @@ -8693,7 +8693,7 @@ const docTemplate = `{ ], "summary": "Update postgresql database description", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8747,7 +8747,7 @@ const docTemplate = `{ ], "summary": "Change postgresql password", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8800,7 +8800,7 @@ const docTemplate = `{ ], "summary": "Change postgresql privileges", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8848,7 +8848,7 @@ const docTemplate = `{ ], "summary": "Page postgresql databases", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, diff --git a/core/cmd/server/docs/swagger.json b/core/cmd/server/docs/swagger.json index 208722f7c..8590c011e 100644 --- a/core/cmd/server/docs/swagger.json +++ b/core/cmd/server/docs/swagger.json @@ -8475,7 +8475,7 @@ ], "summary": "Create postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8515,7 +8515,7 @@ ], "summary": "Load postgresql database from remote", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, @@ -8550,7 +8550,7 @@ ], "summary": "Bind postgresql user", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8595,7 +8595,7 @@ ], "summary": "Delete postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8654,7 +8654,7 @@ ], "summary": "Check before delete postgresql database", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, @@ -8689,7 +8689,7 @@ ], "summary": "Update postgresql database description", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8743,7 +8743,7 @@ ], "summary": "Change postgresql password", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [ @@ -8796,7 +8796,7 @@ ], "summary": "Change postgresql privileges", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ], "x-panel-log": { "BeforeFunctions": [], @@ -8844,7 +8844,7 @@ ], "summary": "Page postgresql databases", "tags": [ - "Database Postgresql" + "Database PostgreSQL" ] } }, diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts index 662b1646e..a2468bc5b 100644 --- a/frontend/src/lang/modules/en.ts +++ b/frontend/src/lang/modules/en.ts @@ -433,7 +433,7 @@ const message = { deleteHelper: '" to delete this database', create: 'Create', noMysql: 'Database service (MySQL or MariaDB)', - noPostgresql: 'Database service Postgresql', + noPostgresql: 'Database service PostgreSQL', goUpgrade: 'Go for upgrade', goInstall: 'Go for install', isDelete: 'Deleted', @@ -1535,7 +1535,8 @@ const message = { sessionTimeoutError: 'The minimum timeout is 300 seconds', sessionTimeoutHelper: 'If you do not operate the panel for more than {0} seconds, the panel automatically logs out', - systemIP: 'System Address', + systemIP: 'Default access address', + systemIPHelper: 'Default access address for application and container redirection on this node', proxy: 'Server Proxy', proxyHelper: 'After setting up the proxy server, it will be effective in the following scenarios:', proxyHelper1: 'Downloading and synchronizing installation packages from the app store (Professional)', diff --git a/frontend/src/lang/modules/ja.ts b/frontend/src/lang/modules/ja.ts index 3b7c3239f..281e0b5fa 100644 --- a/frontend/src/lang/modules/ja.ts +++ b/frontend/src/lang/modules/ja.ts @@ -1476,7 +1476,8 @@ const message = { sessionTimeout: 'セッションタイムアウト', sessionTimeoutError: '最小セッションタイムアウトは300秒です', sessionTimeoutHelper: '{0}秒以上操作がない場合、パネルは自動的にログアウトされます。', - systemIP: 'システムアドレス', + systemIP: 'デフォルトアクセスアドレス', + systemIPHelper: 'このノード上のアプリケーションとコンテナリダイレクト用のデフォルトアクセスアドレス', proxy: 'サーバープロキシ', proxyHelper: 'プロキシサーバーを設定した後、次のシナリオで効果的になります。', proxyHelper1: diff --git a/frontend/src/lang/modules/ko.ts b/frontend/src/lang/modules/ko.ts index a89e6cc0b..5989efc58 100644 --- a/frontend/src/lang/modules/ko.ts +++ b/frontend/src/lang/modules/ko.ts @@ -425,7 +425,7 @@ const message = { deleteHelper: '"를 입력하세요.', create: '데이터베이스 생성', noMysql: '데이터베이스 서비스 (MySQL 또는 MariaDB)', - noPostgresql: '데이터베이스 서비스 Postgresql', + noPostgresql: '데이터베이스 서비스 PostgreSQL', goUpgrade: '업그레이드로 이동', goInstall: '설치로 이동', isDelete: '삭제됨', @@ -1460,7 +1460,8 @@ const message = { sessionTimeout: '세션 타임아웃', sessionTimeoutError: '최소 세션 타임아웃은 300초입니다.', sessionTimeoutHelper: '패널에서 {0}초 이상 조작이 없을 경우 자동으로 로그아웃됩니다.', - systemIP: '시스템 주소', + systemIP: '기본 접근 주소', + systemIPHelper: '이 노드에서 애플리케이션 및 컨테이너 전환을 위한 기본 접근 주소', proxy: '서버 프록시', proxyHelper: '프록시 서버를 설정한 후 다음 시나리오에서 적용됩니다:', proxyHelper1: '설치 패키지 다운로드 및 앱 스토어 동기화 (전문 버전에서만 제공)', diff --git a/frontend/src/lang/modules/ms.ts b/frontend/src/lang/modules/ms.ts index 93ca55bb2..528861fc6 100644 --- a/frontend/src/lang/modules/ms.ts +++ b/frontend/src/lang/modules/ms.ts @@ -431,7 +431,7 @@ const message = { deleteHelper: '" untuk memadam pangkalan data ini', create: 'Cipta pangkalan data', noMysql: 'Perkhidmatan pangkalan data (MySQL atau MariaDB)', - noPostgresql: 'Perkhidmatan pangkalan data Postgresql', + noPostgresql: 'Perkhidmatan pangkalan data PostgreSQL', goUpgrade: 'Pergi tingkatkan', goInstall: 'Pergi pasang', isDelete: 'Dihapuskan', @@ -1521,7 +1521,8 @@ const message = { sessionTimeout: 'Tempoh tamat sesi', sessionTimeoutError: 'Tempoh tamat sesi minimum ialah 300 saat', sessionTimeoutHelper: 'Panel akan log keluar secara automatik jika tiada operasi lebih daripada {0} saat.', - systemIP: 'Alamat sistem', + systemIP: 'Alamat akses lalai', + systemIPHelper: 'Alamat akses lalai untuk aplikasi dan penghantaran semula kontena pada nod ini', proxy: 'Proksi pelayan', proxyHelper: 'Ia akan berkuat kuasa dalam senario berikut selepas anda menyediakan pelayan proksi:', proxyHelper1: 'Muat turun pakej pemasangan dan penyelarasan dari kedai aplikasi (Edisi Profesional sahaja)', diff --git a/frontend/src/lang/modules/pt-br.ts b/frontend/src/lang/modules/pt-br.ts index e38b26cf3..6c0892901 100644 --- a/frontend/src/lang/modules/pt-br.ts +++ b/frontend/src/lang/modules/pt-br.ts @@ -429,7 +429,7 @@ const message = { deleteHelper: '" para excluir este banco de dados', create: 'Criar banco de dados', noMysql: 'Serviço de banco de dados (MySQL ou MariaDB)', - noPostgresql: 'Serviço de banco de dados Postgresql', + noPostgresql: 'Serviço de banco de dados PostgreSQL', goUpgrade: 'Ir para atualização', goInstall: 'Ir para instalação', isDelete: 'Excluído', @@ -1506,7 +1506,8 @@ const message = { sessionTimeout: 'Tempo limite de sessão', sessionTimeoutError: 'O tempo mínimo de sessão é de 300 segundos', sessionTimeoutHelper: 'O painel será desconectado automaticamente após {0} segundo(s) de inatividade.', - systemIP: 'Endereço do sistema', + systemIP: 'Endereço de acesso padrão', + systemIPHelper: 'Endereço de acesso padrão para redirecionamento de aplicativos e containers neste nó', proxy: 'Proxy do servidor', proxyHelper: 'Será eficaz nos seguintes cenários após configurar o servidor proxy:', proxyHelper1: diff --git a/frontend/src/lang/modules/ru.ts b/frontend/src/lang/modules/ru.ts index 2a81ff924..adf520beb 100644 --- a/frontend/src/lang/modules/ru.ts +++ b/frontend/src/lang/modules/ru.ts @@ -426,7 +426,7 @@ const message = { deleteHelper: '" для удаления этой базы данных', create: 'Создать базу данных', noMysql: 'Сервис базы данных (MySQL или MariaDB)', - noPostgresql: 'Сервис базы данных Postgresql', + noPostgresql: 'Сервис базы данных PostgreSQL', goUpgrade: 'Обновить', goInstall: 'Установить', isDelete: 'Удалено', @@ -1508,7 +1508,8 @@ const message = { sessionTimeout: 'Время сессии', sessionTimeoutError: 'Минимальное время сессии 300 секунд', sessionTimeoutHelper: 'Панель автоматически выйдет из системы, если не будет операций более {0} секунд.', - systemIP: 'IP-адрес панели', + systemIP: 'Адрес доступа по умолчанию', + systemIPHelper: 'Адрес по умолчанию для доступа к приложениям и перенаправления контейнеров на этом узле', proxy: 'Прокси', proxyHelper: 'После настройки прокси-сервера он будет действовать в следующих сценариях:', proxyHelper1: diff --git a/frontend/src/lang/modules/zh-Hant.ts b/frontend/src/lang/modules/zh-Hant.ts index bfc6fdbfa..fa62ef721 100644 --- a/frontend/src/lang/modules/zh-Hant.ts +++ b/frontend/src/lang/modules/zh-Hant.ts @@ -425,7 +425,7 @@ const message = { deleteHelper: '" 刪除此數據庫', create: '創建數據庫', noMysql: '數據庫服務 (MySQL 或 MariaDB)', - noPostgresql: '數據庫服務 Postgresql', + noPostgresql: '數據庫服務 PostgreSQL', goUpgrade: '去應用商店升級', goInstall: '去應用商店安裝', isDelete: '已刪除', @@ -1455,7 +1455,8 @@ const message = { sessionTimeout: '超時時間', sessionTimeoutError: '最小超時時間為 300 秒', sessionTimeoutHelper: '如果用戶超過 {0} 秒未操作面板,面板將自動退出登錄', - systemIP: '伺服器地址', + systemIP: '預設存取地址', + systemIPHelper: '當前節點存取應用、容器跳轉的預設存取地址', proxy: '代理伺服器', proxyHelper: '設置代理伺服器後,將在以下場景中生效:', proxyHelper1: '應用商店的安裝包下載和同步(專業版功能)', diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index f93b7cde7..2593f23cf 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -423,7 +423,7 @@ const message = { deleteHelper: '" 删除此数据库', create: '创建数据库', noMysql: '数据库服务 (MySQL 或 MariaDB)', - noPostgresql: '数据库服务 Postgresql', + noPostgresql: '数据库服务 PostgreSQL', goUpgrade: '去应用列表升级', goInstall: '去应用商店安装', isDelete: '已删除', @@ -1451,7 +1451,8 @@ const message = { sessionTimeout: '超时时间', sessionTimeoutError: '最小超时时间为 300 秒', sessionTimeoutHelper: '如果用户超过 {0} 秒未操作面板,面板将自动退出登录', - systemIP: '服务器地址', + systemIP: '默认访问地址', + systemIPHelper: '当前节点访问应用、容器跳转的默认访问地址', proxy: '代理服务器', proxyHelper: '设置代理服务器后,将在以下场景中生效:', proxyHelper1: '应用商店的安装包下载和同步(专业版功能)', diff --git a/frontend/src/views/setting/panel/hidemenu/index.vue b/frontend/src/views/setting/panel/hidemenu/index.vue index abb56058b..2b259ea1b 100644 --- a/frontend/src/views/setting/panel/hidemenu/index.vue +++ b/frontend/src/views/setting/panel/hidemenu/index.vue @@ -68,6 +68,25 @@ const onChangeShow = async (row: any) => { for (const item of row.children) { item.isShow = row.isShow; } + return; + } + for (const item of treeData.hideMenu) { + if (!item.children) { + continue; + } + let allHide = true; + for (const item2 of item.children) { + if (item2.isShow) { + allHide = false; + } + if (item2.id === row.id && item2.isShow) { + item.isShow = true; + return; + } + } + if (allHide) { + item.isShow = false; + } } }; diff --git a/frontend/src/views/setting/panel/index.vue b/frontend/src/views/setting/panel/index.vue index 45c88bac9..947990945 100644 --- a/frontend/src/views/setting/panel/index.vue +++ b/frontend/src/views/setting/panel/index.vue @@ -118,11 +118,7 @@ - +