HaniBlindBox/.kiro/specs/miniprogram-api-migration/requirements.md
2026-01-03 14:47:28 +08:00

211 lines
12 KiB
Markdown
Raw 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.

# Requirements Document
## Introduction
本文档定义了将 honey_box 小程序的 API 请求地址从旧的 PHP 后端迁移到新的 .NET 8 后端的需求。API 后端已完成迁移,现在需要更新小程序前端代码以适配新的 API 接口。
## Glossary
- **Mini_Program**: honey_box 小程序前端应用
- **API_Service**: 后端 API 服务
- **Request_Manager**: 小程序中的统一请求管理类 (request.js)
- **Env_Config**: 环境配置模块 (env.js)
- **Server_Module**: API 服务调用模块 (common/server/*.js)
- **Page_Component**: 页面组件中直接调用的 API 请求
## Requirements
### Requirement 1: 环境配置更新
**User Story:** 作为开发者,我希望更新环境配置文件,以便小程序能够连接到新的 .NET 8 API 后端。
#### Acceptance Criteria
1. WHEN 小程序启动时THE Env_Config SHALL 提供正确的 .NET 8 API 基础 URL
2. WHEN 切换环境时THE Env_Config SHALL 支持开发、测试、生产三种环境配置
3. THE Env_Config SHALL 保持与现有代码结构的兼容性
4. THE Env_Config SHALL 配置新的生产环境 API 地址
### Requirement 2: API 路径映射更新
**User Story:** 作为开发者,我希望更新 API 请求路径,以便与新的 .NET 8 后端接口保持一致。
#### Acceptance Criteria
1. WHEN 调用商品列表接口时THE Mini_Program SHALL 使用新的路径 `/goods_list` 替代旧路径 `/goods`
2. WHEN 调用商品详情接口时THE Mini_Program SHALL 使用新的路径 `/goods_detail` 替代旧路径 `/goodsdetail`
3. WHEN 调用中奖记录接口时THE Mini_Program SHALL 使用新的路径 `/goods_prize_logs` 替代旧路径 `/shang_log`
4. WHEN 调用奖品数量统计接口时THE Mini_Program SHALL 使用新的路径 `/goods_prize_count` 替代旧路径 `/goodslist_count`
5. WHEN 调用奖品内容接口时THE Mini_Program SHALL 使用新的路径 `/goods_prize_content` 替代旧路径 `/goodslist_content`
6. FOR ALL 其他 API 接口THE Mini_Program SHALL 保持原有路径不变(新后端已兼容)
### Requirement 3: 请求管理器兼容性
**User Story:** 作为开发者,我希望确保请求管理器与新的 API 后端完全兼容。
#### Acceptance Criteria
1. THE Request_Manager SHALL 保持现有的签名机制MD5签名 + 时间戳防重放)
2. THE Request_Manager SHALL 保持现有的 Token 认证方式
3. THE Request_Manager SHALL 正确处理新后端返回的响应格式
4. WHEN 请求失败时THE Request_Manager SHALL 保持现有的错误处理逻辑
### Requirement 4: 用户认证接口适配
**User Story:** 作为用户,我希望能够正常登录和使用账户功能。
#### Acceptance Criteria
1. WHEN 用户使用微信登录时THE Mini_Program SHALL 成功调用 `/login` 接口
2. WHEN 用户使用手机号登录时THE Mini_Program SHALL 成功调用 `/mobileLogin` 接口
3. WHEN 用户发送短信验证码时THE Mini_Program SHALL 成功调用 `/v2/account/sendSms` 接口
4. WHEN 用户获取个人信息时THE Mini_Program SHALL 成功调用 `/user` 接口
5. WHEN 用户更新个人信息时THE Mini_Program SHALL 成功调用 `/update_userinfo` 接口
6. WHEN 用户绑定手机号时THE Mini_Program SHALL 成功调用 `/login_bind_mobile``/bindMobile` 接口
7. WHEN 用户注销账号时THE Mini_Program SHALL 成功调用 `/user_log_off` 接口
### Requirement 5: 商品和订单接口适配
**User Story:** 作为用户,我希望能够正常浏览商品和下单购买。
#### Acceptance Criteria
1. WHEN 用户浏览商品列表时THE Mini_Program SHALL 成功调用 `/goods``/goods_list` 接口
2. WHEN 用户查看一番赏商品详情时THE Mini_Program SHALL 成功调用 `/goodsdetail``/goods_detail` 接口
3. WHEN 用户查看无限赏商品详情时THE Mini_Program SHALL 成功调用 `/infinite_goodsdetail` 接口
4. WHEN 用户查看连击赏商品详情时THE Mini_Program SHALL 成功调用 `/infinite_goodsdetail2` 接口
5. WHEN 用户计算一番赏订单金额时THE Mini_Program SHALL 成功调用 `/ordermoney` 接口
6. WHEN 用户计算无限赏订单金额时THE Mini_Program SHALL 成功调用 `/infinite_ordermoney` 接口
7. WHEN 用户计算商城订单金额时THE Mini_Program SHALL 成功调用 `/mall_ordermoney` 接口
8. WHEN 用户创建一番赏订单时THE Mini_Program SHALL 成功调用 `/orderbuy` 接口
9. WHEN 用户创建无限赏订单时THE Mini_Program SHALL 成功调用 `/infinite_orderbuy` 接口
10. WHEN 用户查看订单列表时THE Mini_Program SHALL 成功调用 `/order_list` 接口
11. WHEN 用户查看订单详情时THE Mini_Program SHALL 成功调用 `/order_detail` 接口
12. WHEN 用户获取订单状态时THE Mini_Program SHALL 成功调用 `/get_order_status` 接口
### Requirement 6: 抽奖结果接口适配
**User Story:** 作为用户,我希望能够正常查看抽奖结果和中奖记录。
#### Acceptance Criteria
1. WHEN 用户查看一番赏抽奖结果时THE Mini_Program SHALL 成功调用 `/prizeorderlog` 接口
2. WHEN 用户查看无限赏抽奖结果时THE Mini_Program SHALL 成功调用 `/infinite_prizeorderlog` 接口
3. WHEN 用户查看一番赏中奖记录时THE Mini_Program SHALL 成功调用 `/shang_log``/goods_prize_logs` 接口
4. WHEN 用户查看无限赏中奖记录时THE Mini_Program SHALL 成功调用 `/infinite_shang_log` 接口
5. WHEN 用户查看抽奖记录时THE Mini_Program SHALL 成功调用 `/infinite_prizerecords` 接口
6. WHEN 用户使用道具卡抽奖时THE Mini_Program SHALL 成功调用 `/item_card_chou` 接口
### Requirement 7: 仓库和发货接口适配
**User Story:** 作为用户,我希望能够正常管理我的奖品仓库。
#### Acceptance Criteria
1. WHEN 用户查看仓库时THE Mini_Program SHALL 成功调用 `/warehouse_index` 接口
2. WHEN 用户回收奖品时THE Mini_Program SHALL 成功调用 `/warehouse_recovery` 接口
3. WHEN 用户申请发货时THE Mini_Program SHALL 成功调用 `/warehouse_send` 接口
4. WHEN 用户确认发货时THE Mini_Program SHALL 成功调用 `/warehouse_send_confirm` 接口
5. WHEN 用户查看发货记录时THE Mini_Program SHALL 成功调用 `/warehouse_send_record` 接口
6. WHEN 用户查看发货详情时THE Mini_Program SHALL 成功调用 `/warehouse_send_record_detail` 接口
7. WHEN 用户查看回收记录时THE Mini_Program SHALL 成功调用 `/warehouse_recovery_record` 接口
8. WHEN 用户查看物流信息时THE Mini_Program SHALL 成功调用 `/warehouse_order_logistics` 接口
### Requirement 8: 收货地址接口适配
**User Story:** 作为用户,我希望能够正常管理我的收货地址。
#### Acceptance Criteria
1. WHEN 用户添加地址时THE Mini_Program SHALL 成功调用 `/addAddress` 接口
2. WHEN 用户更新地址时THE Mini_Program SHALL 成功调用 `/updateAddress` 接口
3. WHEN 用户获取地址列表时THE Mini_Program SHALL 成功调用 `/getAddressList` 接口
4. WHEN 用户获取默认地址时THE Mini_Program SHALL 成功调用 `/getDefaultAddress` 接口
5. WHEN 用户设置默认地址时THE Mini_Program SHALL 成功调用 `/setDefaultAddress` 接口
6. WHEN 用户删除地址时THE Mini_Program SHALL 成功调用 `/deleteAddress` 接口
7. WHEN 用户获取地址详情时THE Mini_Program SHALL 成功调用 `/getAddressDetail` 接口
### Requirement 9: 财务和优惠券接口适配
**User Story:** 作为用户,我希望能够正常查看财务记录和使用优惠券。
#### Acceptance Criteria
1. WHEN 用户查看资金明细时THE Mini_Program SHALL 成功调用 `/profitMoney` 接口
2. WHEN 用户查看积分明细时THE Mini_Program SHALL 成功调用 `/profitIntegral` 接口
3. WHEN 用户查看支付明细时THE Mini_Program SHALL 成功调用 `/profitPay` 接口
4. WHEN 用户查看优惠券列表时THE Mini_Program SHALL 成功调用 `/coupon_list` 接口
5. WHEN 用户查看优惠券详情时THE Mini_Program SHALL 成功调用 `/coupon_detail` 接口
6. WHEN 用户领取优惠券时THE Mini_Program SHALL 成功调用 `/coupon_ling` 接口
7. WHEN 用户分享优惠券时THE Mini_Program SHALL 成功调用 `/coupon_share` 接口
8. WHEN 用户合成优惠券时THE Mini_Program SHALL 成功调用 `/coupon_synthesis` 接口
9. WHEN 用户计算优惠券合成时THE Mini_Program SHALL 成功调用 `/coupon_ji_suan` 接口
10. WHEN 用户领取首页优惠券时THE Mini_Program SHALL 成功调用 `/coupon``/receive` 接口
11. WHEN 用户使用优惠券时THE Mini_Program SHALL 成功调用 `/used` 接口
### Requirement 10: 福利和签到接口适配
**User Story:** 作为用户,我希望能够正常参与福利活动和签到。
#### Acceptance Criteria
1. WHEN 用户查看福利屋列表时THE Mini_Program SHALL 成功调用 `/welfare_house_list``/fuliwu` 接口
2. WHEN 用户查看福利详情时THE Mini_Program SHALL 成功调用 `/fuliwu_detail` 接口
3. WHEN 用户查看福利参与者时THE Mini_Program SHALL 成功调用 `/fuliwu_participants` 接口
4. WHEN 用户查看福利记录时THE Mini_Program SHALL 成功调用 `/fuliwu_records` 接口
5. WHEN 用户查看福利参与记录时THE Mini_Program SHALL 成功调用 `/fuliwu_user_records` 接口
6. WHEN 用户查看福利中奖记录时THE Mini_Program SHALL 成功调用 `/fuliwu_user_winning_records` 接口
7. WHEN 用户查看签到信息时THE Mini_Program SHALL 成功调用 `/sign_info``/sign` 接口
8. WHEN 用户进行签到时THE Mini_Program SHALL 成功调用 `/sign``/sign_add` 接口
### Requirement 11: 任务和权益接口适配
**User Story:** 作为用户,我希望能够正常完成任务和领取权益。
#### Acceptance Criteria
1. WHEN 用户查看任务列表时THE Mini_Program SHALL 成功调用 `/task_list` 接口
2. WHEN 用户领取任务奖励时THE Mini_Program SHALL 成功调用 `/ling_task` 接口
3. WHEN 用户查看权益信息时THE Mini_Program SHALL 成功调用 `/quan_yi` 接口
4. WHEN 用户领取权益时THE Mini_Program SHALL 成功调用 `/quan_yi_ling` 接口
### Requirement 12: 钻石商城接口适配
**User Story:** 作为用户,我希望能够正常购买钻石充值。
#### Acceptance Criteria
1. WHEN 用户查看钻石商品列表时THE Mini_Program SHALL 成功调用 `/get_diamond_list` 接口
2. WHEN 用户创建钻石订单时THE Mini_Program SHALL 成功调用 `/createOrderProducts` 接口
3. WHEN 用户查看钻石订单状态时THE Mini_Program SHALL 成功调用 `/get_diamond_order_log` 接口
### Requirement 13: 其他功能接口适配
**User Story:** 作为用户,我希望能够正常使用其他功能。
#### Acceptance Criteria
1. WHEN 用户获取全局配置时THE Mini_Program SHALL 成功调用 `/config` 接口
2. WHEN 用户获取平台配置时THE Mini_Program SHALL 成功调用 `/getPlatformConfig` 接口
3. WHEN 用户获取广告信息时THE Mini_Program SHALL 成功调用相关广告接口
4. WHEN 用户获取单页内容时THE Mini_Program SHALL 成功调用 `/danye``/getDanye` 接口
5. WHEN 用户获取悬浮球信息时THE Mini_Program SHALL 成功调用 `/getFloatBall` 接口
6. WHEN 用户收藏商品时THE Mini_Program SHALL 成功调用 `/addCollect` 接口
7. WHEN 用户查看收藏列表时THE Mini_Program SHALL 成功调用 `/listCollect` 接口
8. WHEN 用户申请提现时THE Mini_Program SHALL 成功调用 `/withdraw` 接口
9. WHEN 用户查看提现记录时THE Mini_Program SHALL 成功调用 `/withdraw_log` 接口
10. WHEN 用户查看道具卡列表时THE Mini_Program SHALL 成功调用 `/item_card_list` 接口
11. WHEN 用户领取优惠券中心优惠券时THE Mini_Program SHALL 成功调用 `/t_coupon_ling` 接口
12. WHEN 用户查看优惠券中心列表时THE Mini_Program SHALL 成功调用 `/t_coupon_list` 接口
### Requirement 14: 测试验证
**User Story:** 作为开发者,我希望能够验证所有 API 迁移是否成功。
#### Acceptance Criteria
1. THE Mini_Program SHALL 在测试环境中完成所有核心功能的验证
2. WHEN 发现 API 不兼容问题时THE Mini_Program SHALL 记录并报告问题
3. THE Mini_Program SHALL 支持快速回滚到旧的 API 配置
4. THE Mini_Program SHALL 验证所有接口的请求和响应格式正确