بنقرة واحدة
wechat-pay-stateless
MallBase 微信支付 SDK 在 Swoole 常驻进程下的无状态构造规则;接入或重构微信支付 / 公众号 / 小程序 SDK 调用时使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
MallBase 微信支付 SDK 在 Swoole 常驻进程下的无状态构造规则;接入或重构微信支付 / 公众号 / 小程序 SDK 调用时使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
MallBase 扩展槽边界规范;涉及会员、积分、分销、余额、优惠等权益扩展接入订单、商品编辑或 UniApp 展示时使用。
MallBase schema 真相源与幂等升级 SQL 规则;升级 SQL 仅在用户明确要求已有库升级时使用。
MallBase ThinkPHP 后端规则索引;仅在需要浏览或选择后端规则、且无法确定具体 ThinkPHP skill 时使用。
MallBase 已有库升级 SQL 边界规则;只有用户明确要求考虑已有库升级、测试服/线上升级或 upgrade SQL 时使用。
MallBase ThinkPHP 模型字段访问器与素材回显规则;在 Model 字段读写、访问器、修改器、with 关联、素材 ID 回显或 Service 字段组装优化时使用。
MallBase preview 演示站分支边界规则;涉及 preview 分支、演示站专用功能、main 与 preview 合并、反向合并、演示站部署或公开演示能力修改时使用。
| name | wechat-pay-stateless |
| description | MallBase 微信支付 SDK 在 Swoole 常驻进程下的无状态构造规则;接入或重构微信支付 / 公众号 / 小程序 SDK 调用时使用。 |
backend/app/service/client/payment/WechatPayFactory.phpbackend/app/service/client/payment/WechatPayClient.phpnew EasyWeChat\Pay\Application(...) 或同类 SDK 实例化点属于 service-stateless-swoole 的子规则,针对支付 SDK 特殊点单独沉淀。
Factory 每次调用返回新实例:
Pay\Application 缓存到类属性、static、容器单例配置必须每次重新读取:
mchid / api_v3_key / cert_serial_no / private_key 路径 / platform_public_key 路径 / platform_public_key_id 全部通过 getSystemSetting() 读取.env、不读 config/wechat.phpAppID 按 scene 切换,Factory 不缓存 scene:
wechat_mini_appidwechat_offi_appidpayer_client_ipBusinessException,不让 SDK 用空字符串发请求证书文件读取规则:
backend/storage/cert/,权限 0600static 缓存证书内容,避免凭据轮换后旧 worker 仍持有旧证书凭据校验前置:
assertCredentials(),缺一项即抛业务异常参考 backend/app/service/client/WechatAppFactory.php,等价模式:
class WechatPayFactory
{
public function jsapi(int $scene): Application
{
$config = $this->loadConfig($scene); // 每次读 mb_setting
$this->assertCredentials($config);
return new Application($config); // 每次 new
}
}
private static ?Application $app = null;bind(Application::class, fn() => new Application(...))(容器单例)Application 实例static 缓存BusinessException,不传空字符串给 SDK在以下场景触发此模式:
.codex/skills/thinkPHP/service-stateless-swoole/SKILL.md — 上位通用规则backend/app/service/client/WechatAppFactory.php — 范式参考.codex/skills/thinkPHP/payment-notify-idempotency/SKILL.md — 支付回调幂等姊妹规则