Files
number/README.md

241 lines
12 KiB
Markdown
Raw Normal View History

# OpenClaw Skills 数字员工交易平台
2026-03-17 12:09:43 +08:00
基于 Vue 3 + Spring Boot 3 的全栈数字员工 Skill 交易平台,支持 Skill 浏览、购买(混合支付:积分+微信支付)、退款、评价、邀请奖励等完整交易闭环,并提供功能完善的管理后台。
2026-03-17 12:09:43 +08:00
## 技术栈
| 层面 | 技术 |
|------|------|
| **前端** | Vue 3.4 + Vite 5 + Pinia + Vue Router 4 + Ant Design Vue 4 + Element Plus + Axios |
| **后端** | Java 17 + Spring Boot 3.2 + MyBatis Plus 3.5.7 + MySQL 8.0 + Redis 7.x |
| **消息队列** | RabbitMQ退款异步处理、充值积分发放、超时提醒 |
| **支付** | 微信支付 V3Native Pay + 退款),支持模拟支付模式 |
| **ID 生成** | Leaf Segment号段模式订单号/退款单号等) |
| **文件存储** | 腾讯云 COS |
| **短信** | 短信验证码(注册/找回密码) |
| **测试** | Vitest前端 |
2026-03-17 12:09:43 +08:00
## 项目结构
```
数字员工/
├── frontend/ # Vue 3 前端52 个页面)
2026-03-17 12:09:43 +08:00
│ ├── src/
│ │ ├── views/ # 页面视图
│ │ │ ├── home/ # 首页
│ │ │ ├── skill/ # Skill 商城(列表/详情/搜索/榜单)
│ │ │ ├── order/ # 订单(详情/支付/模拟支付)
│ │ │ ├── user/ # 用户中心16 个子页面)
│ │ │ ├── admin/ # 管理后台21 个子页面)
│ │ │ ├── help/ # 帮助中心
│ │ │ ├── customize/ # Skill 定制
│ │ │ ├── join-us/ # 加入我们(开发者申请)
│ │ │ ├── legal/ # 法律条款
│ │ │ └── error/ # 错误页
│ │ ├── stores/ # Pinia 状态管理7 个 store
│ │ ├── service/
│ │ │ ├── apiService.js # Axios API 封装22 个模块)
│ │ │ └── dataAdapter.js # 后端数据归一化
│ │ ├── components/ # UI 组件
│ │ ├── layouts/ # 布局MainLayout + AdminLayout
│ │ ├── router/index.js # 路由配置
2026-03-17 12:09:43 +08:00
│ │ └── main.js
│ ├── .env.development # 开发环境变量
│ ├── .env.production # 生产环境变量
│ └── package.json
├── openclaw-backend/ # Spring Boot 后端
│ └── openclaw-backend/
│ ├── src/main/java/com/openclaw/
│ │ ├── module/ # 20 个业务模块
│ │ │ ├── user/ # 用户(注册/登录/短信/微信)
│ │ │ ├── skill/ # SkillCRUD/评价/收藏/分类/榜单)
│ │ │ ├── order/ # 订单(创建/支付/取消/退款)
│ │ │ ├── payment/ # 支付(充值/微信支付/回调/模拟支付)
│ │ │ ├── points/ # 积分(签到/消费/退还/流水)
│ │ │ ├── member/ # 会员等级(成长值/等级配置/权益)
│ │ │ ├── admin/ # 后台管理(综合管理接口)
│ │ │ ├── invite/ # 邀请系统
│ │ │ ├── invoice/ # 发票管理
│ │ │ ├── content/ # 内容管理(轮播图/公告)
│ │ │ ├── activity/ # 活动管理
│ │ │ ├── notification/ # 消息通知
│ │ │ ├── feedback/ # 反馈建议
│ │ │ ├── help/ # 帮助中心
│ │ │ ├── rbac/ # 角色权限管理
│ │ │ ├── log/ # 操作日志
│ │ │ ├── developer/ # 开发者申请
│ │ │ ├── customization/ # Skill 定制需求
│ │ │ ├── share/ # 分享(微信 JS-SDK
│ │ │ └── common/ # 公共(文件上传/配置/统计)
│ │ ├── common/ # 公共基础设施
│ │ │ ├── event/ # 领域事件(退款/充值)
│ │ │ └── mq/ # RabbitMQ消费者/常量/配置)
│ │ ├── config/ # 配置类
│ │ ├── annotation/ # 自定义注解(@RequiresRole 等)
│ │ └── util/ # 工具类
│ ├── src/main/resources/
│ │ ├── application.yml # 应用配置
│ │ └── db/
│ │ ├── init.sql # 数据库初始化
│ │ ├── migration/ # Flyway 迁移脚本9 个)
│ │ └── seed_skills.sql # 种子数据
│ └── pom.xml
├── 后端架构设计/ # 架构设计文档集
├── 产品功能架构设计.md # 产品功能架构设计参考
├── 待实现功能清单.md # 功能完成度跟踪
├── P1低优先级开发计划.md # P1 功能开发计划
├── 全量功能测试计划清单_2026-03-19.md # 测试计划
├── 后端启动指南.md # 后端详细启动文档
2026-03-17 12:09:43 +08:00
└── README.md
```
## 快速启动
2026-03-17 12:09:43 +08:00
### 前置要求
| 依赖 | 版本要求 |
|------|---------|
| Node.js | v16+ |
| Java | 17+ |
| MySQL | 8.0+ |
| Redis | 7.x+ |
| RabbitMQ | 3.x+ |
| Maven | 3.6+ |
2026-03-17 12:09:43 +08:00
### 后端启动
2026-03-17 12:09:43 +08:00
```bash
# 1. 初始化数据库
cd openclaw-backend/openclaw-backend
mysql -u root -p < src/main/resources/db/init.sql
# 2. 修改配置(数据库/Redis/RabbitMQ 连接信息、微信支付密钥等)
# 编辑 src/main/resources/application.yml
# 3. 启动后端
mvn spring-boot:run
# 后端运行在 http://localhost:8080
2026-03-17 12:09:43 +08:00
```
> 详细启动步骤请参考 `后端启动指南.md`
### 前端启动
2026-03-17 12:09:43 +08:00
```bash
cd frontend
npm install
2026-03-17 12:09:43 +08:00
npm run dev
# 前端运行在 http://localhost:5173
2026-03-17 12:09:43 +08:00
```
### 模拟支付模式
2026-03-17 12:09:43 +08:00
项目支持在微信支付未启用时使用模拟支付,可通过 `/mock-pay` 页面完成订单和充值的模拟支付,方便开发调试。
2026-03-17 12:09:43 +08:00
## 功能模块
### 用户端16 个页面)
| 模块 | 功能 |
|------|------|
| **用户系统** | 手机号注册/登录、微信扫码登录、短信验证码、忘记密码、个人资料编辑、头像上传、手机号更换、密码修改 |
| **Skill 商城** | 列表浏览、分类筛选、关键词搜索、Skill 详情、热门榜单(下载量/评分/周/月/总) |
| **订单与支付** | 订单预览(积分+现金混合计算)、下单、微信支付/模拟支付、取消订单、申请退款 |
| **积分系统** | 积分余额、积分流水、每日签到、加入社群奖励、积分充值(梯度套餐)、积分过期(一年有效期)、活动冻结/解冻 |
| **评价与收藏** | Skill 评价/评分、点赞评论、收藏/取消收藏 |
| **邀请系统** | 邀请码生成、绑定邀请码、邀请记录、邀请统计 |
| **发票管理** | 发票申请、发票列表、发票详情 |
| **消息通知** | 通知列表、未读数、标记已读/全部已读 |
| **反馈建议** | 提交反馈、反馈列表、反馈详情 |
| **帮助中心** | 分类浏览、文章搜索、文章详情、标记有用 |
| **其他** | Skill 定制需求提交、开发者申请、用户协议/隐私政策 |
### 管理后台21 个页面)
| 模块 | 功能 |
|------|------|
| **数据看板** | 用户/订单/Skill/积分/收入统计、趋势图表 |
| **用户管理** | 用户列表、用户详情、封禁/解封、角色变更 |
| **Skill 管理** | Skill 列表、审核(通过/拒绝)、上下架、推荐/取消推荐、后台创建 Skill |
| **订单管理** | 订单列表、订单详情 |
| **退款管理** | 退款列表、审批通过(触发微信退款+积分退还)、拒绝退款(恢复原订单状态) |
| **评论管理** | 评论列表、删除违规评论 |
| **积分管理** | 积分流水查看、手动调整积分、过期清理每日凌晨2点定时任务 |
| **内容管理** | 轮播图 CRUD、公告 CRUD、活动 CRUD |
| **发票管理** | 发票列表、发票审核/开具 |
| **帮助中心管理** | 分类 CRUD、文章 CRUD |
| **反馈管理** | 反馈列表、详情查看、回复、状态变更 |
| **定制需求管理** | 定制需求列表、状态处理 |
| **开发者管理** | 开发者申请列表、审核通过/拒绝 |
| **RBAC 权限** | 角色 CRUD、权限列表、角色权限配置、管理员角色配置 |
| **操作日志** | 操作日志列表查询 |
| **系统设置** | 系统配置 |
### 后端 API 概览29 个 Controller
| 分类 | Controller | 说明 |
|------|-----------|------|
| 用户 | UserController, WechatAuthController | 注册/登录/个人信息/微信授权 |
| Skill | SkillController, CategoryController, SkillFavoriteController | 商城/分类/收藏 |
| 订单 | OrderController | 下单/支付/取消/退款 |
| 支付 | PaymentController, MockPaymentController | 充值/微信回调/模拟支付 |
| **积分** | PointsController | 余额/流水/签到/过期清理/活动冻结 |
| **会员** | MemberController | 等级详情/成长记录/管理员调整 |
| 邀请 | InviteController | 邀请码/绑定/记录 |
| 内容 | BannerController, AnnouncementController, ActivityController | 轮播图/公告/活动(公开) |
| 发票 | InvoiceController | 发票申请/列表 |
| 通知 | NotificationController | 消息通知 |
| 反馈 | FeedbackController | 反馈建议 |
| 帮助 | HelpController, AdminHelpController | 帮助中心 |
| 分享 | ShareController | 微信 JS-SDK 签名 |
| 开发者 | DeveloperController | 开发者申请 |
| 定制 | CustomizationController | Skill 定制需求 |
| 管理后台 | AdminController, AdminActivityController | 综合后台管理 |
| RBAC | RbacController | 角色权限管理 |
| 日志 | OperationLogController | 操作日志 |
| 公共 | ConfigController, FileUploadController, StatsController | 配置/上传/统计 |
### 消息队列RabbitMQ
| 队列 | 用途 |
|------|------|
| `openclaw.recharge.paid` | 充值成功 → 积分发放 |
| `openclaw.refund.approved` | 退款审批通过 → 微信退款 + 积分退还 + 退款单完成 |
| `openclaw.refund.timeout.remind` | 退款超时 → 管理员提醒48h 延迟队列) |
## 项目文档
| 文档 | 说明 |
|------|------|
| `后端启动指南.md` | 后端详细启动配置文档 |
| `待实现功能清单.md` | 功能完成度跟踪Phase 1~3 |
| `产品功能架构设计.md` | 产品功能架构设计参考 |
| `P1低优先级开发计划.md` | P1 优先级功能开发计划 |
| `全量功能测试计划清单_2026-03-19.md` | 测试计划清单 |
| `后端架构设计/` | 后端架构设计文档集 |
| `openclaw-backend/API_EXAMPLES.md` | API 测试示例curl 命令) |
## 当前状态
> 更新日期2026-03-21
| 阶段 | 完成度 | 说明 |
|------|--------|------|
| Phase 1 MVP 核心 | ~98% | 用户/商城/积分/支付/混合支付/后台管理基本完成 |
| Phase 2 核心完善 | ~90% | 内容管理/发票/榜单/RBAC/操作日志/帮助中心/反馈/退款完善/活动管理/积分过期冻结已完成 |
| Phase 3 运营深化 | ~10% | 会员等级体系已完成;优惠券/活动系统/风控等待做 |
**近期修复与新增**
- 会员等级体系(普通→白银→金卡→钻石,成长值自动增长,签到倍率/积分折扣权益,管理员手动调整,安全审计修复)
- 积分过期 + 冻结机制(一年有效期、批次追踪、活动冻结/解冻、定时过期清理、前端冻结/过期状态展示)
- 退款功能全链路修复(现金退款/积分退还/状态流转/MQ事务一致性/operatorId 记录)
- 定制需求管理前后端状态值统一
**待做事项**(详见 `待实现功能清单.md`
- 支付回调可靠性验证
- 邀请海报生成
- 手机号绑定/更换完善
- Phase 3 全部功能