9.7 KiB
9.7 KiB
后端服务功能模块
1. 用户认证模块 (/auth)
1.1 发送验证码
- 路径:
POST /auth/send-code - 功能: 向用户手机号发送短信验证码
- 参数:
phoneNumber(手机号) - 依赖: 阿里云短信服务
1.2 验证码登录
- 路径:
POST /auth/login - 功能: 使用手机号+验证码登录,返回用户信息和Token
- 参数:
phoneNumber,code - 返回:
userId,phoneNumber,token
1.3 验证Token
- 路径:
POST /auth/validate-token - 功能: 验证Token有效性,自动刷新即将过期的Token
- 参数:
token
1.4 刷新Token
- 路径:
POST /auth/refresh-token - 功能: 刷新用户Token
- 参数:
token
1.5 注销登录
- 路径:
POST /auth/logout - 功能: 删除Token,注销登录
- 参数:
token
2. 用户资料模块 (/user)
2.1 获取用户资料
- 路径:
GET /user/profile - 参数:
id(用户ID) - 返回: 昵称、性别、生日、个性签名
2.2 更新用户资料
- 路径:
PUT /user/profile - 功能: 更新用户资料(含敏感词检测)
- 参数:
id,nickname,gender,birthday,signature
2.3 单独更新昵称
- 路径:
PUT /user/nickname - 功能: 更新用户昵称(含敏感词检测)
- 参数:
userId,nickname
2.4 单独更新签名
- 路径:
PUT /user/signature - 功能: 更新用户个性签名(含敏感词检测)
- 参数:
userId,signature
3. 铜钱系统模块 (/coin)
3.1 查询余额
- 路径:
GET /coin/balance - 参数:
userId
3.2 按手机号查询余额
- 路径:
GET /coin/balance/phone - 参数:
phoneNumber
3.3 消费铜钱
- 路径:
POST /coin/consume - 参数:
userId
3.4 按手机号消费铜钱
- 路径:
POST /coin/consume/phone - 参数:
phoneNumber
3.5 重置余额
- 路径:
POST /coin/reset - 功能: 重置用户铜钱余额为0(用于注销)
- 参数:
userId
3.6 按手机号重置余额
- 路径:
POST /coin/reset/phone - 参数:
phoneNumber
3.7 增加铜钱
- 路径:
POST /coin/increase/phone - 参数:
phoneNumber,coinCount
3.8 同步用户铜钱
- 路径:
POST /coin/sync - 功能: 手动触发用户铜钱记录同步
4. 支付模块 (/payment)
4.1 获取支付宝订单
- 路径:
GET /payment/alipay/order - 参数:
userId,amount,coinCount - 返回: 支付宝支付订单信息
4.2 支付宝异步通知
- 路径:
POST /payment/notify - 功能: 处理支付宝异步回调通知
- 返回:
success或fail
4.3 更新余额
- 路径:
POST /payment/update-balance - 功能: 处理支付结果,更新用户铜钱余额
- 参数:
userId,orderNo,tradeNo,amount,coinCount,status
5. 卦象历史模块 (/divination-history)
5.1 保存卦象记录
- 路径:
POST /divination-history/save - 参数:
userId,phoneNumber,localRecordId,jsonData,aiResult,questionType,question,timestamp
5.2 获取卦象记录
- 路径:
POST /divination-history/get - 参数:
phoneNumber,questionType(可选)
5.3 删除卦象记录
- 路径:
POST /divination-history/delete - 参数:
phoneNumber,localRecordId或localRecordIds
5.4 统计记录数量
- 路径:
GET /divination-history/count/{phoneNumber}
5.5 批量软删除
- 路径:
POST /divination-history/deactivate-all - 功能: 用户注销时批量软删除卦象记录
- 参数:
phoneNumber,userId
6. 解卦溯源模块 (/divination)
6.1 增强解卦
- 路径:
POST /divination/enhanced - 功能: 调用DeepSeek API进行解卦,支持用户追踪
- 参数:
userId,questionType,question,divinationData
6.2 查询用户解卦记录
- 路径:
GET /divination/records/user/{userId} - 参数:
page,size
6.3 按手机号查询记录
- 路径:
GET /divination/records/phone/{phoneNumber} - 参数:
page,size
6.4 按追踪ID查询
- 路径:
GET /divination/records/trace/{traceId}
6.5 时间范围查询
- 路径:
GET /divination/records/user/{userId}/daterange - 参数:
startTime,endTime,page,size
6.6 查询失败记录
- 路径:
GET /divination/records/failed
6.7 查询慢请求
- 路径:
GET /divination/records/slow - 参数:
durationMs(默认10000ms)
6.8 统计用户解卦次数
- 路径:
GET /divination/stats/user/{userId}/count
6.9 统计时间范围内记录数
- 路径:
GET /divination/stats/daterange/count - 参数:
startTime,endTime
7. DeepSeek代理模块 (/deepseek)
7.1 AI聊天代理
- 路径:
POST /deepseek/chat - 功能: 代理DeepSeek API,自动附加用户信息
- 参数: 聊天请求体
8. 内容审核模块 (/content-moderation)
8.1 检测问题内容
- 路径:
POST /content-moderation/check-question - 功能: 检测用户问题是否包含敏感词
- 参数:
userId,question
9. 敏感词管理模块 (/admin/sensitive-words)
9.1 获取统计信息
- 路径:
GET /admin/sensitive-words/statistics
9.2 添加敏感词
- 路径:
POST /admin/sensitive-words/add - 参数:
word,type
9.3 移除敏感词
- 路径:
DELETE /admin/sensitive-words/remove - 参数:
word
9.4 测试检测
- 路径:
POST /admin/sensitive-words/test/nickname - 路径:
POST /admin/sensitive-words/test/signature - 路径:
POST /admin/sensitive-words/test/question - 参数:
content
10. 违规记录管理模块 (/admin/violations)
10.1 获取违规记录列表
- 路径:
GET /admin/violations/list - 参数:
page,size,userId,contentType,violationType,startTime,endTime
10.2 用户违规统计
- 路径:
GET /admin/violations/user/{userId}/stats
10.3 违规类型统计
- 路径:
GET /admin/violations/stats/types
10.4 高频违规用户
- 路径:
GET /admin/violations/frequent-violators - 参数:
days,threshold
10.5 清理违规记录
- 路径:
DELETE /admin/violations/cleanup - 参数:
daysToKeep
10.6 获取违规详情
- 路径:
GET /admin/violations/{id}
11. 敏感词迁移管理模块 (/admin/sensitive-word-migration)
11.1 获取配置状态
- 路径:
GET /admin/sensitive-word-migration/status
11.2 切换服务
- 路径:
POST /admin/sensitive-word-migration/switch - 功能: 切换本地词库/阿里云服务
- 参数:
useAliyun
11.3 设置降级策略
- 路径:
POST /admin/sensitive-word-migration/fallback - 参数:
enableFallback
11.4 对比测试
- 路径:
POST /admin/sensitive-word-migration/compare - 功能: 对比本地和阿里云检测结果
- 参数:
content,contentType,userId
11.5 批量对比测试
- 路径:
POST /admin/sensitive-word-migration/batch-compare
11.6 健康检查
- 路径:
GET /admin/sensitive-word-migration/health-check
12. 通知模块 (/notifications)
12.1 获取最新通知
- 路径:
GET /notifications/latest
12.2 获取所有通知
- 路径:
GET /notifications/all
13. 用户反馈模块 (/feedback)
13.1 提交反馈
- 路径:
POST /feedback - 参数:
user_id,phone_number,content
14. 版本管理模块 (/version)
14.1 检查版本更新
- 路径:
POST /version/check - 参数:
clientVersion,clientVersionCode
14.2 获取最新版本
- 路径:
GET /version/latest
15. 网络访问日志模块 (/admin/network-logs)
15.1 按用户查询日志
- 路径:
GET /admin/network-logs/user/{userId}
15.2 按IP查询日志
- 路径:
GET /admin/network-logs/ip/{clientIp}
15.3 按时间范围查询
- 路径:
GET /admin/network-logs/time-range
15.4 查询失败记录
- 路径:
GET /admin/network-logs/failed
15.5 检测可疑IP
- 路径:
GET /admin/network-logs/suspicious
15.6 统计IP访问次数
- 路径:
GET /admin/network-logs/count/ip
15.7 清理过期日志
- 路径:
DELETE /admin/network-logs/cleanup
16. 用户数据管理模块 (/admin/user-data)
16.1 同步用户数据
- 路径:
POST /admin/user-data/sync
16.2 验证用户数据
- 路径:
GET /admin/user-data/validate/user/{userId} - 路径:
GET /admin/user-data/validate/phone/{phoneNumber}
16.3 修复数据一致性
- 路径:
POST /admin/user-data/fix/{phoneNumber}
16.4 批量验证
- 路径:
POST /admin/user-data/validate/batch
16.5 测试用户信息
- 路径:
GET /admin/user-data/test/user-info/{userId}
17. 数据清理模块 (/admin/data-cleanup)
17.1 清理所有表
- 路径:
DELETE /admin/data-cleanup/all
17.2 清理验证码
- 路径:
DELETE /admin/data-cleanup/verification-codes
17.3 清理支付记录
- 路径:
DELETE /admin/data-cleanup/payment-records
17.4 清理反馈记录
- 路径:
DELETE /admin/data-cleanup/feedback
第三方服务集成
| 服务 | 用途 | 配置 |
|---|---|---|
| 阿里云短信 | 发送验证码 | aliyun.sms.* |
| 阿里云内容安全 | 敏感词检测 | aliyun.content-security.* |
| DeepSeek API | AI解卦/聊天 | thirdparty.deepseek.api-key |
| 支付宝 | 支付充值 | alipay.* |
| MySQL | 数据持久化 | spring.datasource.* |
| Redis | Token缓存/会话 | spring.data.redis.* |