feat(about): 重构“关于我们”页面并丰富内容展示

- 采用左右分栏布局,左侧新增图标导航
- 全新设计顶部 Banner,提升视觉效果
- 添加学会简介数据亮点和主要职能展示
- 新增组织机构图、主要领导及专家委员会成员展示
- 引入学会章程章节分明条目展示
- 丰富咨询服务内容,新增服务项目卡片和联系方式
- “加入我们”板块支持企业与个人会员申请详情说明
- 支持资料下载并优化排版与交互体验
- 增强响应式支持,保证移动端体验一致
- 页面样式大幅调整,提升整体美观与可读性
This commit is contained in:
2026-04-26 01:44:07 +08:00
parent 17ce26411d
commit 56aea4ad86
26 changed files with 5468 additions and 1741 deletions

View File

@@ -15,7 +15,7 @@
<div class="sider-logo" @click="navigateTo('/admin')">
<img src="/logo.png" alt="logo" class="logo-img" />
<transition name="logo-text">
<span v-if="!collapsed" class="logo-name">平台管理</span>
<span v-if="!collapsed" class="logo-name">决策咨询网</span>
</transition>
</div>
@@ -79,15 +79,15 @@
<a-layout-header class="main-header">
<div class="header-inner">
<div class="header-left">
<a-tag color="red" class="admin-badge">管理员</a-tag>
<a-tag color="red" class="admin-badge">决策咨询网</a-tag>
<span class="page-title">{{ currentPageTitle }}</span>
</div>
<div class="header-right">
<a-tooltip title="返回控制台">
<a-button type="text" size="small" @click="navigateTo('/console')">
<a-tooltip title="查看网站首页">
<a-button type="text" size="small" @click="navigateTo('/')">
<template #icon><DesktopOutlined /></template>
控制台
网站首页
</a-button>
</a-tooltip>
<a-dropdown placement="bottomRight" :trigger="['click']">
@@ -106,18 +106,14 @@
<UserOutlined style="margin-right: 8px" />
账户信息
</a-menu-item>
<a-menu-item key="orders">
<ShoppingOutlined style="margin-right: 8px" />
我的订单
</a-menu-item>
<a-menu-item key="account-kyc">
<a-menu-item key="profile">
<IdcardOutlined style="margin-right: 8px" />
实名认证
个人信息
</a-menu-item>
<a-menu-divider />
<a-menu-item key="developer">
<CodeOutlined style="margin-right: 8px" />
开发者中心
<a-menu-item key="view-site">
<DesktopOutlined style="margin-right: 8px" />
查看网站
</a-menu-item>
<a-menu-divider />
<a-menu-item key="logout" class="logout-item">
@@ -145,14 +141,12 @@
<script setup lang="ts">
import { message } from 'ant-design-vue'
import {
CodeOutlined,
DesktopOutlined,
DownOutlined,
IdcardOutlined,
LeftOutlined,
LogoutOutlined,
RightOutlined,
ShoppingOutlined,
UserOutlined,
} from '@ant-design/icons-vue'
import { adminNav, type AdminNavEntry, type AdminNavGroup, type AdminNavLink } from '@/config/admin-nav'
@@ -186,7 +180,7 @@ const currentPageTitle = computed(() => {
if (path === entry.to || path.startsWith(entry.to + '/')) return (entry as AdminNavLink).label
}
}
return '平台管理'
return '管理后台'
})
// 选中 key
@@ -233,15 +227,14 @@ function logout() {
localStorage.removeItem('UserId')
} catch { /* ignore */ }
clearAuthz()
navigateTo('/')
navigateTo('/login')
}
function onUserMenuClick(info: { key: string }) {
const key = String(info.key)
if (key === 'developer') navigateTo('/developer')
if (key === 'account-info') navigateTo('/console/account')
if (key === 'orders') navigateTo('/console/orders')
if (key === 'account-kyc') navigateTo('/console/account/kyc')
if (key === 'account-info') navigateTo('/admin/users')
if (key === 'profile') navigateTo('/profile')
if (key === 'view-site') window.open('/', '_blank')
if (key === 'logout') logout()
}
@@ -264,9 +257,9 @@ onMounted(async () => {
setAuthzFromUser(me)
// 权限校验isAdmin=true 方可访问管理后台
if (!(me as any).isAdmin) {
message.error('您无权访问平台管理中心,该区域仅限管理员使用')
message.error('您无权访问管理后台,该区域仅限管理员使用')
clearAuthz()
await navigateTo('/console')
await navigateTo('/login')
ready.value = true
return
}