From ce0a10e6de31d3568344c908fb4699676c30e989 Mon Sep 17 00:00:00 2001 From: Dream Hunter Date: Sat, 12 Apr 2025 20:24:11 +0800 Subject: [PATCH] feat: |Admin Portal| optimized UI (#632) --- frontend/src/views/admin/Account.vue | 6 ++-- frontend/src/views/admin/UserManagement.vue | 30 ++++++++++++++------ frontend/src/views/index/AccountSettings.vue | 2 +- frontend/src/views/user/UserSettings.vue | 2 +- 4 files changed, 28 insertions(+), 12 deletions(-) diff --git a/frontend/src/views/admin/Account.vue b/frontend/src/views/admin/Account.vue index 1eabc894..92046869 100644 --- a/frontend/src/views/admin/Account.vue +++ b/frontend/src/views/admin/Account.vue @@ -212,7 +212,8 @@ const columns = [ } }, { default: () => t('viewMails') } - ) + ), + show: row.mail_count > 0 }, { label: () => h(NButton, @@ -224,7 +225,8 @@ const columns = [ } }, { default: () => t('viewSendBox') } - ) + ), + show: row.send_count > 0 }, { label: () => h(NButton, diff --git a/frontend/src/views/admin/UserManagement.vue b/frontend/src/views/admin/UserManagement.vue index a8acfdcc..408ef38d 100644 --- a/frontend/src/views/admin/UserManagement.vue +++ b/frontend/src/views/admin/UserManagement.vue @@ -36,7 +36,7 @@ const { t } = useI18n({ prefix: 'Prefix', domains: 'Domains', roleDonotExist: 'Current Role does not exist', - userAddressManagement: 'User Address Management', + userAddressManagement: 'Address Management', }, zh: { success: '成功', @@ -59,7 +59,7 @@ const { t } = useI18n({ prefix: '前缀', domains: '域名', roleDonotExist: '当前角色不存在', - userAddressManagement: '用户地址管理', + userAddressManagement: '地址管理', } } }); @@ -219,12 +219,25 @@ const columns = [ title: t('address_count'), key: "address_count", render(row) { - return h(NBadge, { - value: row.address_count, - 'show-zero': true, - max: 99, - type: "success" - }) + return h(NButton, + { + text: true, + onClick: () => { + if (row.address_count <= 0) return; + curUserId.value = row.id; + showUserAddressManagement.value = true; + } + }, + { + icon: () => h(NBadge, { + value: row.address_count, + 'show-zero': true, + max: 99, + type: "success" + }), + default: () => row.address_count > 0 ? t('userAddressManagement') : "" + } + ) } }, { @@ -255,6 +268,7 @@ const columns = [ }, { default: () => t('userAddressManagement') } ), + show: row.address_count > 0 }, { label: () => h(NButton, diff --git a/frontend/src/views/index/AccountSettings.vue b/frontend/src/views/index/AccountSettings.vue index fa641848..06997536 100644 --- a/frontend/src/views/index/AccountSettings.vue +++ b/frontend/src/views/index/AccountSettings.vue @@ -74,7 +74,7 @@ const deleteAccount = async () => {

{{ t('logoutConfirm') }}

diff --git a/frontend/src/views/user/UserSettings.vue b/frontend/src/views/user/UserSettings.vue index 445ac262..805646a5 100644 --- a/frontend/src/views/user/UserSettings.vue +++ b/frontend/src/views/user/UserSettings.vue @@ -232,7 +232,7 @@ const renamePasskey = async () => {

{{ t('logoutConfirm') }}