feat(admin): 商城/论坛/支付/用户导航默认落点与次级概览

按 stream-h 收束后台默认入口:实体与前台结果优先;shop/forum 概览标 secondaryEntry;payment 默认落到付费内容;users 将短信/微信后移。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-12 12:12:39 +08:00
co-authored by Claude Fable 5
parent 031b7ada5e
commit 03022349db
5 changed files with 141 additions and 139 deletions
+23 -22
View File
@@ -6,6 +6,28 @@ export const forumSection = {
icon: renderFaIcon('fas fa-comments'),
route: '/forum',
children: [
customPage({
key: 'forum-boards',
name: 'ForumBoards',
label: '板块管理',
route: '/forum/boards',
component: 'ForumBoards',
title: '板块管理',
desc: '创建、编辑和排序论坛板块。',
canonicalDomain: 'forum',
section: 'boards',
}),
customPage({
key: 'forum-topics',
name: 'ForumTopics',
label: '主题治理',
route: '/forum/topics',
component: 'ForumTopics',
title: '主题治理',
desc: '集中处理主题审核、可见性、版块移动和治理状态。',
canonicalDomain: 'forum',
section: 'topics',
}),
schemaPage({
key: 'forum-settings-basic',
name: 'ForumSettingsBasic',
@@ -106,28 +128,6 @@ export const forumSection = {
canonicalDomain: 'forum',
section: 'credits',
}),
customPage({
key: 'forum-boards',
name: 'ForumBoards',
label: '板块管理',
route: '/forum/boards',
component: 'ForumBoards',
title: '板块管理',
desc: '创建、编辑和排序论坛板块。',
canonicalDomain: 'forum',
section: 'boards',
}),
customPage({
key: 'forum-topics',
name: 'ForumTopics',
label: '主题治理',
route: '/forum/topics',
component: 'ForumTopics',
title: '主题治理',
desc: '集中处理主题审核、可见性、版块移动和治理状态。',
canonicalDomain: 'forum',
section: 'topics',
}),
customPage({
key: 'forum-moderator-applications',
name: 'ForumModeratorApplications',
@@ -160,6 +160,7 @@ export const forumSection = {
desc: '社区讨论、帖子管理、版块配置等论坛功能概览。',
canonicalDomain: 'forum',
section: 'dashboard',
secondaryEntry: true,
}),
],
}
+1 -1
View File
@@ -17,7 +17,7 @@ const SECTION_DEFAULT_CHILDREN = {
'post-list': 'post-list-page',
permissions: 'permissions-comment',
users: 'users-auth',
payment: 'payment-gateway',
payment: 'payment-paid',
shop: 'shop-products',
forum: 'forum-boards',
extensions: 'extensions-ip',
+12 -12
View File
@@ -6,18 +6,6 @@ export const paymentSection = {
icon: renderFaIcon('fas fa-wallet'),
route: '/payment',
children: [
customPage({
key: 'payment-gateway',
name: 'PaymentGateway',
label: '收款接口',
route: '/payment/gateway',
component: 'PaymentGateway',
status: 'available',
title: '收款接口',
desc: '支付网关适配器、测试网关和手动确认配置。',
canonicalDomain: 'payment',
section: 'gateway',
}),
customPage({
key: 'payment-paid',
name: 'PaymentPaid',
@@ -49,6 +37,18 @@ export const paymentSection = {
canonicalDomain: 'payment',
section: 'vip',
}),
customPage({
key: 'payment-gateway',
name: 'PaymentGateway',
label: '收款接口',
route: '/payment/gateway',
component: 'PaymentGateway',
status: 'available',
title: '收款接口',
desc: '支付网关适配器、测试网关和手动确认配置。',
canonicalDomain: 'payment',
section: 'gateway',
}),
schemaPage({
key: 'payment-order',
name: 'PaymentOrder',
+69 -68
View File
@@ -28,27 +28,55 @@ export const shopSection = {
canonicalDomain: 'shop',
section: 'orders',
}),
customPage({
key: 'shop-withdrawals',
name: 'ShopWithdrawals',
label: '提现管理',
route: '/shop/withdrawals',
component: 'ShopWithdrawals',
title: '提现管理',
desc: '审核和管理创作者提现申请。',
schemaPage({
key: 'shop-basic',
name: 'ShopBasic',
label: '商城基础',
route: '/shop/basic',
title: '商城基础',
desc: '商城总开关、首页链接、面包屑和 URL 别名设置。',
canonicalDomain: 'shop',
section: 'withdrawals',
section: 'basic',
}),
customPage({
key: 'shop-coupons',
name: 'ShopCoupons',
label: '优惠券',
route: '/shop/coupons',
component: 'ShopCoupons',
title: '优惠券',
desc: '创建和管理优惠券。',
schemaPage({
key: 'shop-list',
name: 'ShopList',
label: '商品列表',
route: '/shop/list',
title: '商品列表',
desc: '商品列表排序、分页、卡片样式和销量显示配置。',
canonicalDomain: 'shop',
section: 'coupons',
section: 'list',
}),
schemaPage({
key: 'shop-single',
name: 'ShopSingle',
label: '商品详情',
route: '/shop/single',
title: '商品详情',
desc: '商品详情页布局、相关推荐和底部内容设置。',
canonicalDomain: 'shop',
section: 'single',
}),
schemaPage({
key: 'shop-product-defaults',
name: 'ShopProductDefaults',
label: '商品默认参数',
route: '/shop/product-defaults',
title: '商品默认参数',
desc: '主题级商品参数默认值,作为参数继承链的根。',
canonicalDomain: 'shop',
section: 'product-defaults',
}),
schemaPage({
key: 'shop-contact',
name: 'ShopContact',
label: '客服配置',
route: '/shop/contact',
title: '客服配置',
desc: '商品详情页客服按钮和联系方式配置。',
canonicalDomain: 'shop',
section: 'contact',
}),
customPage({
key: 'shop-after-sale',
@@ -72,56 +100,6 @@ export const shopSection = {
canonicalDomain: 'shop',
section: 'shipping',
}),
schemaPage({
key: 'shop-basic',
name: 'ShopBasic',
label: '商城基础',
route: '/shop/basic',
title: '商城基础',
desc: '商城总开关、首页链接、面包屑和 URL 别名设置。',
canonicalDomain: 'shop',
section: 'basic',
}),
schemaPage({
key: 'shop-list',
name: 'ShopList',
label: '商品列表',
route: '/shop/list',
title: '商品列表',
desc: '商品列表排序、分页、卡片样式和销量显示配置。',
canonicalDomain: 'shop',
section: 'list',
}),
schemaPage({
key: 'shop-contact',
name: 'ShopContact',
label: '客服配置',
route: '/shop/contact',
title: '客服配置',
desc: '商品详情页客服按钮和联系方式配置。',
canonicalDomain: 'shop',
section: 'contact',
}),
schemaPage({
key: 'shop-single',
name: 'ShopSingle',
label: '商品详情',
route: '/shop/single',
title: '商品详情',
desc: '商品详情页布局、相关推荐和底部内容设置。',
canonicalDomain: 'shop',
section: 'single',
}),
schemaPage({
key: 'shop-product-defaults',
name: 'ShopProductDefaults',
label: '商品默认参数',
route: '/shop/product-defaults',
title: '商品默认参数',
desc: '主题级商品参数默认值,作为参数继承链的根。',
canonicalDomain: 'shop',
section: 'product-defaults',
}),
schemaPage({
key: 'shop-shipping-config',
name: 'ShopShippingConfig',
@@ -142,6 +120,28 @@ export const shopSection = {
canonicalDomain: 'shop',
section: 'timing',
}),
customPage({
key: 'shop-coupons',
name: 'ShopCoupons',
label: '优惠券',
route: '/shop/coupons',
component: 'ShopCoupons',
title: '优惠券',
desc: '创建和管理优惠券。',
canonicalDomain: 'shop',
section: 'coupons',
}),
customPage({
key: 'shop-withdrawals',
name: 'ShopWithdrawals',
label: '提现管理',
route: '/shop/withdrawals',
component: 'ShopWithdrawals',
title: '提现管理',
desc: '审核和管理创作者提现申请。',
canonicalDomain: 'shop',
section: 'withdrawals',
}),
customPage({
key: 'shop-dashboard',
name: 'ShopDashboard',
@@ -152,6 +152,7 @@ export const shopSection = {
desc: '商品管理、订单系统、库存管理等电商功能概览。',
canonicalDomain: 'shop',
section: 'dashboard',
secondaryEntry: true,
}),
],
}
+36 -36
View File
@@ -105,6 +105,18 @@ export const usersSection = {
canonicalDomain: 'users',
section: 'notifications',
}),
customPage({
key: 'users-messages',
name: 'UsersMessages',
label: '消息中心',
route: '/users/messages',
component: 'UsersMessages',
status: 'available',
title: '消息中心',
desc: '管理站内通知、系统消息和用户私信记录。',
canonicalDomain: 'users',
section: 'messages',
}),
customPage({
key: 'users-invite-codes',
name: 'UsersInviteCodes',
@@ -116,6 +128,30 @@ export const usersSection = {
canonicalDomain: 'users',
section: 'invite-codes',
}),
customPage({
key: 'users-ban',
name: 'UsersBan',
label: '禁封管理',
route: '/users/ban',
component: 'UsersBan',
status: 'available',
title: '禁封管理',
desc: '查看和管理用户封禁、限制状态。',
canonicalDomain: 'users',
section: 'ban',
}),
customPage({
key: 'users-report',
name: 'UsersReport',
label: '禁封/举报',
route: '/users/report',
component: 'UsersReport',
status: 'available',
title: '禁封/举报',
desc: '举报受理与用户限制状态管理。',
canonicalDomain: 'users',
section: 'report',
}),
schemaPage({
key: 'users-sms',
name: 'UsersSms',
@@ -148,41 +184,5 @@ export const usersSection = {
canonicalDomain: 'users',
section: 'wechat-template',
}),
customPage({
key: 'users-messages',
name: 'UsersMessages',
label: '消息中心',
route: '/users/messages',
component: 'UsersMessages',
status: 'available',
title: '消息中心',
desc: '管理站内通知、系统消息和用户私信记录。',
canonicalDomain: 'users',
section: 'messages',
}),
customPage({
key: 'users-ban',
name: 'UsersBan',
label: '禁封管理',
route: '/users/ban',
component: 'UsersBan',
status: 'available',
title: '禁封管理',
desc: '查看和管理用户封禁、限制状态。',
canonicalDomain: 'users',
section: 'ban',
}),
customPage({
key: 'users-report',
name: 'UsersReport',
label: '禁封/举报',
route: '/users/report',
component: 'UsersReport',
status: 'available',
title: '禁封/举报',
desc: '举报受理与用户限制状态管理。',
canonicalDomain: 'users',
section: 'report',
}),
],
}