纲要
- 项目背景与目标
- 用户端应用开发完成后的管理需求
- 后台管理系统的定位:运营监控与数据管理
- 项目结构规划
- 前后端代码目录划分
- 与现有用户端应用的关联
- AI辅助功能梳理
- 基于现有代码库的功能点分析
- 约束条件设定:数据库表结构保护
- 功能点清单的生成与迭代
- 核心功能模块解析
- 数据统计概览
- 用户管理与交易管理
- 分类管理与账户类型管理(只读)
- 管理员独立认证体系
- 数据库扩展设计
- 新增管理员表
admins - 表结构设计与字段说明
- 密码加密存储策略
- 新增管理员表
- 数据库执行方案
- 手动执行SQL脚本的方式
- 与AI协作执行方式的对比
- 需求文档的整理与版本管理
项目背景与目标
在完成用户端应用开发后,通常需要配套的后台管理系统以支撑日常运营工作。后台管理系统的核心使用者为运营专员或产品人员,其职责包括查看注册用户信息、监控用户交易流水(支出与收入)、管理分类数据等。
本次实践的目标是基于现有的用户端应用代码,借助AI辅助工具(Claude)快速梳理出后台管理系统的完整功能架构,并完成数据库扩展设计,为后续前后端开发奠定基础。
项目结构规划
后台管理系统与用户端应用采用相同的代码组织方式,即前后端分离架构。在项目根目录下创建独立的文件夹,内部包含 frontend 与 backend 两个子目录,分别存放前端与后端代码。
项目目录结构如下:
├── 006-backend-management-system/
│ ├── frontend/
│ │ └── (前端代码,基于现有用户端架构扩展)
│ └── backend/
│ └── (后端代码,复用现有API规范)
├── 003-user-app/
│ └── frontend/
│ └── (现有用户端应用源码)
└── product-docs/
└── (产品需求文档存放目录)
该结构确保后台管理系统与用户端应用的代码隔离,同时便于复用已有的技术栈和API规范。
AI辅助功能梳理
在手动梳理功能点可能遗漏且耗时的情况下,可借助AI工具对现有代码库进行自动化分析。通过向AI提供当前用户端应用的代码位置与功能目标,可快速生成功能点清单。
交互流程
核心交互流程如下:
约束条件设定
在AI梳理功能点时,必须明确以下前置约束,以防止AI擅自修改数据库结构导致用户端应用异常:
- 禁止修改现有数据库表结构:不得对已有表的字段、索引、约束进行任何变更。
- 禁止修改现有API接口:所有后台管理系统的数据获取需通过现有API端点完成。
- 允许新增独立数据表:仅允许为后台管理系统新增一张管理员表(
admins),且该表独立于用户表。
功能点清单生成
AI在分析现有代码库后,会输出一份Markdown格式的功能点清单文档,自动保存到产品文档目录中。该文档包含以下核心章节:
- 项目描述与目的
- 前置约束说明
- 现有API端点分析
- 功能需求列表
- 页面结构规划
- 技术方案建议
- 待办事项与待确认事项
核心功能模块解析
基于AI梳理的结果,后台管理系统的功能划分为七大核心模块:
| 模块 | 功能描述 | 数据权限 |
|---|---|---|
| 数据统计概览 | 展示总用户数、交易总笔数、支出/收入汇总 | 只读 |
| 七天趋势 | 近七天的用户增长与交易量趋势图表 | 只读 |
| 用户管理 | 查看注册用户列表、用户详情信息 | 只读 |
| 交易管理 | 查看用户交易流水、支出与收入明细 | 只读 |
| 分类管理 | 查看支出分类与收入分类列表 | 只读 |
| 账户类型管理 | 查看用户的账户类型配置 | 只读 |
| 用户排行 | 按交易量、注册时间等维度的用户排行 | 只读 |
所有功能模块均遵循只读原则,即后台管理系统仅用于数据查看与监控,不提供新增、修改或删除操作。数据的创建与修改均由用户端应用完成。
页面结构规划
后台管理系统的页面结构采用多级菜单设计:
├── 仪表盘
│ └── 数据概览
├── 用户管理
│ └── 用户列表
├── 交易管理
│ └── 交易流水
├── 数据统计
│ ├── 趋势分析
│ └── 用户排行
├── 分类管理
│ ├── 支出分类
│ └── 收入分类
└── 系统设置
└── 账户管理
管理员独立认证体系
后台管理系统与用户端应用需采用独立的认证体系,即管理员账户不与普通用户表共用。
设计原则
- 独立存储:管理员账户存储在独立的
admins表中。 - 密码单独加密:管理员密码采用与用户端不同的加密策略,使用独立的盐值或加密算法。
- 独立登录:后台管理系统使用独立的登录页面与认证接口。
管理员表结构设计
在约束条件下,允许新增一张 admins 表,其核心字段如下:
| 字段名 | 类型 | 说明 |
|---|---|---|
id | INT | 主键,自增 |
username | VARCHAR(64) | 管理员用户名,唯一索引 |
password_hash | VARCHAR(255) | 加密后的密码哈希值 |
role | VARCHAR(32) | 角色标识,默认 super_admin |
created_at | DATETIME | 创建时间 |
updated_at | DATETIME | 更新时间 |
建表SQL脚本如下:
CREATE TABLE `admins` (
`id` INT AUTO_INCREMENT PRIMARY KEY COMMENT '主键ID',
`username` VARCHAR(64) NOT NULL UNIQUE COMMENT '管理员用户名',
`password_hash` VARCHAR(255) NOT NULL COMMENT '密码哈希值',
`role` VARCHAR(32) DEFAULT 'super_admin' COMMENT '管理员角色',
`created_at` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_at` DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='后台管理员表';
数据库执行方案
管理员表的创建有两种执行方式,开发者可根据实际情况选择。
方式一:手动执行SQL脚本
通过数据库客户端工具直接执行上述建表脚本:
- 打开数据库客户端(如MySQL Workbench、phpMyAdmin或命令行)。
- 进入查询编辑器,粘贴建表SQL脚本。
- 执行脚本,确认返回成功。
执行成功后,可在数据库表列表中看到新增的 admins 表。
方式二:AI辅助执行
可指示AI工具直接连接数据库并执行建表操作。但需注意:
- 确保数据库连接信息安全,且AI工具具备数据库写入权限。
- 在执行前,由AI展示完整的SQL脚本供开发者审核。
- 建议在开发或测试环境中先行验证,再应用于生产环境。
需求文档的整理与版本管理
功能点清单文档应在梳理完成后持续更新,记录需求变更与实施进度。建议的文档管理规范如下:
- 文档命名:采用
项目名_功能清单.md的格式。 - 变更记录:在文档末尾添加变更日志表格,记录每次修改的日期、内容和责任人。
- 待确认事项:对尚未决策的需求(如导出功能、定时任务等),在文档中明确标记为待确认,并在决策后及时更新。
在本案例中,经过评估后决定:
- 导出功能:不需要,因现有用户端已具备Excel导出能力。
- 定时任务:不需要,自动生成报表在大数据量场景下可能引发系统卡顿。
总结
本次后台管理系统的功能架构梳理完整展示了在AI辅助下如何高效完成需求分析、数据库设计与文档管理。核心要点总结如下:
- 后台管理系统定位为运营监控工具,所有功能模块遵循只读原则,数据变更由用户端应用负责。
- AI工具(Claude)可基于现有代码库自动生成功能点清单,显著缩短需求梳理周期,但需在交互中明确约束条件以防止误改数据库。
- 管理员认证体系需独立于普通用户,新增
admins表是推荐的扩展方式,密码需单独加密存储。 - 数据库扩展遵循“最小改动”原则,仅新增必要表,不修改已有表结构与API接口。
- 需求文档应保持可维护性,包含功能描述、技术方案、变更记录和待确认事项,便于团队协作与后续开发。

105

被折叠的 条评论
为什么被折叠?



