文档
开发文档

Console 与 Admin 迁移

保留现有 React 页面、替换 BFF 与构建依赖的迁移计划

保留 products/oceanway-console 和 products/oceanway-admin 的 React/TypeScript 页面、组件和品牌设计,迁入平台 web/console、web/admin。两仓目前采用 Rsbuild 与 TanStack 相关前端工具;实际版本、依赖和包管理器按迁入时锁文件固定,不在此阶段统一重写为 Next.js。

迁移清单

层处理
页面与组件保留可用交互、表单、筛选、布局与 OceanWay 设计;按真实接口调整
API 客户端原版候选端点逐个审计;/api/oceanway/* 建立旧接口→目标接口→权限→验收矩阵
登录与路由接平台会话;401、403 与平台故障区分;返回地址受控
旧 server/ BFF业务职责转入平台,删除前确认对应接口/权限已替换
旧会话库退出运行链;不做平台会话的第二份权威
类型生成与脚本去掉旧 Core/Contracts 路径,改为本仓 OpenAPI;审计旧构建 gate,不盲搬
静态构建确认 Console/Admin 路由、资源 base、嵌入目录、缓存与 SPA fallback

候选 new-api 路径不能标为已兼容。页面标记为“改接完成”需真实后端和数据库回读证据,不能只用前端 mock。

API 改接顺序

先身份与本人信息 → Key → 模型和适用价 → 使用记录 → 钱包/订单 → 会话安全;Admin 先当前员工权限 → 用户与模型目录 → 价格 → 订单/调整 → 异常核对与审计。P0 功能表见功能需求。

每页登记原请求、返回类型、表单校验、角色、加载/空数据/错误/未知状态、目标契约及测试。尚未实现的可选功能按配置隐藏,不能以保留旧 BFF 完成平台首发。

客户端与安全

金额显示只格式化后端权威值,标明积分与人民币单位。服务凭据、供应 Key 和会话签名密钥不能进入前端包。复制本人完整 Key 使用受保护接口,敏感响应不缓存/埋点。账户切换、退出和权限撤销时失效相关查询缓存。

浏览器 cookie 接口按实际同源/受控跨域策略配置,写入要求 CSRF/Origin。路由 loader 和菜单控制帮助用户导航,后端仍检查对象归属及动作权限。表单超时保留原订单/操作,查询状态后再决定下一步,不自动重复提交资金动作。

共用代码与设计

优先共享生成类型、错误处理、金额格式化及确定复用的基础组件。web/shared 或工作区包形式待审计,不提前强制两前端迁移全部组件。设计规范继续以工程设计规范和 Design 仓库为源,本仓不复制第二套 token 真源。

迁移完成条件

两前端从平台目录独立可构建,并可嵌入服务;刷新深链接、静态资源、API 和登录返回不冲突;P0 业务无旧 Core/BFF/Contracts 运行依赖。保留原仓库直到新入口验收和切换记录完成,再归档。归档不等于删除历史快照。

On this page