文件
hyb-oa/.trellis/tasks/05-30-mobile-light-action-surfaces/prd.md
T

3.4 KiB

移动端轻动作页面统一重构

Goal

统一移动首页、移动审批、移动报销、移动采购、移动通知和移动我的的轻动作体验。手机和企业微信 WebView 只服务提交、补材料、查状态、处理待办、扫码/上传和消息直达,不复制 PC 管理台。

Scope

  • In scope:移动首页、移动审批、移动报销、移动采购、移动通知、移动我的和移动发票上传的统一轻动作结构。
  • Out of scope:原生 App、离线同步、服务端权限/状态机、全范围管理和移动端批量财务/审批工具。

Pages

  • client/src/pages/MobilePortalPage.tsx
  • client/src/pages/MobileApprovalsPage.tsx
  • client/src/pages/MobileReimbursementsPage.tsx
  • client/src/pages/MobileReimbursementDetailPage.tsx
  • client/src/pages/MobilePurchaseRequestsPage.tsx
  • client/src/pages/MobilePurchaseRequestDetailPage.tsx
  • client/src/pages/MobileNotificationsPage.tsx
  • client/src/pages/MobileMePage.tsx
  • client/src/pages/MobileProfilePage.tsx
  • client/src/pages/MobileCapturePage.tsx

Requirements

  • 移动首页使用顶部状态摘要、今日待处理和条件出现的进度/提醒,不放模块大全。
  • 移动列表统一为搜索/状态筛选、卡片列表和一个主动作,不使用宽表。
  • 移动详情统一为顶部焦点卡、分区内容和底部安全区动作。
  • 移动审批只处理 OA 主办审批;企微主办 HR/考勤回企微处理或只看历史/镜像。
  • 移动通知是事件卡片流,点击直达业务详情、审批任务或失败解释页,不复制审批列表。
  • 底部动作不遮挡内容,危险动作进入确认面板。

Out of Scope

  • 不在移动端承接全范围管理、批量导出、批量审批、批量付款、流程配置、功能开关、复杂筛选和管理配置。
  • 不新增原生 App 能力、离线同步或真机专属功能。
  • 不改变服务端权限和状态机。

Acceptance Criteria

  • 移动端所有核心页面都符合焦点卡/卡片列表/底部动作的统一结构。
  • 小屏按钮文字完整可读,底部动作避开安全区和键盘遮挡。
  • 移动通知不复制待办处理列表。
  • 移动 HR/考勤不误导为 OA 日常提交入口。

Test Plan

  • cd client && npm run typecheck
  • cd client && npm run build
  • 代表性移动视口 Playwright/截图:移动首页、审批、报销、采购、通知、我的。
  • node scripts/qa/check-trellis-governance.mjs
  • git diff --check

Implementation Notes

  • 这是跨多个移动页面的统一任务,实施时应分页面小步提交或至少分阶段验证截图。
  • 若发现 PC 与移动共享组件冲突,优先保留移动轻动作语义,不把 PC 管理壳搬到移动端。
  • 2026-05-30 实施:移动首页请假入口改为请假记录/企微主办;移动审批去掉批量处理,只保留列表筛选和详情底部处理;移动报销/采购列表补搜索;移动我的去掉没有移动页承接的项目动态入口;移动视觉测试改为验证请假只读记录页。
  • 验证:cd client && npm run typecheck、cd client && npm run build、cd client && npx playwright test tests/e2e/r6-mobile-unified-design-rollout.spec.ts --workers=1 --reporter=list、python3 ./.trellis/scripts/task.py validate 05-30-mobile-light-action-surfaces、node scripts/qa/check-trellis-governance.mjs、git diff --check。