商城详情 mall/goods/goods 支持加入购物车。两套小程序两套车;车里按商品所属商家分堆,结账跟当前店走。
yjd_cart 按 user_id 隔离。goods.mch_id 分堆:0 = 平台自营,>0 = 那家店。同一辆车可以同时有平台货和入驻店货。flowchart TB PMP["平台小程序用户"] MMP["商家独立小程序用户"] PC["yjd_cart\nuser=平台号"] MC["yjd_cart\nuser=商家号"] PMP --> PC MMP --> MC PC --> P0["list:goods.mch_id=0 平台自营"] PC --> PM["mch_list:入驻店商品"] MC --> HQ["mch_list:goods.mch_id=总店"]
| 平台小程序 | 商家独立小程序 | |
|---|---|---|
| 谁的车 | 平台用户(user.mch_id=0) | 本店包用户(user.mch_id=总店) |
| 平台自营货 | 购物车「平台自营」 | 一般没有(本包不卖平台货) |
| 入驻店 / 本店货 | 按店分堆(mch_list) | 堆在总店名下(商品 mch_id=总店) |
| 会不会串车 | 不会。openid 不同、用户行不同 | |
| 场景 | 商品 mch_id | 购物车显示 | 结账店 |
|---|---|---|---|
| 总店小程序加购 | 总店 | 总店一堆 | 总店 |
| 进了分店再加同一件总店货 | 仍是总店(货建在总店) | 还是总店那一堆(同一 user、同一 goods) | 当前进的分店 |
| 平台包逛入驻店加购 | 入驻店 | 该店一堆,和平台自营分开 | 该入驻店 |
分店一般不单独建商城 SKU,选的是总店货。所以加购不会变成「分店自己的另一条商品」。订单归属见 总店与分店 · 数据关系。
send_type 理解反了:按钮在「关闭(-1)」时藏起来,接口又只允许 -1 加购,结果永远加不进去。现已按「商城货都能加购」处理。
_zong_mch_id / 当前店