fix 处理线上遇到问题: 支付宝获取用户信息;云闪付空指针问题;优化各类网址配置, 兼容结尾带/和不带/;错误字段长度

This commit is contained in:
DaxPay
2024-06-27 16:04:45 +08:00
parent 23af7c88f2
commit 46d04530d9
23 changed files with 131 additions and 82 deletions

View File

@@ -2291,38 +2291,35 @@ CREATE TABLE `notice_wechat_config` (
-- Records of notice_wechat_config
-- ----------------------------
-- ----------------------------
-- Table structure for pay_alipay_config
-- ----------------------------
DROP TABLE IF EXISTS `pay_alipay_config`;
CREATE TABLE `pay_alipay_config` (
`id` bigint(20) NOT NULL COMMENT '主键',
`app_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付宝商户appId',
`enable` bit(1) NULL DEFAULT NULL COMMENT '是否启用',
`notify_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '异步通知接收路径',
`return_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '同步通知页面路径',
`server_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付网关地址',
`redirect_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '授权回调地址',
`auth_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '认证类型',
`sign_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签名类型 RSA2',
`alipay_public_key` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝公钥',
`private_key` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '私钥',
`app_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '应用公钥证书',
`alipay_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝公钥证书',
`alipay_root_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝CA根证书',
`sandbox` bit(1) NULL DEFAULT NULL COMMENT '是否沙箱环境',
`limit_amount` int(15) NULL DEFAULT NULL COMMENT '支付限额',
`pay_ways` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '可用支付方式',
`allocation` bit(1) NULL DEFAULT NULL COMMENT '是否支付分账',
`alipay_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合作者身份ID',
`remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
`last_modified_time` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
`version` int(11) NOT NULL COMMENT '乐观锁',
`deleted` bit(1) NOT NULL COMMENT '删除标志',
PRIMARY KEY (`id`) USING BTREE
`id` bigint(20) NOT NULL COMMENT '主键',
`app_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付宝商户appId',
`enable` bit(1) NULL DEFAULT NULL COMMENT '是否启用',
`notify_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '异步通知接收路径',
`return_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '同步通知页面路径',
`server_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付网关地址',
`redirect_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '授权回调地址',
`auth_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '认证类型',
`sign_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签名类型 RSA2',
`alipay_public_key` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝公钥',
`private_key` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '私钥',
`app_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '应用公钥证书',
`alipay_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝公钥证书',
`alipay_root_cert` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '支付宝CA根证书',
`sandbox` bit(1) NULL DEFAULT NULL COMMENT '是否沙箱环境',
`limit_amount` int(15) NULL DEFAULT NULL COMMENT '支付限额',
`pay_ways` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '可用支付方式',
`allocation` bit(1) NULL DEFAULT NULL COMMENT '是否支付分账',
`alipay_user_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '合作者身份ID',
`remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
`last_modified_time` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
`version` int(11) NOT NULL COMMENT '乐观锁',
`deleted` bit(1) NOT NULL COMMENT '删除标志',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付宝支付配置' ROW_FORMAT = DYNAMIC;
-- ----------------------------
@@ -2420,7 +2417,7 @@ CREATE TABLE `pay_alloc_order` (
`req_time` datetime NULL DEFAULT NULL COMMENT '请求时间,传输时间戳',
`client_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付终端ip',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
@@ -2593,14 +2590,14 @@ DROP TABLE IF EXISTS `pay_callback_record`;
CREATE TABLE `pay_callback_record` (
`id` bigint(20) NOT NULL COMMENT '主键',
`trade_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '本地交易号',
`out_trade_no` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '通道交易号',
`out_trade_no` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '通道交易号',
`channel` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '支付通道',
`callback_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '回调类型',
`notify_info` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '通知消息',
`status` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '回调处理状态',
`repair_order_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '修复号',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE,
@@ -2649,7 +2646,7 @@ CREATE TABLE `pay_client_notice_record` (
`success` bit(1) NOT NULL COMMENT '发送是否成功',
`send_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '发送类型',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
PRIMARY KEY (`id`) USING BTREE,
@@ -2701,7 +2698,7 @@ CREATE TABLE `pay_close_record` (
`close_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '关闭类型',
`closed` bit(1) NOT NULL COMMENT '是否关闭成功',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`client_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付终端ip',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
@@ -2766,7 +2763,7 @@ CREATE TABLE `pay_order` (
`close_time` datetime NULL DEFAULT NULL COMMENT '关闭时间',
`expired_time` datetime NULL DEFAULT NULL COMMENT '过期时间',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`return_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '同步跳转地址',
`notify_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '异步通知地址',
`extra_param` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '附加参数',
@@ -2798,26 +2795,26 @@ CREATE TABLE `pay_platform_config` (
`website_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '网站地址',
`sign_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签名方式',
`sign_secret` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '签名秘钥',
`notify_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '消息通知方式',
`notify_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '消息通知地址',
`return_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '同步支付跳转地址',
`limit_amount` int(15) NULL DEFAULT NULL COMMENT '支付限额',
`order_timeout` int(8) NULL DEFAULT NULL COMMENT '订单默认超时时间(分钟)',
`req_sign` bit(1) NOT NULL COMMENT '是否对请求进行验签',
`req_timeout` int(10) NOT NULL COMMENT '请求有效时长(秒)',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
`last_modified_time` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
`version` int(11) NOT NULL COMMENT '乐观锁',
`deleted` bit(1) NOT NULL COMMENT '删除标志',
`limit_amount` int(15) NULL DEFAULT NULL COMMENT '支付限额',
`req_sign` bit(1) NOT NULL COMMENT '是否对请求进行验签',
`notify_type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '消息通知方式',
`req_timeout` int(10) NOT NULL COMMENT '请求有效时长(秒)',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '支付平台配置' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of pay_platform_config
-- ----------------------------
INSERT INTO `pay_platform_config` VALUES (0, 'http://www.daxpay.cn/server', 'HMAC_SHA256', '123456', NULL, '', '', 19911, 30, b'1', 10, 0, '2024-01-02 20:23:19', 1399985191002447872, '2024-06-21 17:59:41', 25, b'0');
INSERT INTO `pay_platform_config` VALUES (0, 'http://www.daxpay.cn/server', 'HMAC_SHA256', '123456', '', '', 30, 0, '2024-01-02 20:23:19', 1399985191002447872, '2024-06-21 17:59:41', 25, b'0', 19911, b'1', NULL, 10);
-- ----------------------------
-- Table structure for pay_reconcile_diff_record
@@ -2882,7 +2879,7 @@ CREATE TABLE `pay_reconcile_order` (
`compare` bit(1) NOT NULL COMMENT '明细对账单比对',
`result` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '对账结果',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
@@ -2946,7 +2943,7 @@ CREATE TABLE `pay_refund_order` (
`req_time` datetime NULL DEFAULT NULL COMMENT '请求时间,传输时间戳',
`client_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付终端ip',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
@@ -3008,7 +3005,7 @@ CREATE TABLE `pay_sync_record` (
`repair` bit(1) NOT NULL COMMENT '是否进行修复',
`repair_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '修复单号',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`client_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付终端ip',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
@@ -3071,7 +3068,7 @@ CREATE TABLE `pay_transfer_order` (
`req_time` datetime NULL DEFAULT NULL COMMENT '请求时间,传输时间戳',
`client_ip` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '支付终端ip',
`error_code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误码',
`error_msg` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`error_msg` varchar(2048) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '错误信息',
`creator` bigint(20) NULL DEFAULT NULL COMMENT '创建者ID',
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
`last_modifier` bigint(20) NULL DEFAULT NULL COMMENT '最后修者ID',
@@ -3225,7 +3222,6 @@ CREATE TABLE `pay_wechat_pay_config` (
`enable` bit(1) NULL DEFAULT NULL COMMENT '是否启用',
`notify_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '异步通知路径',
`return_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '同步通知路径',
`redirect_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '授权回调地址',
`api_version` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '接口版本',
`api_key_v2` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'APIv2 密钥',
`api_key_v3` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'APIv3 密钥',
@@ -3242,13 +3238,14 @@ CREATE TABLE `pay_wechat_pay_config` (
`last_modified_time` datetime NULL DEFAULT NULL COMMENT '最后修改时间',
`version` int(11) NOT NULL COMMENT '乐观锁',
`deleted` bit(1) NOT NULL COMMENT '删除标志',
`redirect_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '授权回调地址',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '微信支付配置' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of pay_wechat_pay_config
-- ----------------------------
INSERT INTO `pay_wechat_pay_config` VALUES (0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'wap,app,jsapi,qrcode,barcode', NULL, NULL, 0, '2024-01-03 23:13:11', 1399985191002447872, '2024-04-02 17:07:37', 23, b'0');
INSERT INTO `pay_wechat_pay_config` VALUES (0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'wap,app,jsapi,qrcode,barcode', NULL, NULL, 0, '2024-01-03 23:13:11', 1399985191002447872, '2024-04-02 17:07:37', 23, b'0', NULL);
-- ----------------------------
-- Table structure for pay_wechat_reconcile_bill_detail