10 KiB
10 KiB
会员管理模块 - 开发计划
| 文档信息 | 内容 |
|---|---|
| 文档版本 | V1.0 |
| 模块名称 | 会员管理模块 |
| 编写团队 | pangu |
| 创建日期 | 2026-01-31 |
1. 项目概述
1.1 模块简介
会员管理模块是盘古用户平台的核心业务模块,负责管理前端用户(家长/教师)的信息维护、登录认证、学生绑定等功能。
1.2 开发目标
- 完成会员管理的全部功能开发
- 前后端联调通过
- 完成功能测试和修复
- 通过验收测试
2. 开发阶段划分
2.1 阶段总览
| 阶段 | 名称 | 主要任务 | 交付物 |
|---|---|---|---|
| 1 | 后端开发 | 数据库、接口开发 | 可调用的API接口 |
| 2 | 前端开发 | 页面、组件开发 | 可操作的页面 |
| 3 | 联调测试 | 前后端联调、功能测试 | 测试报告 |
| 4 | 验收上线 | 验收测试、部署上线 | 生产环境运行 |
3. 阶段一:后端开发
3.1 任务清单
| 序号 | 任务名称 | 详细描述 | 优先级 | 负责人 | 状态 |
|---|---|---|---|---|---|
| 1.1 | 数据库表创建 | 创建pg_member表及索引 | P0 | - | 待开始 |
| 1.2 | 实体类开发 | Member、MemberVO、MemberDTO | P0 | - | 待开始 |
| 1.3 | 枚举类开发 | IdentityTypeEnum、RegisterSourceEnum | P1 | - | 待开始 |
| 1.4 | Mapper开发 | MemberMapper接口和XML | P0 | - | 待开始 |
| 1.5 | Service接口 | IMemberService接口定义 | P0 | - | 待开始 |
| 1.6 | Service实现 | MemberServiceImpl实现 | P0 | - | 待开始 |
| 1.7 | Controller开发 | MemberController接口 | P0 | - | 待开始 |
| 1.8 | 权限配置 | 菜单、按钮权限配置 | P0 | - | 待开始 |
| 1.9 | 接口测试 | Postman/Swagger测试 | P0 | - | 待开始 |
| 1.10 | 代码审查 | 后端代码Review | P1 | - | 待开始 |
3.2 详细任务说明
3.2.1 数据库表创建(1.1)
任务目标: 创建会员表及相关索引
具体内容:
- 创建 pg_member 表
- 创建唯一索引:uk_member_code, uk_phone
- 创建普通索引:idx_open_id, idx_school_id, idx_identity_type
验收标准:
- 表结构符合设计文档
- 索引创建正确
- 初始数据插入成功
3.2.2 实体类开发(1.2)
任务目标: 开发会员相关的实体类
具体内容:
- Member.java - 会员实体
- MemberVO.java - 视图对象
- MemberDTO.java - 数据传输对象
- StudentVO(内部类)- 学生视图
验收标准:
- 字段与数据库表对应
- 注解配置正确
- 通过编译
3.2.3 Mapper开发(1.4)
任务目标: 开发数据访问层
具体内容:
- MemberMapper.java 接口
- MemberMapper.xml 映射文件
- 自定义查询方法
验收标准:
- CRUD功能正常
- 关联查询正确
- 分页查询正常
3.2.4 Service开发(1.5, 1.6)
任务目标: 开发业务逻辑层
具体内容:
- 会员列表查询(带数据权限)
- 新增会员(含校验逻辑)
- 编辑会员
- 删除会员(检查绑定关系)
- 重置密码
- 状态切换
- 学生绑定/解绑
验收标准:
- 业务规则实现正确
- 异常处理完善
- 事务控制正确
3.2.5 Controller开发(1.7)
任务目标: 开发REST接口
接口清单:
| 接口 | 方法 | 说明 |
|---|---|---|
| /member/list | GET | 查询列表 |
| /member/{id} | GET | 获取详情 |
| /member | POST | 新增 |
| /member | PUT | 修改 |
| /member/{id} | DELETE | 删除 |
| /member/resetPwd/{id} | PUT | 重置密码 |
| /member/changeStatus | PUT | 修改状态 |
| /member/bindStudent | POST | 绑定学生 |
| /member/unbindStudent/{memberId}/{studentId} | DELETE | 解绑学生 |
验收标准:
- 接口路径规范
- 权限注解配置
- 日志注解配置
- Swagger文档生成
4. 阶段二:前端开发
4.1 任务清单
| 序号 | 任务名称 | 详细描述 | 优先级 | 负责人 | 状态 |
|---|---|---|---|---|---|
| 2.1 | API接口封装 | member.js接口定义 | P0 | - | 待开始 |
| 2.2 | 路由配置 | 会员管理路由 | P0 | - | 待开始 |
| 2.3 | 列表页开发 | index.vue | P0 | - | 待开始 |
| 2.4 | 搜索组件 | 搜索条件表单 | P0 | - | 待开始 |
| 2.5 | 表格组件 | 数据表格展示 | P0 | - | 待开始 |
| 2.6 | 编辑页开发 | form.vue | P0 | - | 待开始 |
| 2.7 | 学生绑定弹窗 | StudentBindDialog.vue | P0 | - | 待开始 |
| 2.8 | 密码显示弹窗 | PasswordDialog.vue | P1 | - | 待开始 |
| 2.9 | 工具函数 | utils/member.js | P1 | - | 待开始 |
| 2.10 | 样式调整 | UI样式优化 | P2 | - | 待开始 |
| 2.11 | 代码审查 | 前端代码Review | P1 | - | 待开始 |
4.2 详细任务说明
4.2.1 列表页开发(2.3)
页面功能:
- 搜索条件:手机号、昵称、身份类型、状态、注册时间
- 操作按钮:新增
- 数据表格:显示会员列表
- 行操作:编辑、重置密码、删除
- 分页组件
交互要求:
- 手机号脱敏显示
- 状态开关可直接切换
- 删除需二次确认
4.2.2 编辑页开发(2.6)
页面功能:
- 基本信息表单
- 教师信息表单(条件显示)
- 学生绑定列表
- 保存/取消按钮
交互要求:
- 身份类型切换时动态显示/隐藏教师信息
- 区域-学校-年级-班级级联选择
- 表单验证
4.2.3 学生绑定弹窗(2.7)
组件功能:
- 学生搜索
- 学生列表(多选)
- 分页
- 确认选择
交互要求:
- 教师身份只显示本校学生
- 排除已绑定学生
- 多选确认
5. 阶段三:联调测试
5.1 任务清单
| 序号 | 任务名称 | 详细描述 | 优先级 | 负责人 | 状态 |
|---|---|---|---|---|---|
| 3.1 | 接口联调 | 前后端接口对接 | P0 | - | 待开始 |
| 3.2 | 功能测试 | 执行测试用例 | P0 | - | 待开始 |
| 3.3 | Bug修复 | 修复发现的问题 | P0 | - | 待开始 |
| 3.4 | 回归测试 | 验证Bug修复 | P0 | - | 待开始 |
| 3.5 | 权限测试 | 各角色权限验证 | P0 | - | 待开始 |
| 3.6 | 性能测试 | 响应时间、并发测试 | P1 | - | 待开始 |
| 3.7 | 兼容性测试 | 浏览器兼容性 | P2 | - | 待开始 |
5.2 测试重点
-
业务规则验证
- 手机号唯一性
- 教师必须绑定学校信息
- 教师只能绑定本校学生
- 有绑定学生的会员不能删除
-
数据权限验证
- 超级管理员看全部
- 分公司用户看所属区域
- 学校用户看本校教师
-
状态控制验证
- 禁用后无法登录
- 状态切换生效
6. 阶段四:验收上线
6.1 任务清单
| 序号 | 任务名称 | 详细描述 | 优先级 | 负责人 | 状态 |
|---|---|---|---|---|---|
| 4.1 | UAT测试 | 用户验收测试 | P0 | - | 待开始 |
| 4.2 | 问题修复 | UAT问题修复 | P0 | - | 待开始 |
| 4.3 | 代码合并 | 合并到主分支 | P0 | - | 待开始 |
| 4.4 | 部署上线 | 生产环境部署 | P0 | - | 待开始 |
| 4.5 | 上线验证 | 生产环境验证 | P0 | - | 待开始 |
| 4.6 | 文档归档 | 技术文档归档 | P1 | - | 待开始 |
6.2 上线检查清单
| 检查项 | 状态 |
|---|---|
| 数据库脚本准备 | □ |
| 菜单权限配置 | □ |
| 角色权限分配 | □ |
| 应用配置检查 | □ |
| 接口测试通过 | □ |
| 功能测试通过 | □ |
| 权限测试通过 | □ |
| 代码Review完成 | □ |
| 部署脚本准备 | □ |
| 回滚方案准备 | □ |
7. 风险识别
7.1 技术风险
| 风险项 | 风险等级 | 影响 | 应对措施 |
|---|---|---|---|
| 数据权限实现复杂 | 中 | 进度延迟 | 提前熟悉RuoYi数据权限机制 |
| 前端组件复杂度高 | 中 | 开发周期延长 | 复用已有组件,分解任务 |
| 接口设计变更 | 低 | 返工 | 提前评审接口设计 |
7.2 业务风险
| 风险项 | 风险等级 | 影响 | 应对措施 |
|---|---|---|---|
| 需求变更 | 中 | 返工 | 需求评审确认,变更流程管控 |
| 测试时间不足 | 中 | 质量问题 | 合理安排测试周期 |
8. 依赖项
8.1 模块依赖
| 依赖模块 | 依赖内容 | 影响 |
|---|---|---|
| 区域管理 | 区域树接口 | 教师信息选择 |
| 学校管理 | 学校/年级/班级接口 | 教师信息选择 |
| 学生管理 | 学生列表接口 | 学生绑定功能 |
| 系统管理 | 用户/角色/权限 | 权限控制 |
8.2 技术依赖
| 依赖项 | 说明 |
|---|---|
| RuoYi框架 | 基础框架支持 |
| MyBatis Plus | ORM功能 |
| Spring Security | 权限控制 |
| Element Plus | UI组件 |
9. 交付物清单
9.1 文档交付物
| 文档名称 | 用途 |
|---|---|
| 会员管理模块技术方案_v1.0.md | 总体技术方案 |
| 会员管理前端详细设计_v1.0.md | 前端设计文档 |
| 会员管理后端详细设计_v1.0.md | 后端设计文档 |
| 会员管理测试用例_v1.0.md | 测试用例 |
| 会员管理开发计划_v1.0.md | 开发计划 |
9.2 代码交付物
| 交付物 | 路径 |
|---|---|
| 后端代码 | pangu-admin/src/main/java/com/pangu/member/ |
| 前端代码 | frontend/src/views/member/ |
| 数据库脚本 | sql/pg_member.sql |
| 菜单配置 | sql/pg_member_menu.sql |
9.3 测试交付物
| 交付物 | 说明 |
|---|---|
| 测试报告 | 功能测试报告 |
| Bug清单 | 问题跟踪记录 |
| 验收报告 | UAT验收报告 |
10. 附录
10.1 相关文档
| 文档 | 路径 |
|---|---|
| 需求规格说明书 | docs/01-需求文档/需求规格说明书_v1.0.md |
| 系统设计文档 | docs/02-系统设计/系统设计文档_v1.0.md |
| 数据库设计文档 | docs/03-数据库设计/数据库设计文档_v1.0.md |
| 接口设计文档 | docs/04-接口文档/接口设计文档_v1.0.md |
10.2 参考资料
| 资料 | 说明 |
|---|---|
| RuoYi-Vue文档 | http://doc.ruoyi.vip |
| Vue 3文档 | https://vuejs.org |
| Element Plus文档 | https://element-plus.org |
| MyBatis Plus文档 | https://baomidou.com |
文档结束