pangu-user-platform/docs/05-模块技术方案/会员管理/会员管理开发计划_v1.0.md

367 lines
10 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 会员管理模块 - 开发计划
---
| 文档信息 | 内容 |
|---------|------|
| **文档版本** | 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 测试重点
1. **业务规则验证**
- 手机号唯一性
- 教师必须绑定学校信息
- 教师只能绑定本校学生
- 有绑定学生的会员不能删除
2. **数据权限验证**
- 超级管理员看全部
- 分公司用户看所属区域
- 学校用户看本校教师
3. **状态控制验证**
- 禁用后无法登录
- 状态切换生效
---
## 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 |
---
*文档结束*