优化订单支付
This commit is contained in:
@@ -612,6 +612,9 @@ func normalizePaymentStatus(raw map[string]string) string {
|
||||
|
||||
func normalizeRefundStatus(raw map[string]string) string {
|
||||
value := strings.ToUpper(firstNonEmpty(raw["refund_status"], raw["trade_state"], raw["trade_status"], raw["status"]))
|
||||
if value == "" && responseOK(raw) {
|
||||
return "refunded"
|
||||
}
|
||||
switch value {
|
||||
case "SUCCESS", "REFUND_SUCCESS", "TRADE_SUCCESS", "REFUNDED", "S", "11":
|
||||
return "refunded"
|
||||
|
||||
@@ -77,6 +77,16 @@ func TestParsePayloadNormalizesAliases(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeRefundStatusTreatsSuccessCodeAsRefunded(t *testing.T) {
|
||||
status := normalizeRefundStatus(map[string]string{
|
||||
"code": "BBS00000",
|
||||
"msg": "成功",
|
||||
})
|
||||
if status != "refunded" {
|
||||
t.Fatalf("normalizeRefundStatus() = %q, want refunded", status)
|
||||
}
|
||||
}
|
||||
|
||||
func TestCreatePaymentOmitsCounterParamWhenPayModeBlank(t *testing.T) {
|
||||
body := captureCreatePaymentBody(t, "")
|
||||
reqData := body["req_data"].(map[string]any)
|
||||
|
||||
Reference in New Issue
Block a user