优化PC核心工作流视觉 Wave2(05-27-pc-core-workflow-visual-wave2)

这个提交包含在:
2026-05-27 18:12:23 +08:00
父节点 8f17d6454d
当前提交 9ac73a3872
共修改 16 个文件,包含 771 行新增和 96 行删除
+16 -17
查看文件
@@ -388,7 +388,7 @@ function QuickLinksPanel({ items }: { items: PortalHomePayload["quickLinks"] })
const safeItems = Array.isArray(items) ? items : [];
return (
<SectionPanel title="常用入口">
<SectionPanel title="入口">
<div className="grid gap-3 sm:grid-cols-2">
{safeItems.length ? safeItems.map((item) => (
<Link key={item.key} to={item.href} className="portal-list-card text-sm font-medium text-slate-700">
@@ -400,13 +400,13 @@ function QuickLinksPanel({ items }: { items: PortalHomePayload["quickLinks"] })
);
}
function SecondaryCardsPanel({ title, description, cards }: { title: string; description: string; cards: PortalHomePayload["cards"] }) {
function SecondaryCardsPanel({ title, cards }: { title: string; cards: PortalHomePayload["cards"] }) {
if (!cards.length) {
return <EmptyStateCard title={title} description="暂无统计项。" />;
}
return (
<SectionPanel title={title} description={description}>
<SectionPanel title={title}>
<div className="grid gap-3 sm:grid-cols-2">
{cards.map((card) => (
<MetricCard
@@ -589,7 +589,7 @@ function GettingStartedCard({
return (
<SectionPanel
title="快速上手"
description="完成基础资料。"
description="基础资料"
actions={(
<button
type="button"
@@ -740,7 +740,7 @@ function TodoAggregatePanel({ items }: { items: TodoAggregateItem[] }) {
{item.severity === "high" ? <span className="badge-error">高优先</span> : null}
{item.severity === "warning" ? <span className="badge-warning">关注</span> : null}
</div>
<div className="mt-2 text-sm text-primary">进入处理</div>
<div className="mt-1 text-sm text-primary">进入</div>
</div>
</div>
</Link>
@@ -748,7 +748,7 @@ function TodoAggregatePanel({ items }: { items: TodoAggregateItem[] }) {
</div>
{hiddenCount > 0 ? (
<div className="portal-panel-footer">
<span>还有 {hiddenCount} 项已收起。</span>
<span>另有 {hiddenCount} 项。</span>
<Link to="/todos" className="font-medium text-primary hover:underline">查看全部待办</Link>
</div>
) : null}
@@ -784,7 +784,7 @@ function TeamStatusBoardPanel({ items }: { items: PortalTeamStatusItem[] }) {
</div>
{hiddenCount > 0 ? (
<div className="portal-panel-footer">
<span>已收起 {hiddenCount} 位成员。</span>
<span>另有 {hiddenCount} 位。</span>
<Link to="/team" className="font-medium text-primary hover:underline">查看全部</Link>
</div>
) : null}
@@ -1053,7 +1053,7 @@ export function PortalHomePage() {
key: "approval",
icon: "fact_check",
label: "处理审批",
description: "进入审批中心查看待办",
description: "待办处理",
to: "/workflow/tasks",
});
}
@@ -1062,7 +1062,7 @@ export function PortalHomePage() {
key: "finance",
icon: "payments",
label: "财务处理",
description: "查看付款和风险待处理",
description: "付款 / 风险",
to: payload.financeSummary.href,
});
}
@@ -1071,7 +1071,7 @@ export function PortalHomePage() {
key: "system",
icon: "admin_panel_settings",
label: "系统管理",
description: "账号、配置和审计入口",
description: "账号 / 配置",
to: "/people",
});
}
@@ -1080,7 +1080,7 @@ export function PortalHomePage() {
key: "leave",
icon: "event_available",
label: "提交请假",
description: "直接进入请假申请页",
description: "请假申请",
to: "/leave-requests?action=create",
});
}
@@ -1089,7 +1089,7 @@ export function PortalHomePage() {
key: "expense",
icon: "request_quote",
label: "提交报销",
description: "进入报销工作台创建单据",
description: "报销单据",
to: "/reimbursements",
});
}
@@ -1097,7 +1097,7 @@ export function PortalHomePage() {
key: "attendance",
icon: "schedule",
label: "考勤汇总",
description: "查看企微打卡摘要和 OA 修正",
description: "企微摘要 / OA 修正",
to: "/attendance",
});
if (payload.weeklyReport || payload.weeklySummary) {
@@ -1105,7 +1105,7 @@ export function PortalHomePage() {
key: "weekly",
icon: "article",
label: "提交周报",
description: "进入周报页继续填写或查看团队缺口",
description: "填写 / 查看缺口",
to: "/weekly-reports",
});
}
@@ -1136,7 +1136,7 @@ export function PortalHomePage() {
}
/>
<div className="portal-metric-strip">
<div className="portal-metric-strip ops-status-strip">
{primaryCards.map((card) => (
<MetricCard
key={card.key}
@@ -1161,7 +1161,7 @@ export function PortalHomePage() {
fallback={(
<PortalSectionFallback
title="快速上手"
description="完成基础资料。"
description="基础资料"
/>
)}
>
@@ -1234,7 +1234,6 @@ export function PortalHomePage() {
<SecondaryCardsPanel
title="项目与组织"
description="项目、组织、风险"
cards={secondaryCards}
/>
</SecondaryWorkspacePanel>