fix(i18n): 跨系统错误消息去重+改异常语义, 补抖音/UMS缺失key

- 主应用包装层去通道名前缀, 文案改异常/error(业务层语义)
- 与子应用请求失败语义形成层级区分, 消除通道名和失败重叠
- 补抖音 closeFailed/notSupportMethod 缺失 key
- 新建 UMS ums.json(payFailed/closeFailed/notSupportMethod)
- 更新 channel/error.json 无引用的 wechat/alipay 历史副本
This commit is contained in:
DaxPay Dev
2026-07-06 18:35:10 +08:00
parent 1c689f04df
commit 1988c2e61e
10 changed files with 58 additions and 44 deletions

View File

@@ -9,24 +9,24 @@
"cacheConcurrentConflict": "Concurrent conflict",
"systemError": "Internal system error",
"validateParams": "Parameter validation failed",
"wechatOrderQueryFailed": "WeChat order query failed: {0}",
"wechatRefundQueryFailed": "WeChat refund query failed: {0}",
"wechatRefundCallFailed": "WeChat refund call failed: {0}",
"wechatPayCallFailed": "WeChat payment call failed: {0}",
"wechatCloseOrderFailed": "WeChat close order failed: {0}",
"alipayOrderQueryFailed": "Alipay order query failed: {0}",
"alipayRefundQueryFailed": "Alipay refund query failed: {0}",
"alipayRefundFailed": "Alipay refund failed: {0}",
"alipayRefundCallFailed": "Alipay refund call failed: {0}",
"alipayPreCreateFailed": "Alipay pre-create order failed: {0}",
"alipayPayCallFailed": "Alipay payment call failed: {0}",
"alipayCloseOrderFailed": "Alipay close order failed: {0}",
"alipayClientCreateFailed": "Failed to create AlipayClient: {0}",
"wechatOrderQueryFailed": "WeChat order query error: {0}",
"wechatRefundQueryFailed": "WeChat refund query error: {0}",
"wechatRefundCallFailed": "WeChat refund call error: {0}",
"wechatPayCallFailed": "WeChat payment call error: {0}",
"wechatCloseOrderFailed": "WeChat close order error: {0}",
"alipayOrderQueryFailed": "Alipay order query error: {0}",
"alipayRefundQueryFailed": "Alipay refund query error: {0}",
"alipayRefundFailed": "Alipay refund error: {0}",
"alipayRefundCallFailed": "Alipay refund call error: {0}",
"alipayPreCreateFailed": "Alipay pre-create order error: {0}",
"alipayPayCallFailed": "Alipay payment call error: {0}",
"alipayCloseOrderFailed": "Alipay close order error: {0}",
"alipayClientCreateFailed": "Error creating AlipayClient: {0}",
"lakalaIsvKeyNotConfigured": "Lakala ISV key is not configured",
"lakalaMerchantDuplicate": "This Lakala merchant number already exists under the merchant",
"lakalaPayFailed": "Lakala payment failed: {0}",
"lakalaRefundFailed": "Lakala refund failed: {0}",
"lakalaSyncFailed": "Lakala order sync failed: {0}",
"lakalaCloseFailed": "Lakala close order failed: {0}",
"lakalaPayFailed": "Payment error: {0}",
"lakalaRefundFailed": "Refund error: {0}",
"lakalaSyncFailed": "Order sync error: {0}",
"lakalaCloseFailed": "Close order error: {0}",
"lakalaUnsupportedPayMethod": "Unsupported payment method for Lakala: {0}"
}

View File

