📌 功能概述
我的订单(发货订单):查看来自「我的赏袋」「积分商城」的发货订单,支持按状态筛选(待发货/备货中/待收货/已完成/已取消)与按来源切换(我的赏袋/积分商城),点击订单卡片查看详情(订单信息/收货信息/物流/货品),支持取消订单、修改地址、确认收货等操作。
v5.3 新增(2026-08-05):与「我的赏袋 v2.0 销毁系统」联动——赏袋销毁累计满 5,000 张触发的神秘礼物自动生成发货订单(localStorage「mysteryOrders」),订单页加载时合并展示:金色来源圆点 + 「神秘礼物」金色 badge + 礼物图(wms-images/products/mystery-gift.png);无地址订单显示「暂无收货地址」引导。
🧱 页面结构
| 模块 | 内容 | 数据来源 |
| 顶部导航 | 返回 + 「我的订单」标题 + 微信胶囊 | 固定 |
| 主 Tab | 发货订单 / 支付订单 / 兑换订单 / 订货订单 | 仅发货订单有数据,其余空态 |
| 状态筛选 | 全部/待发货/备货中/待收货/已完成/已取消 | orders.status |
| 来源 Tab | 我的赏袋 / 积分商城 | orders.source |
| 订单列表 | 订单卡片:来源圆点 + 时间 + 状态标签 + 货品图条 + 汇总 | orders 数组 + mysteryOrders |
| 订单详情 | 订单信息/收货信息/物流包裹/货品明细 + 底部操作栏 | orders.find(id) |
📐 数据口径
- 神秘礼物订单:localStorage「mysteryOrders」数组,结构 {id,source:'shang',sourceName:'我的赏袋',time,status:'待发货',items:[{type:'神秘礼物',qty:1}],addr,pkgs:null};页面加载时读取并合并进 orders(标记 mystery=true),按时间倒序
- 来源圆点:mystery 订单用金色渐变 .source-dot.mystery;普通订单按 source 颜色
- 状态标签:待发货→pending / 备货中→preparing / 待收货→shipping / 已完成→done / 已取消→cancelled
- 货品统计:卡牌款数(countCards)/赏品款数(countGoods)/总件数(totalQty)
🖱️ 交互行为
| 操作 | 行为 | 影响范围 |
| 切换状态/来源 | 过滤订单列表并重新渲染;无结果显示空态「暂无订单」 | 列表 |
| 点击订单卡片 | 进入订单详情:订单信息/收货信息/物流/货品 | 详情视图 |
| 神秘礼物订单 | 金色圆点 + 礼物图 + 「神秘礼物」badge;详情页货品区显示神秘礼物图;无地址时收货信息显示「暂无收货地址」 | 列表卡片 + 详情 |
| 取消订单 / 修改地址 / 确认收货 | 按状态显示对应操作按钮,点击执行对应逻辑 | 订单状态 |
🔲 状态说明
| 状态 | 说明 | 完成情况 |
| 待发货 | 可取消订单/修改地址 | ✅ 已实现 |
| 备货中 | 无操作按钮 | ✅ 已实现 |
| 待收货 | 可确认收货 | ✅ 已实现 |
| 已完成/已取消 | 无操作按钮 | ✅ 已实现 |
| 神秘礼物无地址 | 收货信息显示「暂无收货地址,请补充收货地址后发货」 | ✅ v5.3 已实现 |
| 其他主 Tab | 空态「暂无订单」 | ✅ 已实现 |
🔧 技术实现
- 数据:静态 orders 数组(Mock)+ localStorage「mysteryOrders」合并
- 神秘礼物图:../../../../../wms-images/products/mystery-gift.png(共享,与赏袋 v2.0 同一张)
- 图片:/wms-order-imgs/ 系列卡图 + 赏品图(nextCardImg/nextGoodsImg 轮换)
- 字体:ChillRound / 寒蝉全圆体,后备 PingFang SC
- 兼容:现代 Chrome;无外部依赖