From a04a8baec73b8cbdf93f14e822c3d5707c86686b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Wed, 12 Aug 2026 14:36:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(shopExpressTemplateDetail):=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E3=80=8C=E4=B8=8D=E5=8F=91=E8=B4=A7=E9=BB=91=E5=90=8D?= =?UTF-8?q?=E5=8D=95=E3=80=8D=E9=85=8D=E9=80=81=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增配送模式三态选择(0全国/1指定配送/2指定不发货) - 编辑表单中增加“配送模式”单选,mode=2时复用多选地区组件选择不发货地区 - 保存时根据模式调整 regionMode 和 regionIds 字段,确保模式与地区同步 - 列表页配送地区列新增不发货黑名单显示,聚合城市码为省份名并支持省名去重 - 加载地区时建立城市ID到省份ID映射,实现城市码聚合显示省名功能 - 适配旧数据兼容性,支持单值旧数据和全国模式显示 - 表单校验强化,指定配送/不发货模式下必须选择有效地区 - 完成端到端链路功能闭环,前端支持黑名单配置,后端按租户生效配送限制 --- .workbuddy/memory/2026-08-12.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.workbuddy/memory/2026-08-12.md b/.workbuddy/memory/2026-08-12.md index df38211..8b3a71f 100644 --- a/.workbuddy/memory/2026-08-12.md +++ b/.workbuddy/memory/2026-08-12.md @@ -14,3 +14,12 @@ - 类型检查(vue-tsc)确认本次改动无新错误(唯一相关报错是预存的 `$router` 用法,原文件即有,未引入)。 - 结论:黑名单现可经后台 UI 配置;SQL 直插仍作为备选(二者后台存城市码、SQL 存省份码,后端比对为编码集合 contains,都生效、互不冲突)。 - 已生成插偏远八省黑名单完整 SQL:`offline-remote-areas-blacklist-10606.sql`(template_id=11, region_mode=2, region_ids=新疆650000/西藏540000/青海630000/宁夏640000/内蒙古150000/海南460000/黑龙江230000/甘肃620000, status=0, tenant_id=10606),含前置查重 + 后置验证语句。 + +## 微信支付报错 APPID_MCHID_NOT_MATCH(tenant 10606 下单失败) + +- 现象:用户下单报 `创建微信支付订单失败:Wrong HttpStatusCode[400] ... APPID_MCHID_NOT_MATCH`。服务商模式 JSAPI,请求体 sp_appid=`wx541db955e7a62709`/sp_mchid=`1720296183`、sub_appid=`wxcad054ee427aaca1`/sub_mchid=`1744894035`。 +- 根因:传给微信的 `sub_appid` 与 `sub_mchid` 在微信侧不匹配(该子商户应用ID未绑定到该子商户号)。代码无 bug。 +- 4 个值来源:`gxwebsoft_core.sys_payment`(tenant 10606 微信JSAPI记录)字段 `app_id`/`mch_id`/`sub_app_id`/`sub_mch_id`;拼装在 `ShopOrderServiceImpl.java:809-912`(服务商模式)。 +- 已验证 `sub_app_id=wxcad054ee427aaca1` 就是 `guilixu-taro` 用户端小程序真实 appid(project.config.json),故 sub_appid 是对的、与买家 openid 一致。 +- 结论:问题在 `sub_app_id↔sub_mchid` 绑定被破坏——最可能(1)商户平台子商户 `1744894035` 对 appid 的授权被移除/失效;(2)`sys_payment.sub_mch_id` 被误改。 +- 修复:微信商户平台(服务商 `1720296183` 服务商平台→特约商户管理→开发配置)为子商户 `1744894035` 绑定 appid `wxcad054ee427aaca1`;并 `SELECT` 核对 `sys_payment` 的 sub_mch_id 仍为 `1744894035`。无需改代码,新订单号直接读最新配置。