@@ -3,7 +3,7 @@
"wechatNotEnabled": "Merchant or service provider WeChat Pay channel not enabled",
"productConfigNotExist": "Service provider product payment configuration not found",
"noSubMchPerm": "You do not have permission to configure this sub merchant",
"closeFailed": "Alipay channel close failed: {0}",
"closeFailed": "Close order error: {0}",
"closeFailedReason": "Close failed, reason: {0}",
"cannotCloseSyncFirst": "Current transaction cannot be closed, please sync order status first",
"refundQueryInterval": "Please wait more than 10 seconds before retrying refund query",
@@ -15,7 +15,7 @@
"alipayJsapiFailed": "Alipay JSAPI payment failed",
"alipayScanFailed": "Alipay scan payment failed",
"alipayBscanFailed": "Alipay barcode payment failed",
"payFailed": "Alipay channel payment failed: {0}",
"payFailed": "Payment error: {0}",
"notSupportCancel": "This order does not support cancel operation",
"notSupportMethod": "Unsupported Alipay payment method: {0}",
"wechatJsapiNeedOpenid": "WeChat JSAPI payment requires openId parameter",

View File

@@ -4,5 +4,7 @@
"directMchDuplicate": "This Douyin direct merchant already exists under the merchant",
"appTypeInvalid": "Invalid Douyin application type",
"capabilityDuplicate": "Payment capability [{0}] is duplicated under this channel merchant",
"payFailed": "Douyin channel payment failed: {0}"
"payFailed": "Payment error: {0}",
"closeFailed": "Close order error: {0}",
"notSupportMethod": "Unsupported Douyin payment method: {0}"
}

View File

@@ -0,0 +1,5 @@
{
"payFailed": "Payment error: {0}",
"closeFailed": "Close order error: {0}",
"notSupportMethod": "Unsupported UMS payment method: {0}"
}

View File

@@ -44,8 +44,8 @@
"subMerchantDuplicate": "This sub-merchant already exists under the WeChat application",
"directMchDuplicate": "The WeChat merchant already exists under this merchant",
"capabilityDuplicate": "WeChat payment capability [{0}] is duplicated",
"payFailed": "WeChat channel payment failed: {0}",
"closeFailed": "WeChat channel close failed: {0}",
"payFailed": "Payment error: {0}",
"closeFailed": "Close order error: {0}",
"unsupportedPayMethod": "Unsupported WeChat payment method: {0}",
"accessTokenLockFailed": "Failed to get AccessToken: cannot acquire distributed lock",
"refreshAccessTokenFailed": "Failed to refresh AccessToken: {0}",

View File

@@ -9,24 +9,24 @@
"cacheConcurrentConflict": "并发冲突",
"systemError": "系统内部错误",
"validateParams": "参数校验失败",
"wechatOrderQueryFailed": "微信订单查询失败: {0}",
"wechatRefundQueryFailed": "微信退款查询失败: {0}",
"wechatRefundCallFailed": "微信退款调用失败: {0}",
"wechatPayCallFailed": "微信支付调用失败: {0}",
"wechatCloseOrderFailed": "微信关闭订单失败: {0}",
"alipayOrderQueryFailed": "支付宝订单查询失败: {0}",
"alipayRefundQueryFailed": "支付宝退款查询失败: {0}",
"alipayRefundFailed": "支付宝退款失败: {0}",
"alipayRefundCallFailed": "支付宝退款调用失败: {0}",
"alipayPreCreateFailed": "支付宝预创建订单失败: {0}",
"alipayPayCallFailed": "支付宝支付调用失败: {0}",
"alipayCloseOrderFailed": "支付宝关闭订单失败: {0}",
"alipayClientCreateFailed": "创建AlipayClient失败: {0}",
"wechatOrderQueryFailed": "微信订单查询异常: {0}",
"wechatRefundQueryFailed": "微信退款查询异常: {0}",
"wechatRefundCallFailed": "微信退款调用异常: {0}",
"wechatPayCallFailed": "微信支付调用异常: {0}",
"wechatCloseOrderFailed": "微信关闭订单异常: {0}",
"alipayOrderQueryFailed": "支付宝订单查询异常: {0}",
"alipayRefundQueryFailed": "支付宝退款查询异常: {0}",
"alipayRefundFailed": "支付宝退款异常: {0}",
"alipayRefundCallFailed": "支付宝退款调用异常: {0}",
"alipayPreCreateFailed": "支付宝预创建订单异常: {0}",
"alipayPayCallFailed": "支付宝支付调用异常: {0}",
"alipayCloseOrderFailed": "支付宝关闭订单异常: {0}",
"alipayClientCreateFailed": "创建AlipayClient异常: {0}",
"lakalaIsvKeyNotConfigured": "拉卡拉服务商密钥未配置",
"lakalaMerchantDuplicate": "该商户下已存在此拉卡拉商户号",
"lakalaPayFailed": "拉卡拉支付失败: {0}",
"lakalaRefundFailed": "拉卡拉退款失败: {0}",
"lakalaSyncFailed": "拉卡拉订单同步失败: {0}",
"lakalaCloseFailed": "拉卡拉关闭订单失败: {0}",
"lakalaPayFailed": "支付异常: {0}",
"lakalaRefundFailed": "退款异常: {0}",
"lakalaSyncFailed": "订单同步异常: {0}",
"lakalaCloseFailed": "关闭订单异常: {0}",
"lakalaUnsupportedPayMethod": "拉卡拉不支持的支付方式: {0}"
}

