From a9a62e6c65825827bb81482f12135bc7df019a02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Sat, 13 Apr 2024 00:00:29 +0800 Subject: [PATCH] 1 --- business/partner/purchase/ebai/financial_test.go | 2 +- business/partner/purchase/ebai/order.go | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/business/partner/purchase/ebai/financial_test.go b/business/partner/purchase/ebai/financial_test.go index dd8b99cd5..9b96a7682 100644 --- a/business/partner/purchase/ebai/financial_test.go +++ b/business/partner/purchase/ebai/financial_test.go @@ -32,7 +32,7 @@ func TestOnFinancialMsg(t *testing.T) { } func TestOnOrderDetail(t *testing.T) { - orderID := "1554939646172038357" + orderID := "4088600070462723689" result, err := api.EbaiAPI.OrderGet(orderID) if err == nil { new(PurchaseHandler).OnOrderDetail(result, partner.CreatedPeration) diff --git a/business/partner/purchase/ebai/order.go b/business/partner/purchase/ebai/order.go index d45779931..f91412886 100644 --- a/business/partner/purchase/ebai/order.go +++ b/business/partner/purchase/ebai/order.go @@ -130,7 +130,20 @@ func (p *PurchaseHandler) GetOrder4PartRefund(vendorOrderID string) (order *mode if err1 == nil { order = p.Map2Order(result1) if err2 == nil { - order.Skus = p.partRefund2OrderDetailSkuList(utils.Interface2String(result2["order_id"]), result2["reverse_order_list"]) + skuHave := make([]*model.OrderSku, 0, 0) + refundSkuList := p.partRefund2OrderDetailSkuList(utils.Interface2String(result2["order_id"]), result2["reverse_order_list"]) + if len(refundSkuList) != model.NO { + refundSkuMap := make(map[string]*model.OrderSku, 0) + for _, rs := range refundSkuList { + refundSkuMap[rs.VendorSkuID] = rs + } + for _, os := range order.Skus { + if _, OK := refundSkuMap[os.VendorSkuID]; !OK { + skuHave = append(skuHave, os) + } + } + } + order.Skus = append(order.Skus, skuHave...) giftSkus, discountMoney := getZengSkus(vendorOrderID, result1) order.DiscountMoney = discountMoney order.Skus = append(order.Skus, giftSkus...)