소스 검색

docs: 保存公众号菜单结构 JSON,更新项目文档添加服务号配置说明

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
skyline 1 일 전
부모
커밋
fdd6e30ff4
2개의 변경된 파일24개의 추가작업 그리고 0개의 파일을 삭제
  1. 10 0
      CLAUDE.md
  2. 14 0
      docs/mp_menu.json

+ 10 - 0
CLAUDE.md

@@ -71,6 +71,16 @@ available = openingBalance + feeBase - platformFee
 - `createOrder()` → 扣预付款,设置 `isCross` 标记
 - `settleOrder()` → 扣款,回填无归属充值,本店跳过/跨店创建分账
 
+## 公众号配置
+
+- 服务号 AppID: `wxc175b08b1b71cd5a`
+- 服务器 URL: `https://dev-wash.kuaiyuman.cn/api/wx/notify`
+- Token: `Yeswash`,AES Key 由 `application.yml` 中 `wechat.mp.aeskey` 配置
+- 消息加解密方式:安全模式,`WeixinMPServiceImpl.handleWxMPNotify()` 已支持自动解密
+- `/wx/**` 路径已在 `SaTokenConfigure` 中排除鉴权
+- 服务器推送启用后,网页配置的自定义菜单失效,需通过 API 重建。菜单结构见 `docs/mp_menu.json`
+- `GET /wx/exportMenu` 可导出当前菜单 JSON,`POST /wx/notify` 接收微信事件推送
+
 ## 注意事项
 - `SaToken` 注解 `@SaIgnore` 需要确保被 Spring 代理拦截才能生效
 - 分账记录 `tradeNo` 与微信支付 `transactionId` 对应,通过 `t_pay_log` 桥接 `WalletDetail`

+ 14 - 0
docs/mp_menu.json

@@ -0,0 +1,14 @@
+{
+  "button": [
+    {
+      "type": "view",
+      "name": "停车减免",
+      "url": "https://cloud.yeswash.cn/parking.html"
+    },
+    {
+      "type": "view",
+      "name": "商家入口",
+      "url": "https://cloud.yeswash.cn/h5#/"
+    }
+  ]
+}