View File

@@ -3,7 +3,7 @@
"wechatNotEnabled": "商户或服务商微信支付通道未启用",
"productConfigNotExist": "服务商产品支付配置不存在",
"noSubMchPerm": "你没有权限配置此子商户号",
"closeFailed": "支付宝通道关闭失败: {0}",
"closeFailed": "关闭订单异常: {0}",
"closeFailedReason": "关闭失败, 原因: {0}",
"cannotCloseSyncFirst": "当前交易无法关闭操作, 请对订单同步状态后再进行操作",
"refundQueryInterval": "间隔10秒以上再发起退款查询请求",
@@ -15,7 +15,7 @@
"alipayJsapiFailed": "支付宝JsApi支付失败",
"alipayScanFailed": "支付宝扫码支付失败",
"alipayBscanFailed": "主动扫码支付失败",
"payFailed": "支付宝通道支付失败: {0}",
"payFailed": "支付异常: {0}",
"notSupportCancel": "该订单不支持撤销操作",
"notSupportMethod": "暂不支持的支付宝支付方式: {0}",
"wechatJsapiNeedOpenid": "微信JSAPI支付必须传入openId参数",

View File

@@ -4,5 +4,7 @@
"directMchDuplicate": "同一商户下该抖音直连商户已存在",
"appTypeInvalid": "抖音应用类型无效",
"capabilityDuplicate": "同一通道商户下支付能力[{0}]重复配置",
"payFailed": "抖音通道支付失败: {0}"
"payFailed": "支付异常: {0}",
"closeFailed": "关闭订单异常: {0}",
"notSupportMethod": "暂不支持的抖音支付方式: {0}"
}

View File

@@ -0,0 +1,5 @@
{
"payFailed": "支付异常: {0}",
"closeFailed": "关闭订单异常: {0}",
"notSupportMethod": "暂不支持的银联商务支付方式: {0}"
}

View File

@@ -44,8 +44,8 @@
"subMerchantDuplicate": "该微信应用下已存在此特约商户号",
"directMchDuplicate": "同一商户下该微信商户已存在",
"capabilityDuplicate": "微信支付能力[{0}]重复配置",
"payFailed": "微信通道支付失败: {0}",
"closeFailed": "微信通道关闭失败: {0}",
"payFailed": "支付异常: {0}",
"closeFailed": "关闭订单异常: {0}",
"unsupportedPayMethod": "暂不支持的微信支付方式: {0}",
"accessTokenLockFailed": "获取AccessToken失败无法获取分布式锁",
"refreshAccessTokenFailed": "刷新AccessToken失败: {0}",