本文档旨在详细说明CRMEB系统中会员管理模块的设计架构、核心功能、代码实现及开发规范,为系统开发人员提供完整的开发参考。
本文档适用于CRMEB系统开发人员、维护人员及二次开发人员,用于指导会员管理模块的开发、扩展和维护工作。
| 术语 | 解释 |
|---|---|
| 会员等级 | 基于用户经验值划分的等级体系,不同等级享有不同权益 |
| 经验值 | 用户通过各种行为获得的数值,用于提升会员等级 |
| 会员权益 | 不同会员等级享有的专属福利,如折扣、优惠券等 |
| 会员卡片 | 展示会员等级、有效期、权益等信息的可视化卡片 |
| 积分 | 用户通过各种行为获得的可用于消费的数值 |
| 积分商城 | 用于兑换商品或服务的积分兑换平台 |
| 会员有效期 | 会员等级的有效期限,过期后可能降级或失效 |
系统采用分层架构设计,严格遵循MVC设计模式:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Models │ │ Daos │ │ Services │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
└───────────────────────┼───────────────────────┘
│
┌─────────────────┐
│ Controllers │
└─────────────────┘
│
┌─────────────────┐
│ Routes │
└─────────────────┘
会员相关模型:
UserLevel.php - 用户实际会员等级信息模型SystemUserLevel.php - 系统会员等级配置模型User.php - 用户基本信息模型,包含经验值、积分等字段会员管理Services:
UserLevelServices.php - 会员等级设置与管理,自动检测用户升级条件UserBillServices.php - 积分增加与扣除,积分记录管理UserServices.php - 用户基本信息管理,包括等级、经验值、积分等会员控制器:
UserLevel.php - 会员等级管理控制器User.php - 用户管理控制器,包含等级、经验值、积分等管理功能会员路由:
user.php - 包含会员管理相关的API路由| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 等级ID |
| name | varchar(20) | 等级名称 |
| icon | varchar(255) | 等级图标 |
| bg | varchar(255) | 等级背景图 |
| grade | int(10) | 等级 |
| experience_min | int(10) | 最低经验值 |
| experience_max | int(10) | 最高经验值 |
| discount | decimal(10,2) | 折扣比例 |
| status | tinyint(1) | 状态(0-禁用,1-启用) |
| is_show | tinyint(1) | 是否显示(0-隐藏,1-显示) |
| sort | int(10) | 排序 |
| add_time | int(10) | 添加时间 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 记录ID |
| uid | int(10) | 用户ID |
| level_id | int(10) | 会员等级ID |
| is_forever | tinyint(1) | 是否永久(0-否,1-是) |
| start_time | int(10) | 开始时间 |
| end_time | int(10) | 结束时间 |
| status | tinyint(1) | 状态(0-过期,1-有效) |
| add_time | int(10) | 添加时间 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| uid | int(10) unsigned | 用户ID |
| user_level | int(10) | 当前会员等级ID |
| experience | int(10) | 经验值 |
| integral | int(10) | 积分 |
| sign_num | int(10) | 连续签到天数 |
| sign_integral | int(10) | 已领取签到积分 |
| // 其他用户信息字段 | // 数据类型 | // 描述 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 账单ID |
| uid | int(10) | 用户ID |
| category | varchar(20) | 资金类型(integral-积分,experience-经验值) |
| type | varchar(20) | 变动类型(sign-签到,order-订单,invite-邀请) |
| pm | tinyint(1) | 收支方向(1-收入,0-支出) |
| number | varchar(50) | 流水号 |
| money | decimal(10,2) | 变动金额 |
| balance | decimal(10,2) | 变动后余额/积分/经验值 |
| mark | varchar(255) | 备注 |
| add_time | int(10) | 添加时间 |
/adminapi/v1/user/level/list/adminapi/v1/user/level/create/adminapi/v1/user/user_level/list/adminapi/v1/user/user_level/give/{uid}/adminapi/v1/user/integral/list/adminapi/v1/user/integral/add/{uid}/adminapi/v1/user/integral/sub/{uid}/api/v1/user/level/list/api/v1/user/level/info/api/v1/user/integral/list命名规范:
UserLevelServicescheckUpgradeConditionuserExperienceLEVEL_STATUS_ENABLE代码结构:
数据一致性:
问题:用户达到升级条件后,等级没有自动升级 解决方案:
问题:用户积分的计算与预期不符 解决方案:
问题:用户享有某等级权益,但实际未生效 解决方案:
问题:系统中有大量用户同时达到升级条件,导致系统性能下降 解决方案:
| 版本 | 更新日期 | 更新内容 | 更新人 |
|---|---|---|---|
| 1.0 | 2026-01-19 | 初始版本,包含会员等级管理、用户等级管理、经验值管理、积分管理、会员权益管理、会员等级升级机制等核心功能 | AI Assistant |
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Models │ │ Daos │ │ Services │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
└───────────────────────┼───────────────────────┘
│
┌─────────────────┐
│ Controllers │
└─────────────────┘
│
┌─────────────────┐
│ Routes │
└─────────────────┘
会员等级升级流程:
1. 用户执行获取经验值的行为(签到、下单、邀请等)
2. 系统增加用户经验值,记录经验值变动
3. 检查用户当前经验值是否达到下一级别要求
4. 达到要求,更新用户等级
5. 记录等级变动日志
6. 发送等级升级通知给用户
7. 更新用户享有的权益
积分获取与使用流程:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 积分获取 │ │ 积分管理 │ │ 积分使用 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 签到获得积分 │ │ 积分增加 │ │ 抵扣商品金额 │
│ 下单获得积分 │ │ 积分扣除 │ │ 积分商城兑换 │
│ 邀请获得积分 │ │ 积分记录 │ │ 参与活动消耗 │
│ 活动获得积分 │ │ 积分统计 │ └─────────────────┘
└─────────────────┘ └─────────────────┘
| 权益名称 | 描述 |
|---|---|
| 折扣优惠 | 不同等级享受不同的商品折扣 |
| 等级图标 | 每个等级拥有专属图标和背景图 |
| 经验值加速 | 高级会员获得经验值的速度更快 |
| 专属客服 | 高级会员享受专属客服服务 |
| 优先发货 | 高级会员订单优先发货 |
| 生日福利 | 会员生日获得专属福利 |
| 专属活动 | 高级会员参与专属活动 |
| 积分翻倍 | 高级会员获得积分的倍数更高 |
提示:该文档由AI生成,仅供参考。