增加支付功能

This commit is contained in:
2026-09-15 12:46:29 +08:00
parent 943c3708b0
commit a82b300b1a
46 changed files with 11675 additions and 21 deletions
@@ -0,0 +1,39 @@
-- =============================================================
-- 平台支付渠道:初始化五个渠道配置行
-- 表:yz_platform_payment_channel
-- 说明:
-- 五个渠道(微信支付 / 支付宝 / 银联 / 云闪付 / PayPal)与前端
-- platform/src/views/system/payment/channels/ 一一对应。
-- 这里只插入「渠道骨架」:名称、回调地址、默认开关,商户号与密钥留空,
-- 由平台管理员在渠道配置页填写(敏感参数写入 config_json 前由后端加密)。
-- 初始 enabled 一律为 0(停用),配置完成并通过「测试连接」后再由页面启用,
-- 前端会按「enabled=1 → 已启用;enabled=0 且无参数 → 未配置;enabled=0 且有参数 → 已停用」展示状态。
-- 云闪付复用银联商户参数,仅存收银台标识开关(extra_json.show_logo / logo_positions);
-- PayPal 默认沙箱环境(extra_json.env=sandbox),当前业务不跨境,保持停用。
-- 本脚本幂等:已存在同名渠道(含已软删)则跳过,可重复执行。
-- 依赖:先执行 create_platform_payment.sql 建表。
-- 运行:mysql --default-character-set=utf8mb4 -h<host> -P<port> -u<user> -p <db> < init_platform_payment_channel.sql
-- =============================================================
INSERT INTO `yz_platform_payment_channel`
(`channel`, `name`, `merchant_no`, `config_json`, `cert_json`, `callback_url`, `enabled`, `extra_json`, `remark`, `create_time`, `update_time`)
SELECT v.`channel`, v.`name`, '', NULL, NULL,
CONCAT('/api/payment/callback/', v.`channel`), 0, v.`extra_json`, v.`remark`, NOW(), NOW()
FROM (
SELECT 'wechat' AS `channel`, '微信支付' AS `name`, '' AS `extra_json`,
'主渠道:JSAPI / Native 扫码收款,需商户号、APPID、APIv3 密钥与商户证书' AS `remark`
UNION ALL SELECT 'alipay', '支付宝', '',
'电脑网站支付 / 手机网站支付,RSA2 签名,异步通知无需登记'
UNION ALL SELECT 'unionpay', '银联', '',
'全渠道收单,商户号与证书由收单机构下发,回调地址需向收单机构报备'
UNION ALL SELECT 'cloudpay', '云闪付', '{"show_logo":1,"logo_positions":["pc","h5"]}',
'复用银联商户参数,仅控制收银台是否展示云闪付标识'
UNION ALL SELECT 'paypal', 'PayPal', '{"env":"sandbox"}',
'跨境预留渠道,当前业务不跨境,默认停用'
) v
WHERE NOT EXISTS (
SELECT 1 FROM `yz_platform_payment_channel` c WHERE c.`channel` = v.`channel`
);
-- 校验:SELECT id, channel, name, merchant_no, enabled, callback_url, delete_time
-- FROM yz_platform_payment_channel ORDER BY id;