Files
quyun-v2/frontend/tenant_admin/TENANT_ADMIN_PORTAL.md
2025-12-24 17:08:09 +08:00

6.4 KiB
Raw Blame History

租户管理员管理 Portalfrontend/tenant_admin规划

以“中老年人可用性”为第一准则:大字、少层级、少打扰、强反馈、可撤销。本规划基于现有后端租户管理员接口:/t/:tenantCode/v1/admin/*

1. 设计准则(必须遵守)

1.1 视觉与可读性

  • 默认开启“大字模式”:正文 ≥ 1618px关键数字/按钮 ≥ 1820px行高 ≥ 1.5。
  • 高对比配色:文字与背景对比度优先(避免浅灰字+浅灰底);状态色同时配文字标签(不只靠颜色)。
  • 重要信息“一屏可读”:首屏优先展示“今天/本月关键数据 + 待办”。

1.2 交互与流程

  • 三步以内完成:常用任务(发布内容、调价、处理退款、通过入驻)不超过 3 步。
  • 少记忆:减少需要用户记住的字段(例如状态/角色用下拉;金额用分步输入+自动格式化)。
  • 强反馈:所有提交必须有 loading、成功提示与失败原因可复制避免“静默失败”。
  • 可撤销:高风险操作(下架/封禁/退款/移除成员/禁用邀请)必须二次确认,并提供“操作记录/可追溯”入口。

1.3 列表呈现(中老年友好)

  • 列表优先“卡片式信息块”,表格仅用于“需要对比多列”的场景。
  • 筛选默认收起为“基础筛选”;“高级筛选”折叠面板,避免压迫感。
  • 每条记录提供明确的“主要动作按钮”(如:下架/通过/退款),避免图标-only。

2. 信息架构(路由与菜单建议)

建议路由基座:/t/:tenantCode/admin/(便于天然携带 tenantCodeAPI 仍走 /t/:tenantCode/v1/admin/*

菜单(一级不超过 6 个)

  1. 概览Dashboard
  2. 内容管理
  3. 订单与退款
  4. 成员管理
  5. 邀请与入驻
  6. 财务流水

3. 页面与功能(页面 → 关键交互 → 对应接口)

3.1 登录与租户上下文

  • 登录页:大输入框、显示/隐藏密码、登录失败提示可复制。
  • 租户切换:若未来支持同一管理员多租户,提供“切换租户”入口(卡片列表)。
  • 接口(若已有):/t/:tenantCode/v1/* 的登录/鉴权体系(按现有项目登录方案对接)。

3.2 概览 Dashboard优先做

目标:一眼看懂 + 一键处理待办。

  • 今日/本月:订单数、收入(来自订单/流水聚合)、退款中数量、待处理入驻申请数量。
  • 待办区:入驻申请(通过/拒绝)、退款申请(查看/处理)、内容审核中(如果存在 reviewing
  • 数据来源:GET /t/:tenantCode/v1/admin/ordersGET /t/:tenantCode/v1/admin/ledgersGET /t/:tenantCode/v1/admin/join-requests(前端聚合,必要时再增后端统计接口)。

3.3 内容管理(发布/下架/定价/素材)

3.3.1 内容列表(卡片 + 关键动作)

  • 展示:标题、状态(草稿/已发布/已下架/封禁)、可见性、价格(免费/¥)、发布时间。
  • 操作:编辑、调价、绑定素材、下架(已发布才显示)、重新上架(若允许)。
  • 接口:POST /admin/contentsPATCH /admin/contents/:contentIDPUT /admin/contents/:contentID/pricePOST /admin/contents/:contentID/assets

3.3.2 发布向导(强引导)

三步向导:

  1. 基本信息(标题/描述/可见性)
  2. 上传素材(主视频/试看/封面)
  3. 定价与发布(免费/付费,确认发布) 失败时给出“下一步建议”(例如:素材未 ready

3.3.3 素材库Media Assets

  • 列表状态uploaded/processing/ready/failed、类型、上传时间提供“重新触发处理/删除”。
  • 上传:引导式上传(单文件/多文件),显示上传进度与完成确认。
  • 接口:GET /admin/media_assetsGET /admin/media_assets/:assetIDPOST /admin/media_assets/upload_initPOST /admin/media_assets/:assetID/upload_completeDELETE /admin/media_assets/:assetID

3.4 订单与退款(中老年人常用)

3.4.1 订单列表

  • 基础筛选:订单号、买家用户名、状态(已支付/退款中/已退款)。
  • 卡片展示:买家、金额、状态、创建/支付时间;提供“查看详情”与“发起退款”。
  • 接口:GET /admin/ordersGET /admin/orders/:orderIDGET /admin/orders/export

3.4.2 退款处理

  • 退款弹窗:原因(可选模板)、二次确认、成功后提示“退款处理中”。
  • 接口:POST /admin/orders/:orderID/refund

3.5 成员管理(更强调“安全、少误触”)

  • 成员列表:用户名、角色、加入时间;角色变更入口明显,但默认收起到详情页避免误触。
  • 操作移除成员二次确认、设置角色member/tenant_admin
  • 接口:GET /admin/usersPATCH /admin/users/:userID/roleDELETE /admin/users/:userIDPOST /admin/users/:userID/join(平台或客服协助加入)。

3.6 邀请与入驻(把“待办”放在首屏)

3.6.1 邀请管理

  • 创建邀请:生成邀请码/链接,一键复制;可设置有效期/次数(若后端支持)。
  • 列表:状态、创建时间、使用情况;禁用邀请(二次确认)。
  • 接口:POST /admin/invitesGET /admin/invitesPATCH /admin/invites/:inviteID/disable

3.6.2 入驻申请Join Requests

  • 列表:申请人、申请时间、备注(若有)、状态;一键通过/拒绝。
  • 接口:GET /admin/join-requestsPOST /admin/join-requests/:requestID/approvePOST /admin/join-requests/:requestID/reject

3.7 财务流水Ledger

  • 展示:收入/退款/手续费等(按 TenantLedgerType),支持时间筛选与导出(若后端支持)。
  • 接口:GET /admin/ledgers

4. 组件与交互规范(落地建议)

  • 全局提供“简洁模式/大字模式”开关(默认大字);切换后记忆到 localStorage
  • 列表默认“卡片视图”,提供“表格视图”切换(给高频专业用户)。
  • 表单控件:金额用“元”输入但内部转换为“分”;日期选择器默认提供“今天/近7天/本月”快捷。
  • 错误提示:同时展示“可读中文 + request_id可复制便于客服协助。

5. MVP 迭代顺序(建议)

  1. 登录/鉴权 + Dashboard含待办
  2. 内容管理:列表 + 发布向导 + 下架
  3. 订单列表 + 退款
  4. 成员管理 + 入驻申请
  5. 邀请管理 + 财务流水