# Implementation Plan: Frontend API Refactor ## Overview 将前端 API 调用从分散的 `this.req()` 和 `RequestManager.post()` 模式重构为集中的 Server Module 模式。改造过程中记录所有 API 地址,生成接口清单用于核对 C# 后端迁移完整性。 ## Tasks - [x] 1. 修改 RequestManager 请求格式 - [x] 1.1 修改 POST 请求 Content-Type 为 application/json - 修改 `honey_box/common/request.js` 第 166 行 - 将 `'content-type': 'application/x-www-form-urlencoded'` 改为 `'content-type': 'application/json'` - _Requirements: 1.1_ - [x] 2. 创建 Server Modules - [x] 2.1 创建 auth.js 认证模块 - 创建 `honey_box/common/server/auth.js` - 实现: wxLogin, mobileLogin, bindMobileByWx, bindMobileByCode, recordLogin, logOff - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.2 扩展 user.js 用户模块 - 修改 `honey_box/common/server/user.js` - 新增: updateUserInfo, getVipList, getProfitMoney, getProfitIntegral, getProfitScore, getProfitPay - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.3 创建 goods.js 商品模块 - 创建 `honey_box/common/server/goods.js` - 实现: getGoodsList, getGoodsDetail, getGoodsChildren, getGoodsExtend, getGoodsNumList, getGoodsNumDetail, getGoodsPrizeCount, getGoodsPrizeContent, getGoodsPrizeLogs - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.4 扩展 order.js 订单模块 - 修改 `honey_box/common/server/order.js` - 新增: calcOrderMoney, createOrder, calcInfiniteOrderMoney, createInfiniteOrder, calcMallOrderMoney, getOrderList, getOrderDetail, getPrizeOrderLog, getInfinitePrizeOrderLog, useItemCard - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.5 创建 warehouse.js 仓库模块 - 创建 `honey_box/common/server/warehouse.js` - 实现: getWarehouseIndex, recoveryPrize, sendPrize, confirmSend, getSendRecord, getSendRecordDetail, getRecoveryRecord, getLogistics - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.6 创建 coupon.js 优惠券模块 - 创建 `honey_box/common/server/coupon.js` - 实现: getCouponList, getCouponDetail, receiveCoupon, shareCoupon, synthesisCoupon, calcSynthesis - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.7 创建 welfare.js 福利模块 - 创建 `honey_box/common/server/welfare.js` - 实现: getWelfareHouseList, getWelfareHouseDetail, buyWelfareHouse, getSignInfo, doSign, getTaskList, receiveTaskReward - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.8 创建 collection.js 收藏模块 - 创建 `honey_box/common/server/collection.js` - 实现: getCollectionList, addCollection, cancelCollection, getCollectionStatus - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.9 创建 rank.js 排行榜模块 - 创建 `honey_box/common/server/rank.js` - 实现: getRankList - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.10 创建 invitation.js 邀请模块 - 创建 `honey_box/common/server/invitation.js` - 实现: getInvitationInfo, getInvitationRecord - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.11 创建 redeem.js 兑换码模块 - 创建 `honey_box/common/server/redeem.js` - 实现: useRedeemCode - _Requirements: 2.1, 2.2, 2.3_ - [x] 2.12 创建 pay.js 支付模块 - 创建 `honey_box/common/server/pay.js` - 实现: wxPay, balancePay, recharge - _Requirements: 2.1, 2.2, 2.3_ - [x] 3. Checkpoint - Server Modules 完成 - 确保所有 Server Module 创建完成 - 检查函数命名是否语义化 - 确认错误处理逻辑一致 - [x] 4. 重构页面接口调用 - shouye 模块 - [x] 4.1 重构 pages/shouye/index.vue - 替换 this.req() 调用为 Server Module 导入 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 4.2 重构 pages/shouye/detail.vue - 替换 this.req() 调用为 Server Module 导入 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 4.3 重构 pages/shouye/detail_wuxian.vue - 替换 this.req() 调用为 Server Module 导入 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 4.4 重构 pages/shouye 其他页面 - 包括: bangdan.vue, ranking.vue, dada_ranking.vue, yaoqing_ranking.vue, rili.vue, danye.vue, huanxiang.vue, slots.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 5. 重构页面接口调用 - user 模块 - [x] 5.1 重构 pages/user/login.vue - 替换登录相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 5.2 重构 pages/user/index.vue - 替换用户信息相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 5.3 重构 pages/user 其他页面 - 包括: bangding.vue, bangdingweb.vue, vip.vue, coupon.vue, my_coupon.vue, order.vue, myCa.vue, change.vue, bi_jl.vue, jf_jl.vue, xfjl.vue, fhjl.vue, hsjl.vue, tui-guang.vue, yetx.vue, recharge-page.vue, cancel-account-page.vue, wuliu_detail.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 6. 重构页面接口调用 - other 模块 - [x] 6.1 重构 pages/other 所有页面 - 包括: about.vue, address_edit.vue, choose_address.vue, order_info.vue, order_list.vue, prize_draw.vue, web-detail-lucky.vue, web-pay-order.vue, web-pay-success.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 7. 重构页面接口调用 - 其他模块 - [x] 7.1 重构 pages/mall/index.vue - 替换商城相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 7.2 重构 pages/infinite 所有页面 - 包括: index.vue, benefit.vue, bonus_house.vue, bonus_house_details.vue, daily_check_in.vue, reward_records.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 7.3 重构 pages/hegui/hegui.vue - 替换盒柜相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 7.4 重构 pages/guize/guize.vue - 替换规则相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 8. 重构 package 分包页面 - [x] 8.1 重构 package/index 所有页面 - 包括: coupon-center.vue, leitai.vue, lian-ji.vue, sign.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 8.2 重构 package/mine 所有页面 - 包括: collect.vue, coupon-detail.vue, equity.vue, qy-rule.vue, skill-card.vue, ti-qu.vue - 记录使用的 API 地址到清单 - _Requirements: 3.1, 3.2, 3.3, 3.4_ - [x] 9. Checkpoint - 页面重构完成 - 确保所有页面不再使用 this.req() 硬编码 URL - 检查 API 地址清单完整性 - [x] 10. 重构组件接口调用 - [x] 10.1 重构 components/detail-lucky 组件 - 包括: detail-lucky.vue, detail-lucky-canvas.vue, detail-lucky-web.vue, detail-bao-xiang.vue, detail-grand-prize.vue - 记录使用的 API 地址到清单 - _Requirements: 4.1, 4.2, 4.3, 4.4_ - [x] 10.2 重构 components/pay-dialog/pay-dialog.vue - 替换支付相关接口调用 - 记录使用的 API 地址到清单 - _Requirements: 4.1, 4.2, 4.3, 4.4_ - [x] 10.3 重构 components/order-confirm-popup 组件 - 包括: order-confirm-popup.vue, order-confirm-popup-flw.vue - 记录使用的 API 地址到清单 - _Requirements: 4.1, 4.2, 4.3, 4.4_ - [x] 10.4 重构其他使用接口的组件 - 检查并重构: collect-btn, coupon-pop, detail-toolbar, detail-wuxian-lingzhu, detail-wuxian-rage 等 - 记录使用的 API 地址到清单 - _Requirements: 4.1, 4.2, 4.3, 4.4_ - [x] 11. 生成接口清单文档 - [x] 11.1 创建 API 接口清单文档 - 创建 `docs/前端适配调整/API接口清单.md` - 记录所有 API URL、所属模块、请求方式、使用位置 - _Requirements: 5.1, 5.2, 5.3, 5.5_ - [x] 11.2 标注 C# 后端迁移状态 - 对照 C# 后端代码,标注每个接口的迁移状态 - 列出未迁移的接口清单 - _Requirements: 5.4_ - [ ] 12. Final Checkpoint - 功能验证 - 确保所有功能正常工作 - 验证错误提示正确显示 - 验证登录跳转正常 - 验证绑定手机号跳转正常 - _Requirements: 6.1, 6.2, 6.3, 6.4_ ## Notes - 每个任务完成后需记录该文件使用的 API 地址 - 重构时保持原有业务逻辑不变 - 如发现未迁移的接口,记录到清单中 - 建议按模块逐一测试,确保功能正常