Server: - New lib/wxpay.js: native crypto RSA-SHA256 signing, JSAPI prepay, AES-256-GCM notify decryption, order query (no npm deps) - New dao/payment-order.dao.js: createOrder, markPrepay, markPaidAndActivateSubscription (idempotent + transactional) - New routes/payment.js: GET order status, POST order sync - New routes/payment-notify.js: WeChat async callback handler with signature verification, amount/appid/mchid validation - Modified subscription/purchase: auto-detects wxpay config, returns real payment_params or mock fallback - Schema: payment_orders table with out_trade_no unique key - app.js: express.raw() for notify path, payment routes mounted - config.js: wxpay block with 7 env vars - .env.example: all WeChat Pay fields documented - .gitignore: certs/, *.pem, *.p12 Miniprogram: - subscribe-plans doPurchase: calls real purchase API, falls back to mockPurchase only when server returns mock:true - Added syncAndRedirect for post-payment order confirmation - api.js: getPaymentOrder, syncPaymentOrder - Removed "模拟支付"/"测试环境" from UI text
18 行
297 B
Plaintext
18 行
297 B
Plaintext
node_modules/
|
|
admin-console/node_modules/
|
|
admin-console/dist/
|
|
.DS_Store
|
|
.env
|
|
.env.*
|
|
!.env.example
|
|
!**/.env.example
|
|
!**/.env.production.example
|
|
docs/reference/小程序及后台管理软件开发资料/
|
|
软件系统说明.docx
|
|
*.docx
|
|
!docs/protocols/协议简述.docx
|
|
cloud/sql/
|
|
certs/
|
|
*.pem
|
|
*.p12
|