标记待开发功能范围

This commit is contained in:
hectorzhao
2026-07-01 09:44:10 +08:00
parent 47e603d7d3
commit 2675fafb28
9 changed files with 48 additions and 19 deletions
@@ -191,7 +191,7 @@ export function AdminEnterpriseApplicationsPage() {
<Tabs
items={[
{ label: '短信应用', value: 'sms', content: <Table columns={smsColumns} data={filteredSmsApps} rowKey="id" /> },
{ label: '彩信应用', value: 'mms', content: <Table columns={mmsColumns} data={filteredMmsApps} rowKey="id" /> },
{ label: '彩信应用', value: 'mms', pending: true, content: <Table columns={mmsColumns} data={filteredMmsApps} rowKey="id" /> },
]}
/>
</div>
@@ -565,6 +565,7 @@ export function AdminEnterpriseSignaturesPage() {
{ label: '短信签名', value: 'sms', content: smsSignatureContent },
{
label: '彩信签名',
pending: true,
value: 'mms',
content: (
<>
@@ -595,7 +595,7 @@ export function AdminEnterpriseTemplatesPage() {
value={activeTab}
items={[
{ label: '短信模板', value: 'sms', content: smsContent },
{ label: '彩信模板', value: 'mms', content: mmsContent },
{ label: '彩信模板', value: 'mms', pending: true, content: mmsContent },
]}
/>
</div>
+3 -1
View File
@@ -5,6 +5,7 @@ export type TabItem = {
label: string;
value: string;
content: ReactNode;
pending?: boolean;
};
type TabsProps = {
@@ -36,7 +37,8 @@ export function Tabs({ items, defaultValue, value, onChange }: TabsProps) {
role="tab"
type="button"
>
{item.label}
<span>{item.label}</span>
{item.pending ? <span className="dev-status-badge"></span> : null}
</button>
))}
</div>
+4 -4
View File
@@ -61,7 +61,7 @@ export function AdminLayout() {
{ label: '企业认证审核', to: '/admin/enterprise-audit', icon: ShieldCheck },
{ label: '短信审核', to: '/admin/sms-audit', icon: MessageSquare },
{ label: '短信模板审核', to: '/admin/templates', icon: FileCheck2 },
{ label: '彩信模板审核', to: '/admin/signatures', icon: ImageIcon },
{ label: '彩信模板审核', to: '/admin/signatures', icon: ImageIcon, pending: true },
],
},
{
@@ -69,7 +69,7 @@ export function AdminLayout() {
icon: RadioTower,
items: [
{ label: '短信通道管理', to: '/admin/channels', icon: RadioTower },
{ label: '彩信通道管理', to: '/admin/mms-channels', icon: ImageIcon },
{ label: '彩信通道管理', to: '/admin/mms-channels', icon: ImageIcon, pending: true },
{ label: '短信通道组管理', to: '/admin/channel-groups', icon: Layers3 },
],
},
@@ -86,7 +86,7 @@ export function AdminLayout() {
icon: Send,
items: [
{ label: '短信任务进度', to: '/admin/sms-task-progress', icon: TrendingUp },
{ label: '彩信任务进度', to: '/admin/mms-task-progress', icon: BarChart3 },
{ label: '彩信任务进度', to: '/admin/mms-task-progress', icon: BarChart3, pending: true },
],
},
{
@@ -94,7 +94,7 @@ export function AdminLayout() {
icon: ReceiptText,
items: [
{ label: '短信记录', to: '/admin/sms-records', icon: MessageSquare },
{ label: '彩信记录', to: '/admin/mms-records', icon: ImageIcon },
{ label: '彩信记录', to: '/admin/mms-records', icon: ImageIcon, pending: true },
{ label: '短信上行记录', to: '/admin/sms-uplink-records', icon: MessageSquare },
{ label: '充值记录', to: '/admin/recharge-records', icon: ReceiptText },
{ label: '账单流水', to: '/admin/billing', icon: ReceiptText },
+4 -2
View File
@@ -16,6 +16,7 @@ export type ShellNavItem = {
label: string;
to: string;
icon: ComponentType<{ size?: number; strokeWidth?: number }>;
pending?: boolean;
};
export type ShellNavSection = {
@@ -84,9 +85,10 @@ export function AppShell({
const Icon = item.icon;
return (
<NavLink key={item.to} to={item.to} end title={item.label}>
<NavLink key={item.to} to={item.to} end title={item.pending ? `${item.label}(待开发)` : item.label}>
<Icon size={17} strokeWidth={2.1} />
<span>{item.label}</span>
<span className="side-nav-label">{item.label}</span>
{item.pending ? <span className="dev-status-badge"></span> : null}
</NavLink>
);
})}
+9 -9
View File
@@ -46,20 +46,20 @@ export function ClientLayout() {
{
title: '彩信服务',
items: [
{ label: '签名报备', to: '/client/mms-signatures', icon: PenLine },
{ label: '彩信模板管理', to: '/client/mms-templates', icon: ImageIcon },
{ label: '发送彩信', to: '/client/mms-send', icon: MessageSquareText },
{ label: '查看批量任务', to: '/client/mms-batch-tasks', icon: ClipboardList },
{ label: '彩信发送详情', to: '/client/mms-send-detail', icon: ClipboardList },
{ label: '查看上行彩信', to: '/client/mms-uplink-messages', icon: ImageIcon },
{ label: '签名报备', to: '/client/mms-signatures', icon: PenLine, pending: true },
{ label: '彩信模板管理', to: '/client/mms-templates', icon: ImageIcon, pending: true },
{ label: '发送彩信', to: '/client/mms-send', icon: MessageSquareText, pending: true },
{ label: '查看批量任务', to: '/client/mms-batch-tasks', icon: ClipboardList, pending: true },
{ label: '彩信发送详情', to: '/client/mms-send-detail', icon: ClipboardList, pending: true },
{ label: '查看上行彩信', to: '/client/mms-uplink-messages', icon: ImageIcon, pending: true },
],
},
{
title: '账户',
items: [
{ label: '充值套餐', to: '/client/billing', icon: BadgeDollarSign },
{ label: '账单流水', to: '/client/invoices', icon: ReceiptText },
{ label: '账号设置', to: '/client/settings', icon: Settings },
{ label: '充值套餐', to: '/client/billing', icon: BadgeDollarSign, pending: true },
{ label: '账单流水', to: '/client/invoices', icon: ReceiptText, pending: true },
{ label: '账号设置', to: '/client/settings', icon: Settings, pending: true },
],
},
{
+3
View File
@@ -646,10 +646,13 @@
}
.ui-tabs__tab {
align-items: center;
background: transparent;
border: 0;
color: var(--color-text-muted);
display: inline-flex;
font-weight: var(--font-weight-semibold);
gap: var(--space-2);
padding: 0 var(--space-2) var(--space-3);
position: relative;
}
+22 -1
View File
@@ -293,12 +293,33 @@ h3 {
min-width: 0;
}
.side-nav a span {
.side-nav-label {
flex: 1;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.dev-status-badge {
background: var(--color-warning-soft);
border: 1px solid color-mix(in srgb, var(--color-warning) 24%, transparent);
border-radius: 999px;
color: var(--color-warning);
flex: 0 0 auto;
font-size: 11px;
font-weight: var(--font-weight-semibold);
line-height: 1;
padding: 3px 6px;
white-space: nowrap;
}
.ui-tabs__tab {
align-items: center;
display: inline-flex;
gap: var(--space-2);
}
.side-nav a.active,
.side-nav a:hover {
background: var(--color-selected-soft);