下面按可以直接交给产品、前端、后端和测试使用的方式整理。对于目前通过黑盒检查确认的内容,我标记为“现状”;无法从前端确认的后端规则,标记为“待后端确认”,避免把推测当成既定需求。
会员推荐关系 + 新零售商城系统开发文档
文档版本: V1.0
文档类型: 产品/技术开发规格说明
适用角色: 产品、UI/UX、前端、后端、测试、运维、安全
系统形态: 移动 Web / 服务端渲染 MPA
当前文档依据: 登录后前端黑盒检查结果
说明: 本文档用于建立第一版开发基线,不代表已完成后端源码、数据库、支付网关及管理后台审计。
1. 项目概述
1.1 系统定位
本系统由两个业务子系统组成:
会员推荐关系平台
├── 登录
├── 会员中心
├── 邀请注册
├── 会员等级升级
├── 下级升级审核
└── 团队管理
新零售商城
├── 商城首页
├── 分类/专区
├── 商品详情
├── 购物车
├── 收货地址
├── 订单
├── 资产/积分
├── 积分转账
├── 提现
├── 收藏
├── 关注
└── 浏览记录整体业务关系:
用户
│
├── 注册/登录
│
├── 会员体系
│ ├── 当前会员等级
│ ├── 推荐关系
│ ├── 申请升级
│ ├── 审核下级
│ └── 查看团队
│
└── 商城体系
├── 浏览商品
├── 加入购物车
├── 提交订单
├── 支付
├── 收货
└── 积分资产2. 技术现状
2.1 前端现状
现有系统属于传统多页面移动 Web:
- 服务端渲染 MPA
- 普通 URL 跳转 + 整页刷新
- jQuery AJAX 进行局部数据提交
- 使用 RequireJS
- 使用 WeUI
- 使用 Bootstrap
- 使用 Font Awesome
- 使用 Swiper
- 使用 tmodjs
- 多套历史 CSS / JS 并存
- 存在
javascript:形式的交互链接
主要路由形态:
/mob/ucenter
/mob/UCenter/...
/mob/Catalog/...
/mob/account/...2.2 推荐的新版本架构
如果此次是“重构旧系统”,建议保持 MPA/服务端渲染模式,避免为了技术升级直接引入 SPA,第一阶段重点解决业务、权限、安全和体验统一。
建议:
Browser
│
▼
Nginx / CDN
│
▼
Web Application
├── Auth
├── Member
├── Team
├── Upgrade
├── Mall
├── Order
├── Asset
└── Account
│
▼
Database
│
├── User
├── Member
├── Relation
├── Product
├── Order
└── Asset3. 用户角色与权限
3.1 角色定义
游客
未登录用户。
权限:
- 浏览登录页
- 注册
- 浏览注册页
- 访问公开商城内容(是否允许需产品确认)
普通会员
已经登录的用户。
权限:
- 查看个人中心
- 查看会员等级
- 邀请/帮助注册
- 申请升级
- 查看商城
- 加购
- 下单
- 查看订单
- 查看资产
- 管理收货地址
- 收藏/关注/浏览记录
具备审核权限的会员
当前检查账号存在该能力。
额外权限:
- 查看下级升级申请
- 查看申请成员信息
- 同意升级
- 拒绝升级
管理员
本次检查没有覆盖管理后台。
需要单独定义:
- 用户管理
- 等级管理
- 推荐关系管理
- 商品管理
- 订单管理
- 财务管理
- 积分管理
- 审核日志
- 系统配置
4. 会员等级体系
现有业务呈现为逐级升级。
例如:
一星会员
↓
二星会员
↓
三星会员
↓
...4.1 升级规则
当前检查结果:
当前等级只能申请下一等级。
因此前端不能允许:
一星 → 三星
一星 → 五星正确流程:
当前等级 = N
允许升级等级 = N + 14.2 后端必须强制校验
前端隐藏按钮不等于安全控制。
后端必须校验:
当前用户是否登录
↓
当前用户是否有会员身份
↓
当前等级是否允许升级
↓
目标等级是否 = 当前等级 + 1
↓
是否已经存在未处理申请
↓
是否满足升级条件
↓
创建升级申请5. 推荐关系体系
5.1 推荐关系
注册时支持通过 URL 中的 tid 指定推荐人。
示例:
/register?tid=10001页面进入后:
URL tid
↓
读取推荐人
↓
显示/预填邀请码
↓
用户完成注册
↓
创建 User
↓
创建推荐关系5.2 推荐关系数据要求
建议不要只在用户表保存一个简单邀请码,而是建立独立关系模型:
member_relation
id
parent_user_id
child_user_id
relation_level
created_at
status其中:
parent_user_id:推荐人child_user_id:被推荐人relation_level:关系层级status:关系状态
即便当前页面只展示直接下级,也应为以后扩展多级团队保留数据结构。
6. 全局导航结构
建议新版本统一为:
工作台
商城
团队
订单
我的对应:
工作台
├── 会员等级
├── 升级
├── 审核
├── 邀请
└── 公告
商城
├── 首页
├── 分类
├── 专区
├── 商品
└── 购物车
团队
├── 团队概况
└── 团队成员
订单
├── 全部
├── 待付款
├── 待发货
├── 待收货
└── 已完成
我的
├── 会员资料
├── 资产
├── 收藏
├── 关注
├── 浏览记录
├── 收货地址
├── 设置
└── 客服7. 页面清单
| 编号 | 页面 | 当前用途 | 建议路由 |
|---|---|---|---|
| P01 | 登录 | 用户登录 | /mob/login |
| P02 | 注册 | 新用户注册 | /mob/register |
| P03 | 帮助注册 | 带推荐人注册 | /mob/register?tid=xxx |
| P04 | 会员中心 | 会员工作台 | /mob/ucenter |
| P05 | 升级申请 | 申请下一等级 | /mob/UCenter/upgrade |
| P06 | 升级记录 | 查询升级历史 | /mob/UCenter/upgrade/history |
| P07 | 下级审核 | 审核下级升级申请 | /mob/UCenter/upgrade/review |
| P08 | 审核详情 | 查看申请人及申请信息 | /mob/UCenter/upgrade/review/detail |
| P09 | 团队成员 | 查看直接下级 | /mob/UCenter/team |
| P10 | 商城首页 | 商品入口 | /mob/Catalog/index |
| P11 | 分类页 | 商品分类 | /mob/Catalog/category |
| P12 | 专区页 | 专题/专区商品 | /mob/Catalog/zone |
| P13 | 商品详情 | 查看商品 | /mob/Catalog/product |
| P14 | 购物车 | 管理购物车 | /mob/Catalog/cart |
| P15 | 地址列表 | 管理收货地址 | /mob/account/address |
| P16 | 地址编辑 | 新增/编辑地址 | /mob/account/address/edit |
| P17 | 确认订单 | 确认购买信息 | /mob/order/confirm |
| P18 | 订单列表 | 查看订单 | /mob/order/list |
| P19 | 订单详情 | 查看订单状态 | /mob/order/detail |
| P20 | 商城个人中心 | 商城用户中心 | /mob/account |
| P21 | 资产中心 | 查看积分/资产 | /mob/account/asset |
| P22 | 积分转账 | 会员之间转账积分 | /mob/account/transfer |
| P23 | 提现 | 积分/资产提现 | /mob/account/withdraw |
| P24 | 个人资料 | 编辑账号资料 | /mob/account/profile |
| P25 | 收藏 | 商品收藏 | /mob/account/favorite |
| P26 | 关注 | 商品/店铺关注 | /mob/account/follow |
| P27 | 浏览记录 | 浏览历史 | /mob/account/history |
| P28 | 客服中心 | 联系客服 | /mob/service |
| P29 | 关于我们 | 企业/资质介绍 | /mob/about |
| P30 | 商家入驻 | 商家申请入口 | /mob/merchant |
以上建议路由是新版本规划,不表示现网站一定使用这些完整路径。
8. 页面详细功能与逻辑
P01 登录页
页面目标
完成用户身份认证。
页面元素
- 手机号/账号
- 密码
- 登录按钮
- 注册入口
- 忘记密码入口
- 推荐注册入口
核心逻辑
输入账号密码
↓
前端基本校验
↓
POST 登录接口
↓
服务端验证
↓
创建登录会话
↓
跳转 /mob/ucenter后端要求
必须:
- HTTPS
- 密码不可明文存储
- 密码哈希使用安全算法
- 登录失败限流
- 防暴力破解
- Session/Token 安全
- Cookie 设置 Secure
- HttpOnly
- SameSite
- 登录日志
异常
账号不存在
密码错误
账号被禁用
登录频率过高
系统异常P02 注册页
注册字段
现状确认:
- 手机号
- 微信号
- 姓名
- 密码
- 确认密码
- 推荐人/邀请码
当前前端未看到短信验证码或图形验证码。
建议流程
打开注册页
↓
读取 tid
↓
解析推荐人
↓
填写注册信息
↓
验证手机号
↓
验证密码
↓
提交
↓
创建用户
↓
创建会员
↓
建立推荐关系
↓
注册成功后端必须校验
不能信任前端传入的:
- 推荐人 ID
- 会员等级
- 用户 ID
- 注册状态
P03 帮助注册页
功能
用于推荐人协助新用户完成注册。
核心参数
tid = 推荐人 ID页面逻辑
链接进入
↓
读取 tid
↓
查询推荐人
↓
展示推荐人信息
↓
用户填写注册信息
↓
完成注册异常
tid 不存在
tid 已失效
推荐关系无法建立
推荐人被禁用P04 会员中心 /mob/ucenter
页面定位
会员系统的工作台。
页面内容
建议包含:
会员头像
姓名
会员等级
推荐码
公告
邀请注册
申请升级
审核下级
团队
进入商城现有界面为:
蓝色插画头部
会员信息
公告区域
2 × 3 功能宫格按钮显示规则
等级信息
↓
计算当前权限
↓
显示对应功能例如:
有升级权限 → 显示“申请升级”
有审核权限 → 显示“审核”
有团队权限 → 显示“团队”但最终权限必须由后端决定。
P05 会员升级申请页
功能
申请升级到下一会员等级。
页面字段
- 当前等级
- 目标等级
- 升级说明
- 提交按钮
- 当前审核状态
现有接口
POST /mob/UCenter/sqsj_ck_save当前前端提交时存在用户 ID 参数。
新版本建议
不要由浏览器决定:
user_id
current_level
target_level服务端应该从登录 Session 获取用户。
请求示例:
{
"remark": ""
}服务端自行读取:
currentUserId
currentLevel
targetLevel状态
建议:
未申请
待审核
已通过
已拒绝
已取消流程:
未申请
↓
提交
↓
待审核
├── 同意 → 已通过
└── 拒绝 → 已拒绝P06 升级历史页
功能
展示所有升级申请记录。
列表字段
| 字段 | 说明 |
|---|---|
| 申请等级 | 申请目标等级 |
| 当前等级 | 提交时等级 |
| 状态 | 待审核/通过/拒绝 |
| 申请时间 | 创建时间 |
| 审核时间 | 审核时间 |
| 审核人 | 操作人 |
| 审核说明 | 拒绝/通过原因 |
空状态
不能只留白。
应显示:
暂无升级申请记录并提供返回会员中心入口。
P07 下级升级审核页
功能
审核有权限成员的直接下级升级申请。
列表字段
- 姓名
- 手机号
- 微信号
- 当前等级
- 申请等级
- 申请时间
- 状态
权限
必须满足:
当前用户已登录
AND
具有审核权限重点安全要求
前端虽然可以提交申请 ID:
request_id但服务端必须检查:
request_id 是否存在
↓
该申请是否待审核
↓
申请人是否属于当前审核人的授权范围
↓
当前审核人是否具有对应等级审核权限否则存在越权审核风险。
P08 升级审核详情页
页面内容
申请人资料
当前会员等级
申请目标等级
申请时间
联系方式
申请说明
审核历史操作
同意
拒绝现有前端动作码:
90 = 同意
30 = 拒绝现有接口
POST /mob/UCenter/sqsj_ck_update新版本建议
不要继续使用魔法数字。
推荐:
{
"request_id": 10001,
"action": "approve",
"remark": ""
}或:
approve
reject审核成功后
同意:
升级申请 → 已通过
会员等级 → +1
审核记录 → 写入
操作人 → 写入
操作时间 → 写入拒绝:
升级申请 → 已拒绝
会员等级不变
写入拒绝原因整个升级动作必须事务化。
P09 团队成员页
功能
查看推荐团队成员。
现状:
- 展示直接成员数量
- 展示成员等级
- 展示联系方式
- 暂无复杂多层级树
建议字段
成员
会员等级
注册时间
状态
联系方式隐私要求
不要完整显示:
13812345678建议:
138****5678微信号也根据业务需要脱敏。
后续扩展
可增加:
一级团队
二级团队
三级团队
团队总人数
等级分布
注册趋势P10 商城首页
页面目标
商品浏览和商城入口。
当前视觉
- 高饱和圆形图标
- 三列商品网格
- 红色价格
- 固定底部导航
建议内容
搜索
Banner
专区
分类
推荐商品
热销商品
最新商品商品卡片
商品图
商品名称
价格
销量
积分抵扣P11 分类页
功能
展示商品分类。
页面结构
一级分类
↓
二级分类
↓
商品列表功能
- 分类切换
- 商品排序
- 商品筛选
- 分页/无限滚动
P12 专区页
功能
展示运营配置的专题专区。
例如:
新品专区
热销专区
推荐专区
品牌专区专区应由后台配置,而不是写死在前端。
P13 商品详情页
页面内容
商品图片
商品名称
售价
积分抵扣规则
库存
规格
商品描述
购买数量
收藏
加入购物车
立即购买操作逻辑
加入购物车
选择规格
↓
检查库存
↓
写入/更新购物车
↓
提示加入成功立即购买
选择规格
↓
选择数量
↓
检查库存
↓
进入确认订单合规要求
当前商品详情存在较多医疗/健康功效描述。
开发阶段不应直接默认沿用原文案。
商品宣传文案应经过业务/法务审核,并建立后台内容审核机制。
P14 购物车
功能
管理待购买商品。
页面内容
商品
规格
数量
单价
小计
选择框
全选
删除
合计
去结算计算
商品小计 = 商品单价 × 数量
订单商品金额
= Σ 商品小计
积分抵扣
= 按系统积分规则计算
最终应付
= 商品金额 - 优惠 - 积分抵扣当前页面口径:
100 积分 = 1 元抵扣最终结算金额必须由服务端重新计算。
P15 收货地址列表
功能
管理收货地址。
页面内容
收货人
手机号
省市区
详细地址
默认地址
编辑
删除
新增地址规则
只能有一个默认地址修改默认地址时:
旧默认地址 → false
新默认地址 → true应使用数据库事务。
P16 地址编辑页
字段
- 收货人姓名
- 手机号
- 省
- 市
- 区
- 详细地址
- 是否默认
校验
- 收货人不能为空
- 手机号格式正确
- 地址不能为空
- 长度限制
- 特殊字符处理
P17 确认订单页
页面内容
收货地址
商品
规格
数量
商品金额
运费
优惠
积分抵扣
应付金额
提交订单核心流程
购物车/立即购买
↓
读取当前地址
↓
重新获取商品价格
↓
重新验证库存
↓
重新计算积分
↓
生成订单
↓
锁定库存
↓
进入支付不能直接信任前端:
price
discount
points
totalP18 订单列表
现有商城个人中心提供:
待付款
待收货
订单建议扩展:
全部
待付款
待发货
待收货
已完成
售后页面状态
每个订单显示:
订单编号
下单时间
商品
数量
金额
订单状态
操作按钮P19 订单详情
页面内容
订单状态
订单编号
下单时间
支付时间
发货时间
收货时间
商品信息
收货地址
费用明细
商品金额
运费
优惠
积分抵扣
实付金额
操作记录状态建议
待付款
↓
已付款/待发货
↓
已发货
↓
待收货
↓
已完成异常状态:
已取消
退款中
已退款P20 商城个人中心
功能
商城侧用户总入口。
现有模块包括:
待付款
待收货
订单
资产
资料
地址
关注
收藏
浏览记录建议页面统一为:
用户信息
会员等级
订单状态入口
资产
地址
收藏
关注
浏览记录
设置
客服P21 资产中心
当前业务模型
商城资产采用积分模型。
页面提示:
100 积分抵扣 1 元页面内容
当前积分
可用积分
冻结积分
积分明细
转账
提现建议增加积分流水
每一次资产变化都必须记录:
流水 ID
用户 ID
变动类型
变动前余额
变动金额
变动后余额
关联业务单号
备注
时间例如:
购物抵扣
积分转入
积分转出
奖励
人工调整
提现
冻结
解冻P22 积分转账
功能
会员之间转移积分。
建议流程
输入对方账号
↓
查询目标用户
↓
显示目标用户脱敏信息
↓
输入积分数量
↓
验证余额
↓
确认转账
↓
生成资金流水
↓
扣减转出方积分
↓
增加接收方积分强制要求
必须使用数据库事务:
BEGIN
扣减 A
增加 B
写入 A 流水
写入 B 流水
写入业务流水
COMMIT任何一步失败:
ROLLBACKP23 提现
当前问题
现有提现流程要求:
姓名
银行名称
银行卡号
身份证号但资料编辑页面对应银行相关字段处于隐藏状态,形成业务闭环阻断。
推荐新流程
提现
↓
检查实名资料
↓
检查银行卡资料
↓
检查积分/资产余额
↓
输入提现数量
↓
确认提现
↓
创建提现申请
↓
进入审核提现状态建议
待审核
审核中
已通过
已打款
已拒绝
已取消敏感信息
银行卡号和身份证号不能完整展示。
例如:
**** **** **** 1234服务端日志中也不应记录完整敏感数据。
P24 个人资料
功能
管理用户基本资料。
现有资料
- 姓名
- 联系信息
- 微信号
- 部分银行卡/身份信息
建议拆分
基础资料
头像
姓名
手机号
微信号实名资料
真实姓名
身份证信息银行资料
银行名称
银行卡号敏感资料建议独立页面,并设置权限。
P25 收藏
功能
用户收藏商品。
操作
商品详情
↓
点击收藏
↓
写入 Favorite再次点击:
取消收藏列表支持:
- 分页
- 删除
- 进入商品详情
P26 关注
功能
当前商城个人中心存在“关注”入口。
开发时需要明确关注对象:
商品
店铺
品牌
专区目前从黑盒检查结果不能确认具体对象,应在产品阶段最终定义。
P27 浏览记录
功能
记录用户浏览商品。
建议:
用户
商品
首次浏览时间
最后浏览时间
浏览次数同一商品建议合并记录,而不是无限写入重复数据。
P28 客服中心
当前问题
现有“客服中心”存在错误链接,实际指向与客服无关的宣传文章。
新版本
应明确提供:
客服电话
客服微信
在线客服
客服时间
常见问题
提交工单至少保证点击客服中心后不会跳转到无关内容。
P29 关于我们
当前状态
主要展示经营资质/营业执照。
建议
公司简介
经营主体
营业执照
联系地址
联系方式
隐私政策
用户协议
商城规则资质图片建议:
- 压缩
- 防篡改
- 提供清晰查看
- 不暴露不必要的内部信息
P30 商家入驻
当前状态
没有在线申请流程,只提示联系客服。
两种实现方案
方案 A:客服申请
商家入驻
↓
展示入驻条件
↓
联系客服方案 B:在线申请
公司信息
营业执照
联系人
手机号
经营类目
银行资料
提交
↓
平台审核如果后续发展为平台型商城,建议直接设计为独立的商户体系。
9. 核心业务流程
9.1 注册流程
游客
↓
注册页
↓
输入推荐人 tid
↓
填写手机号/微信/姓名/密码
↓
服务端校验
↓
创建用户
↓
创建会员
↓
建立推荐关系
↓
登录
↓
会员中心9.2 会员升级流程
会员中心
↓
查看当前等级
↓
申请升级
↓
系统确认目标等级 = 当前等级 + 1
↓
创建申请
↓
待审核
↓
审核人查看
├── 同意
│ ↓
│ 更新会员等级
│ ↓
│ 申请完成
│
└── 拒绝
↓
记录原因
↓
申请结束9.3 商品购买流程
商城
↓
分类/专区
↓
商品详情
├── 加购物车
│ ↓
│ 购物车
│
└── 立即购买
↓
确认订单
↓
地址
↓
服务端计算金额
↓
创建订单
↓
支付
↓
待发货
↓
已发货
↓
待收货
↓
已完成9.4 积分转账流程
资产中心
↓
积分转账
↓
输入目标账号
↓
确认目标用户
↓
输入数量
↓
验证余额
↓
确认
↓
事务扣款/入账
↓
生成双方流水9.5 提现流程
资产中心
↓
提现
↓
检查实名信息
↓
检查银行卡
↓
检查余额
↓
提交金额
↓
创建提现单
↓
人工/系统审核
↓
通过
↓
打款
↓
完成10. 推荐数据模型
以下为建议的数据结构。
users
id
mobile
password_hash
wechat
real_name
avatar
status
created_at
updated_atmembers
id
user_id
level_id
member_status
created_at
updated_atmember_levels
id
name
level_code
level_sort
upgrade_enabled
statusmember_relations
id
parent_user_id
child_user_id
relation_level
status
created_atupgrade_requests
id
user_id
from_level_id
to_level_id
status
remark
reviewer_id
review_remark
created_at
reviewed_atproducts
id
category_id
name
cover
description
price
points_price
stock
status
created_at
updated_atproduct_skus
id
product_id
sku_code
specification
price
stock
statuscarts
id
user_id
sku_id
quantity
created_at
updated_ataddresses
id
user_id
receiver
mobile
province
city
district
detail
is_default
created_at
updated_atorders
id
order_no
user_id
status
product_amount
freight_amount
discount_amount
points_discount
payable_amount
receiver_snapshot
created_at
paid_at
shipped_at
completed_atorder_items
id
order_id
product_id
sku_id
product_name_snapshot
sku_name_snapshot
price_snapshot
quantity
subtotal订单中的商品名称、价格、规格必须保存快照,避免商品后续修改影响历史订单。
points_accounts
id
user_id
available_points
frozen_points
updated_atpoints_transactions
id
user_id
type
amount
balance_before
balance_after
reference_type
reference_id
remark
created_atwithdrawal_requests
id
user_id
amount
status
bank_account_id
reviewer_id
review_remark
paid_at
created_at
updated_at11. 权限模型
权限建议不要通过前端按钮控制实现。
用户
↓
角色
↓
权限
↓
业务数据范围例如:
upgrade.apply
upgrade.review
team.view
order.view
order.create
asset.view
asset.transfer
asset.withdraw同时增加数据范围:
本人
直接下级
全部团队
全部用户特别是审核权限,需要同时验证:
功能权限
+
数据权限12. API 设计规范
12.1 请求规范
推荐:
POST /api/member/upgrade/apply
Content-Type: application/json请求:
{
"remark": ""
}不建议:
{
"user_id": 123,
"level": 3
}因为这些字段属于服务端可以从 Session/数据库确定的内容。
12.2 返回规范
建议统一:
{
"code": 0,
"message": "success",
"data": {}
}错误:
{
"code": 4001,
"message": "当前会员等级不允许升级",
"data": null
}12.3 HTTP 状态码
建议:
200 成功
400 参数错误
401 未登录
403 无权限
404 数据不存在
409 状态冲突
422 业务校验失败
429 请求过于频繁
500 服务端异常13. 安全要求
P0
HTTPS
全站强制:
HTTP → 301 → HTTPS登录、注册、订单、资料、银行卡、积分操作全部禁止明文 HTTP。
Session 安全
Cookie 至少:
Secure
HttpOnly
SameSite密码
禁止:
明文存储
可逆加密存储
日志输出密码使用安全密码哈希。
服务端授权
所有关键接口必须进行:
身份认证
权限认证
数据归属检查
状态检查CSRF
对 Cookie Session 模式的 POST/PUT/DELETE 接口增加 CSRF 防护。
参数篡改
重点检查:
user_id
request_id
order_id
points
price
level_id
address_id不能仅根据前端传值执行。
14. 隐私要求
目前页面直接展示完整:
手机号
微信号建议:
手机号:138****5678
微信号:wx****123同时:
身份证号脱敏
银行卡号脱敏
日志脱敏
接口返回脱敏
错误页面脱敏15. UI/UX 统一要求
目前存在:
会员系统
商城
账户系统三套视觉语言。
新版本应统一:
色彩
定义:
Primary
Success
Warning
Danger
Text
Secondary
Background
Border字号
统一:
12
14
16
18
20
24页面容器
移动端建议:
width: 100%
max-width: 750px
margin: auto桌面环境不能继续无限拉伸。
底部导航
建议统一:
工作台 | 商城 | 团队 | 订单 | 我的16. 响应式要求
手机
重点支持:
375px
390px
414px
428px平板/桌面
建议限制:
max-width: 750px避免当前 1280px 视口下:
- 图标无限放大
- 商品无限拉宽
- 内容失去移动端比例
17. 空状态设计
所有列表都必须有明确状态。
例如:
暂无升级记录
暂无团队成员
暂无订单
暂无收藏商品
暂无浏览记录
暂无收货地址
暂无积分流水
暂无提现记录不能使用:
空白页面
大片留白
只有一个返回按钮18. 状态与审计要求
涉及资金/等级/权限的操作必须记录审计日志。
至少记录:
操作人
操作类型
目标对象
操作前状态
操作后状态
IP
User-Agent
时间
业务单号
结果
失败原因重点业务:
会员升级
升级审核
积分转账
提现
订单状态变化
人工资产调整19. 需要重点核查的后端问题
当前黑盒检查无法直接确定以下内容,开发上线前必须进行接口/源码/数据库审计:
| 项目 | 当前结论 | 开发要求 |
|---|---|---|
| HTTPS | 当前存在 HTTP | 必须整改 |
| 密码存储 | 未确认 | 必须确认安全哈希 |
| CSRF | 前端未看到 Token | 必须核查 |
| 越权 | 前端携带 ID | 必须接口测试 |
| 登录限流 | 未确认 | 必须增加 |
| 验证码 | 前端未发现 | 需要产品+安全评估 |
| Cookie 安全 | 未确认 | 必须检查 |
| 订单价格校验 | 未确认 | 必须服务端计算 |
| 积分并发控制 | 未确认 | 必须事务/锁 |
| 提现审核 | 部分流程异常 | 必须重新设计 |
| 会员等级数据源 | 当前存在两种展示 | 必须统一 |
| 数据库 | 未检查 | 需后端审计 |
| 支付网关 | 未触发 | 需单独测试 |
| 后台管理 | 未检查 | 单独建立需求 |
20. 已发现问题对应开发任务
P0
TASK-001 HTTPS 全站改造
TASK-002 登录/Session 安全
TASK-003 密码存储核查
TASK-004 CSRF 防护
TASK-005 服务端权限校验
TASK-006 IDOR/越权接口测试
TASK-007 登录限流
TASK-008 敏感数据脱敏P1
TASK-101 提现资料闭环
TASK-102 会员等级数据统一
TASK-103 修复客服错误链接
TASK-104 修复提现页面错误标题
TASK-105 统一积分规则
TASK-106 重写会员/商城业务说明
TASK-107 完善审核日志P2
TASK-201 统一 Design System
TASK-202 统一底部导航
TASK-203 响应式优化
TASK-204 CSS/JS 依赖清理
TASK-205 移除 javascript: 链接
TASK-206 无障碍优化
TASK-207 完善空状态
TASK-208 完善错误提示
TASK-209 页面性能优化21. 前端开发规范
页面层
推荐:
Page
├── Component
├── Service/API
├── Validator
└── State不允许
页面直接拼接敏感业务逻辑
页面自行决定用户权限
页面自行计算最终订单金额
页面自行判断会员等级是否可以升级应由服务端决定
会员等级
升级资格
审核权限
商品最终价格
库存
积分余额
提现余额
订单状态22. 测试重点
注册
正常注册
重复手机号
非法手机号
弱密码
密码不一致
不存在 tid
失效 tid
重复推荐关系登录
正确密码
错误密码
禁用账号
连续错误
高频登录
Session 失效
退出登录升级
正常升级
重复申请
跨级申请
伪造 user_id
伪造 request_id
越权审核
重复审核
审核后再次操作团队
查看本人团队
查看他人团队
伪造 user_id
联系方式脱敏商城
库存不足
价格被修改
SKU 被删除
购物车价格变化
订单重复提交
重复支付
订单越权查看积分
余额不足
负数
小数
超额
重复提交
并发转账
自己给自己转账
伪造 user_id提现
资料缺失
余额不足
超额提现
重复提现
修改银行卡后提现
审核重复操作
越权查看提现记录23. 验收标准
页面层
每个页面必须满足:
正常进入
正常返回
正常加载
错误可提示
空状态明确
无权限正确拦截
移动端布局正常业务层
关键操作必须做到:
前端校验
+
后端校验
+
数据库状态校验
+
审计日志安全层
上线前必须通过:
HTTPS 检查
认证测试
授权测试
越权测试
CSRF 测试
XSS 测试
SQL 注入测试
暴力破解测试
敏感信息检查
Session 安全检查24. 第一阶段开发建议
建议不要一次同时重写全部商城。
第一阶段优先完成:
1. 登录/注册
2. 会员中心
3. 推荐关系
4. 会员升级
5. 升级审核
6. 团队
7. 个人中心
8. 统一权限
9. HTTPS/安全基础设施第二阶段:
商城首页
分类
专区
商品详情
购物车
地址
订单第三阶段:
积分
转账
提现
商家
客服
运营后台25. 推荐最终系统结构
最终建议统一成以下信息架构:
┌─────────────┐
│ 登录 │
└──────┬──────┘
│
┌──────▼──────┐
│ 工作台 │
└──────┬──────┘
│
┌────────────────┼────────────────┐
│ │ │
┌────▼────┐ ┌────▼────┐ ┌────▼────┐
│ 会员体系 │ │ 团队 │ │ 公告 │
└────┬────┘ └─────────┘ └─────────┘
│
┌────┼───────────────┐
│ │ │
升级申请 审核 邀请注册
│ │
└────┴───────┐
│
┌────▼─────┐
│ 商城 │
└────┬─────┘
│
┌──────────┼───────────┐
│ │ │
分类 商品详情 购物车
│ │ │
└──────────┼───────────┘
│
┌───▼────┐
│ 订单 │
└───┬────┘
│
┌───▼────┐
│ 我的 │
└───┬────┘
│
┌───────────┼────────────┐
│ │ │
资产 地址 资料
│
┌───┴─────┐
│ │
转账 提现26. 开发交付物建议
前端:
页面清单
路由表
UI 组件规范
接口调用层
权限判断
表单校验
响应式适配后端:
数据库 ER 图
API 文档
权限模型
会员等级规则
订单状态机
积分账本
提现流程
审计日志测试:
测试用例
接口测试
权限测试
越权测试
流程测试
兼容性测试
安全测试运维:
HTTPS
域名
证书
日志
监控
备份
告警
数据库备份27. 本文档中的“现状”和“建议”边界
已从前端检查结果确认
会员中心存在
推荐注册存在
逐级升级存在
升级审核存在
团队页存在
商城存在
购物车/订单存在
资产/积分存在
转账/提现入口存在
个人中心存在
客服入口存在
关于我们存在
商家入驻入口存在仍需后端确认
真实数据库结构
真实 API 完整清单
服务端权限规则
会员等级计算规则
推荐关系深度
积分产生规则
积分冻结规则
提现结算规则
支付方式
库存锁定机制
退款机制
订单超时机制
密码哈希方式
CSRF 防护
接口限流
管理员权限28. 开发原则
本项目后续开发建议遵循四个原则:
第一,前端负责交互,后端负责最终业务判断。
第二,会员、商城、资产三个领域的数据模型必须明确分层,但用户身份保持统一。
第三,涉及会员等级、积分、提现、订单等资产性操作必须具备事务和审计能力。
第四,新版本先统一业务逻辑和设计体系,再处理历史代码和技术债务,避免继续形成新的多套模板。
这份已经可以作为 V1 开发总规格文档 使用。下一步实际进入开发时,最适合继续拆成三份:《页面/原型需求文档》、 《API 接口文档》、 《数据库 ER + 字段设计文档》,这样前后端可以直接按任务拆分开发。



