21 KiB
21 KiB
华夏基金 PC 前端详细开发计划
1. 计划概览
| 项目 | 内容 |
|---|---|
| 项目名称 | 华夏基金 PC 网页平台前端 |
| 计划版本 | V1.0 |
| 编制日期 | 2026-09-13 |
| 开发范围 | PC 浏览器前端 |
| 后端约束 | 只调用现有 FastAPI 接口,不修改后端代码、数据库和权限逻辑 |
| 产品形态 | 用户端官网 + 用户服务页面 + 员工后台管理系统 |
1.1 总体开发顺序
项目勘察
↓
前端工程与基础架构
↓
统一品牌视觉与公共组件
↓
用户端官网长页面
↓
基金列表与基金详情
↓
登录、注册与用户中心
↓
员工后台壳层与权限菜单
↓
投顾、风控和通用员工页面
↓
Agent 聊天框
↓
API 联调与异常处理
↓
PC 浏览器验收与交付
2. 开发原则
- 前端只负责页面、状态、交互、展示和接口调用。
- 不修改现有 Python/FastAPI 后端代码。
- 不修改数据库表结构、数据内容和后端权限判断。
- 基金净值、收益和产品信息全部来自后端 API,不在前端写死真实业务数据。
- 用户端和后台共用品牌色、字体、按钮、标签、弹窗和状态反馈规范。
- 用户端强调品牌和转化,后台强调信息密度和业务效率。
- 所有接口都需要处理加载中、空数据、失败、超时和 Token 失效状态。
- 先建立稳定的页面结构,再根据后续图片进行视觉细化。
3. 阶段划分
| 阶段 | 名称 | 主要产出 |
|---|---|---|
| Phase 0 | 项目勘察与接口确认 | 页面地图、接口清单、字段映射表、风险清单 |
| Phase 1 | 前端工程搭建 | 前端应用、路由、环境变量、API 客户端 |
| Phase 2 | 统一设计系统 | 品牌色、字体、按钮、表单、标签、图标、布局规范 |
| Phase 3 | 用户端官网 | 可下滑首页、导航、基金展示、Agent 入口 |
| Phase 4 | 基金数据页面 | 基金列表、详情、历史净值和走势图 |
| Phase 5 | 登录与用户中心 | 登录、注册、身份跳转、账户、持仓、风险测评 |
| Phase 6 | 员工后台基础框架 | 后台壳层、菜单、角色显示、通用状态 |
| Phase 7 | 员工业务页面 | 工作台、客户、投顾、风控、基金数据、设置 |
| Phase 8 | Agent 聊天框 | 右下角浮动入口、聊天面板、消息状态 |
| Phase 9 | 联调与质量验收 | API 联调、权限验证、视觉检查、浏览器验收 |
4. Phase 0:项目勘察与接口确认
4.1 目标
在开发前确认当前后端能力、接口返回格式和页面实际需要的数据,避免前端基于错误字段开发。
4.2 工作内容
- 确认 FastAPI 服务启动地址和 API 前缀。
- 确认统一响应格式
{code, message, data, trace_id}。 - 确认登录返回的 Token 字段和用户信息字段。
- 确认
user_type的实际值。 - 确认后端实际员工角色值,并在前端建立显示映射。
- 整理基金列表接口字段。
- 整理基金历史净值接口字段。
- 整理投顾工作台接口清单。
- 整理风控接口清单。
- 整理 Agent 接口、会话字段和流式/非流式返回方式。
- 记录接口暂不可用、需要登录或需要特定角色的页面。
4.3 产出
- 前端页面路由表。
- API 接口清单。
- API 字段映射表。
- 角色与菜单映射表。
- 接口异常码处理表。
- 待确认问题清单。
4.4 验收标准
- 每个计划开发的页面都有对应接口或明确的空状态方案。
- 不把数据库结构直接暴露给页面组件。
- 关键接口能够通过 Swagger 或实际请求确认返回格式。
5. Phase 1:前端工程搭建
5.1 目标
建立独立、可维护的 PC 前端工程,不侵入现有后端目录和代码。
5.2 建议目录
frontend/
├── app/ # 页面路由
│ ├── page # 用户端首页
│ ├── products # 基金列表
│ ├── products/[code] # 基金详情
│ ├── login # 登录
│ ├── register # 注册
│ ├── account # 用户中心
│ └── admin # 员工后台
├── components/ # 公共 UI 组件
├── features/ # 用户端和后台业务组件
├── lib/ # API、鉴权、格式化工具
├── types/ # TypeScript 类型
├── styles/ # 全局样式和设计变量
└── public/ # Logo、背景图和静态素材
5.3 工作内容
- 初始化 PC 前端应用。
- 配置开发、测试和生产 API 地址。
- 配置 TypeScript 和代码格式化规范。
- 建立基础路由。
- 建立统一 API 客户端。
- 建立 Token 存储和请求拦截逻辑。
- 建立统一接口错误处理。
- 建立页面级 loading、error 和 empty 状态。
- 将提供的背景图复制或引用到前端静态资源目录。
5.4 API 客户端要求
- 所有请求从统一 API 模块发出。
- 自动拼接后端 API 基地址。
- 需要登录的接口自动添加
Authorization: Bearer <token>。 - 收到 401 时清理登录状态并跳转登录页。
- 统一解包后端
data字段。 - 保留
trace_id,便于页面显示错误信息或排查问题。 - 不在组件中重复编写请求地址和鉴权逻辑。
5.5 验收标准
- 前端可以独立启动。
- 首页路由可以打开。
- 可以成功请求一个公开基金接口。
- Token 能够被保存、读取和清理。
- API 错误不会导致页面白屏。
6. Phase 2:统一设计系统
6.1 目标
建立用户端和后台共用的视觉基础,确保两套产品属于同一个华夏基金平台。
6.2 颜色体系
- 主色:沿用后台管理系统的品牌主色,用于主按钮、链接、选中态和重要操作。
- 深蓝:用于用户端首页背景和金融氛围。
- 金色:用于收益、资产、重点数据和基金视觉强调。
- 白色与浅灰:用于用户端内容背景和后台页面背景。
- 深灰:用于正文和后台侧边栏。
- 绿色:成功状态。
- 黄色:提醒状态。
- 红色:风险、错误和危险操作。
颜色需要集中定义为设计变量,禁止在业务页面中大量散落硬编码颜色值。
6.3 公共组件
优先实现以下组件:
- 品牌 Logo 和文字标识。
- 用户端顶部导航。
- 后台侧边栏。
- 后台顶部工具栏。
- 主按钮、次按钮、危险按钮。
- 输入框、下拉框、搜索框。
- 状态标签。
- 统计卡片。
- 数据表格。
- 分页器。
- Modal 弹窗。
- Toast 消息提示。
- Skeleton 加载占位。
- Empty 空数据状态。
- Error 错误状态。
- 基金净值走势图容器。
- 用户头像和角色标识。
- Agent 浮动入口和聊天面板。
6.4 视觉验收标准
- 用户端和后台主色一致。
- 主按钮、链接、标签、图表重点线条使用统一色变量。
- 圆角、边框、阴影和字体层级保持一致。
- 用户端可以更宽松、更有品牌感,但不能出现完全不同的主题。
- 后台保持紧凑、清晰和可扫描。
7. Phase 3:用户端官网首页
7.1 页面形态
- PC 端纵向可下滑长页面。
- 顶部导航固定或在滚动后保持可见。
- 各模块按顺序组织,支持导航锚点跳转。
- 页面底部包含联系入口、员工后台入口、登录注册入口和合规信息。
7.2 页面模块
7.2.1 首屏 Hero
- 品牌名称:华夏基金。
- 主标题体现智能财富管理和长期投资理念。
- 使用指定背景图作为视觉参考。
- 背景采用深蓝金融城市氛围。
- 对图片增加适度遮罩,保障文字可读性。
- 设置“查看基金产品”“登录/注册”等主要按钮。
- 员工后台入口作为次要入口。
7.2.2 品牌介绍
- 展示企业使命:“让财富管理更智能、更普惠”。
- 展示专业、稳健、合规、科技驱动等核心价值。
- 采用宽幅信息模块或简洁分栏布局。
7.2.3 核心服务
建议展示:
- 公募基金产品。
- 智能资产配置。
- 风险评估与适当性服务。
- 投顾服务。
- 客户资产与持仓管理。
7.2.4 基金数据亮点
- 从 API 获取并展示基金产品数量或可用统计数据。
- 展示热门基金或精选基金。
- 展示最新净值、日涨跌幅和风险等级。
- 页面必须标记数据更新时间。
- 无数据时展示稳定的空状态,不使用虚假数字替代。
7.2.5 客户评价或信任模块
- 根据后续提供的图片和文案决定是否保留。
- 如果没有真实客户素材,使用中性占位结构,不伪造客户身份和评价。
7.2.6 风险提示
- 说明基金投资有风险。
- 不使用保证收益、稳赚等表述。
- 风险内容作为正式页面模块展示,不藏在弹窗中。
7.2.7 联系与底部区域
- 公司名称:华夏基金。
- 联系方式和公司信息根据确认后的企业资料填写。
- 提供登录、注册和员工后台入口。
- 预留合规声明、隐私政策和用户协议入口。
7.3 验收标准
- 首页可以顺畅纵向浏览。
- 顶部导航能够定位页面模块。
- 首屏背景、文案和按钮层级清晰。
- 基金数据模块从 API 加载真实数据。
- Agent 入口固定在右下角且不遮挡核心内容。
- 页面滚动时无明显跳动或布局错位。
8. Phase 4:基金数据页面
8.1 基金列表页
页面内容:
- 页面标题和说明。
- 关键词搜索。
- 基金类型筛选。
- 风险等级筛选。
- 在售状态筛选。
- 基金列表或数据表格。
- 分页。
- 基金详情入口。
字段展示:
- 基金代码。
- 基金名称。
- 基金类型。
- 风险等级。
- 最新单位净值。
- 净值日期。
- 基金经理。
- 基金状态。
交互要求:
- 搜索和筛选时显示 loading。
- 筛选条件变化后重新请求 API。
- 无结果时显示空状态。
- 接口错误时提供重试按钮。
- 点击基金行或卡片进入详情页。
8.2 基金详情页
页面结构:
- 基金基本资料。
- 最新净值和累计净值。
- 净值日期和数据更新时间。
- 区间收益指标。
- 历史净值走势图。
- 风险等级和风险提示。
- 申购、赎回或登录操作入口。
走势图要求:
- 调用
/api/products/{product_code}/history。 - 支持净值和收益两种序列展示。
- 支持时间范围选择。
- 展示 tooltip、日期、数值和单位。
- 无历史数据时显示空状态。
- 图表颜色使用统一品牌色,收益重点可使用金色辅助强调。
8.3 验收标准
- 基金列表能够正常加载真实数据。
- 搜索、筛选和分页行为正确。
- 基金详情与列表选择的产品一致。
- 图表数据与后端返回数据一致。
- 页面不显示未经后端返回的虚构净值或收益率。
9. Phase 5:登录、注册与用户中心
9.1 登录页
- 用户名输入。
- 密码输入。
- 登录按钮。
- 注册入口。
- 返回官网入口。
- 登录加载状态。
- 错误提示。
- 登录成功后的身份跳转。
9.2 注册页
- 用户名。
- 手机号。
- 密码。
- 真实姓名。
- 注册按钮。
- 字段校验。
- 用户协议和隐私政策勾选位预留。
- 注册成功提示并引导登录。
9.3 鉴权状态
- 登录成功保存 JWT Token。
- 应用启动时恢复登录状态。
- 调用
/api/auth/me获取当前用户。 - Token 失效时清理状态并跳转登录页。
- 退出登录清理 Token 和用户缓存。
9.4 用户中心页面
- 用户基本信息。
- 账户余额。
- 基金持仓。
- 风险测评入口和状态。
- 申购入口。
- 赎回入口。
- 用户消息或客服入口。
9.5 验收标准
- 普通用户能够注册并登录。
- 登录后能够读取当前用户信息。
- 未登录用户访问受保护页面会被引导登录。
- Token 过期后不会继续展示受保护数据。
- 申购、赎回和风险测评表单有成功、失败和确认反馈。
10. Phase 6:员工后台基础框架
10.1 页面壳层
参考 admin-panel-template 实现:
- 深色固定侧边栏。
- 品牌 Logo 区域。
- 角色相关菜单。
- 顶部工具栏。
- 当前页面标题。
- 通知入口。
- 用户头像和角色显示。
- 退出登录。
- 主内容区域。
10.2 前端角色显示映射
前端统一显示:
投顾专员
风控专员
员工通用
后端返回值仅在前端适配层进行映射。前端不修改后端数据库中的角色值和权限判断。
10.3 菜单规划
投顾专员
- 工作台首页。
- 客户管理。
- 客户持仓。
- 组合诊断。
- 投顾报告。
- 回访记录。
- 待办事项。
- 公共基金数据。
风控专员
- 工作台首页。
- 风控预警。
- 风控工单。
- 基金数据。
- 消息通知。
员工通用
- 工作台首页。
- 公共基金数据。
- 消息通知。
- 个人设置。
10.4 验收标准
- 员工登录后进入后台而不是普通用户中心。
- 侧边栏菜单根据后端用户信息显示。
- 当前角色名称显示为统一前端文案。
- 未授权页面有明确提示或跳转处理。
- 后台布局与参考模板保持一致。
11. Phase 7:员工业务页面
11.1 工作台首页
- 统计卡片。
- 待办事项。
- 客户数量。
- 资产规模或业务指标。
- 风险预警数量。
- 最近活动。
- 根据角色显示不同重点内容。
11.2 客户管理
- 客户列表。
- 关键词搜索。
- 状态筛选。
- 分页。
- 客户详情抽屉或详情页。
- 客户持仓。
- 客户风险等级。
- 客户关系状态。
- 历史投顾报告。
- 敏感信息按后端返回结果展示。
11.3 投顾服务
- 客户组合诊断。
- 基金白名单筛选。
- 标准策略库。
- 投顾建议草稿。
- 沟通话术草稿。
- 回访记录。
- 待办处理。
- 个人绩效报表。
11.4 风控中心
- 风险预警列表。
- 预警状态筛选。
- 预警详情。
- 放行确认弹窗。
- 拦截确认弹窗。
- 冻结确认弹窗。
- 风控工单列表和详情。
- 操作完成后的消息反馈。
危险操作要求:
- 操作按钮使用危险色。
- 必须经过二次确认。
- 显示操作对象和影响范围。
- 请求期间禁用重复提交。
- 成功后刷新相关列表。
11.5 公共基金数据
- 复用用户端基金列表和详情组件。
- 根据后台布局调整为表格优先。
- 展示数据来源和更新时间。
- 允许员工查看历史走势。
11.6 验收标准
- 各角色能看到符合前端规划的菜单。
- 投顾页面能够请求并展示客户和投顾数据。
- 风控页面能够展示预警并调用现有处置接口。
- 危险操作具备确认、loading、成功和失败状态。
- 敏感数据不在前端绕过后端脱敏逻辑。
12. Phase 8:Agent 聊天框
12.1 入口
- 固定在用户端官网右下角。
- 使用统一品牌色的圆形或紧凑型浮动按钮。
- 提供清晰的客服/智能助手图标。
- 不遮挡主要 CTA、基金卡片和页面底部关键内容。
12.2 展开面板
- 点击入口打开聊天框。
- 再次点击或点击关闭按钮收起。
- 固定宽度和高度,避免消息内容改变页面布局。
- 头部显示 Agent 名称和状态。
- 中部显示消息列表。
- 底部显示输入框和发送按钮。
- 支持发送中状态。
- 支持请求失败提示和重新发送。
- 支持空白输入校验。
- 保持聊天滚动位置自动跟随最新消息。
12.3 风格要求
- 使用官网和后台共用的主色、深蓝、白色和中性色。
- 保持与官网按钮相同的圆角和阴影语言。
- 聊天消息区使用清晰的用户消息与 Agent 消息层级。
- 不使用与整体品牌冲突的独立渐变主题。
12.4 接口要求
- 使用现有 Agent 接口。
- 在 API 适配层统一处理会话 ID、用户身份和错误码。
- 如果后端返回流式消息,前端逐段更新消息内容。
- 如果后端返回完整消息,前端按消息完成状态展示。
- 不在前端实现或修改 Agent 业务逻辑。
12.5 验收标准
- 入口始终位于右下角。
- 点击后聊天框可以稳定打开和关闭。
- 消息能够正确显示顺序和发送者。
- 请求期间有明确反馈。
- 失败后用户可以重试。
- 聊天框不会造成页面主要内容错位。
13. Phase 9:API 联调与质量验收
13.1 联调顺序
- 健康检查和 API 基地址确认。
- 登录和注册。
- 当前用户信息。
- 基金列表。
- 基金历史净值。
- 用户账户和持仓。
- 风险测评。
- 投顾工作台。
- 风控预警和处置。
- Agent 聊天接口。
13.2 测试维度
功能测试
- 路由跳转。
- 导航定位。
- 搜索和筛选。
- 分页。
- 登录注册。
- Token 恢复和退出。
- 图表展示。
- 表单提交。
- 后台角色菜单。
- 风控确认操作。
- Agent 收发消息。
状态测试
- 首次加载。
- 数据加载中。
- 数据为空。
- 接口失败。
- 网络超时。
- Token 过期。
- 无权限。
- 重复提交。
视觉测试
- 首屏背景裁切。
- 文案清晰度。
- 长页面滚动。
- 顶部导航固定效果。
- Agent 与页面内容的遮挡关系。
- 后台侧边栏和表格布局。
- 图表、标签、弹窗和按钮的一致性。
浏览器测试
- Chrome PC。
- Edge PC。
- 常见桌面分辨率。
- 大屏显示下的最大内容宽度。
- 页面缩放后的基本可用性。
13.3 数据一致性测试
- 列表中的基金代码与详情页一致。
- 基金详情净值与后端返回一致。
- 图表数据点与历史净值接口一致。
- 页面显示的数据更新时间与接口字段一致。
- 角色显示文案不影响后端请求权限。
14. 交付物
- PC 前端源代码。
- 前端环境变量示例文件。
- API 接口适配层。
- 用户端官网页面。
- 基金列表和详情页面。
- 登录注册和用户中心。
- 员工后台页面。
- Agent 聊天框。
- 前端启动说明。
- 页面路由说明。
- API 字段映射说明。
- 已知问题和待后端确认事项。
15. 依赖与风险
15.1 外部依赖
- FastAPI 服务可正常启动。
- MySQL 中存在基金产品和历史净值数据。
- API 文档、鉴权规则和接口地址可用。
- Agent 接口的请求格式和返回格式明确。
- 背景图具备使用权限或后续提供正式素材。
15.2 技术风险
- 当前项目没有现成前端工程,需要新建前端目录。
- README 描述与实际后端代码存在版本差异,需要以实际接口为准。
- 部分角色名称存在历史命名差异,前端只能做显示映射。
- 部分基金历史数据的
product_id字段存在代码兼容逻辑,前端不得假设数据库字段结构,必须以 API 返回为准。 - 如果 API 没有返回首页所需统计字段,首页只能展示已有数据或采用不依赖真实数值的品牌模块。
15.3 产品风险
- 不得将示例数据误标为真实基金数据。
- 不得在前端使用保证收益或无风险等表述。
- 风险提示必须在基金详情和交易相关页面可见。
- 员工后台的前端菜单隐藏不能替代后端权限校验。
16. 待确认事项
- 前端技术栈和工程目录是否直接新建 Next.js 应用。
- 后端 API 的实际访问地址和跨域配置。
- Agent 接口的具体路径、请求体和返回格式。
- 首页需要展示的正式公司资料、联系方式和合规文案。
- 背景图是否直接使用,或是否需要重新制作带华夏基金品牌的版本。
- 用户端是否允许未登录用户查看全部基金详情。
- 申购、赎回和风险测评页面的具体业务字段。
- 三类员工实际登录账号的后端
user_type和角色返回值。 - 员工通用是否需要查看客户基础信息或只查看公共基金数据。
- 是否需要加入隐私政策、用户协议和风险揭示书页面。
17. 最终验收清单
- PC 前端可以独立启动。
- 用户端首页为可下滑长页面。
- 首页使用指定金融背景视觉方向。
- 用户端和后台品牌色统一。
- 用户端包含登录和注册入口。
- 页面右下角存在统一风格 Agent 入口。
- Agent 聊天框可以打开、关闭和发送消息。
- 基金列表使用 API 真实数据。
- 基金详情展示历史净值和走势图。
- 用户中心展示账户和持仓信息。
- 员工可以进入后台。
- 投顾专员、风控专员、员工通用显示正确。
- 投顾页面和风控页面按角色展示。
- 风控危险操作有二次确认。
- 所有页面有加载、空数据和错误状态。
- Token 失效能够正确处理。
- 不修改后端代码、接口和数据库。