更新商户整单取消和部分取消接口
This commit is contained in:
@@ -361,7 +361,16 @@ func (p *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI
|
||||
p.postFakeMsg(order.VendorOrderID, fakeAcceptOrder)
|
||||
} else {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.OrderCancel(order.VendorOrderID, ebaiapi.CancelTypeCustom, "bu")
|
||||
//err = api.EbaiAPI.OrderCancel(order.VendorOrderID, ebaiapi.CancelTypeCustom, "bu")
|
||||
err = api.EbaiAPI.OrderReverseApply(&ebaiapi.OrderReverseApplyParam{
|
||||
OrderId: order.VendorOrderID,
|
||||
IdempotentId: utils.Int64ToStr(time.Now().Unix()),
|
||||
RefundType: ebaiapi.MerchantOrderReverseApplyCancel,
|
||||
ReasonCode: "7015",
|
||||
ReasonRemarks: "",
|
||||
NeedIvrUser: 0,
|
||||
RefundProductList: nil,
|
||||
})
|
||||
}
|
||||
}
|
||||
return err
|
||||
@@ -689,7 +698,16 @@ func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *mod
|
||||
|
||||
func (c *PurchaseHandler) CancelOrder(ctx *jxcontext.Context, order *model.GoodsOrder, reason string) (err error) {
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.OrderCancel(order.VendorOrderID, ebaiapi.CancelTypeCustom, reason)
|
||||
err = api.EbaiAPI.OrderReverseApply(&ebaiapi.OrderReverseApplyParam{
|
||||
OrderId: order.VendorOrderID,
|
||||
IdempotentId: utils.Int64ToStr(time.Now().Unix()),
|
||||
RefundType: ebaiapi.MerchantOrderReverseApplyCancel,
|
||||
ReasonCode: "7015",
|
||||
ReasonRemarks: reason,
|
||||
NeedIvrUser: 0,
|
||||
RefundProductList: nil,
|
||||
})
|
||||
//err = api.EbaiAPI.OrderCancel(order.VendorOrderID, ebaiapi.CancelTypeCustom, reason)
|
||||
}
|
||||
return err
|
||||
}
|
||||
@@ -700,16 +718,47 @@ func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.Goods
|
||||
err = c.PickupGoods(order, false, ctx.GetUserName())
|
||||
}
|
||||
if err == nil {
|
||||
var skuList []*ebaiapi.RefundSku
|
||||
for _, sku := range removedSkuList {
|
||||
skuList = append(skuList, &ebaiapi.RefundSku{
|
||||
CustomeSkuID: utils.Int2Str(jxutils.GetSkuIDFromOrderSku(sku)),
|
||||
Number: utils.Int2Str(sku.Count),
|
||||
})
|
||||
//var skuList []*ebaiapi.RefundSku
|
||||
//for _, sku := range removedSkuList {
|
||||
// skuList = append(skuList, &ebaiapi.RefundSku{
|
||||
// CustomeSkuID: utils.Int2Str(jxutils.GetSkuIDFromOrderSku(sku)),
|
||||
// Number: utils.Int2Str(sku.Count),
|
||||
// })
|
||||
//}
|
||||
//if globals.EnableEbaiStoreWrite {
|
||||
// err = api.EbaiAPI.OrderPartRefund(order.VendorOrderID, skuList)
|
||||
//}
|
||||
eabiApi := api.EbaiAPI
|
||||
orderDetail, err := eabiApi.OrderGet2(order.VendorOrderID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if globals.EnableEbaiStoreWrite {
|
||||
err = api.EbaiAPI.OrderPartRefund(order.VendorOrderID, skuList)
|
||||
refundSkuList := make([]*ebaiapi.RefundProductListParam, 0, 0)
|
||||
for _, r := range removedSkuList {
|
||||
for _, v := range orderDetail.Products[0] {
|
||||
if utils.Int2Str(jxutils.GetSkuIDFromOrderSku(r)) == v.CustomSkuID || r.VendorSkuID == v.BaiduProductID {
|
||||
refundSkuList = append(refundSkuList, &ebaiapi.RefundProductListParam{
|
||||
SubBizOrderId: v.SubBizOrderID,
|
||||
PlatformSkuId: v.BaiduProductID,
|
||||
Number: utils.Int2Str(r.Count),
|
||||
RefundAmount: "",
|
||||
FundCalculateType: "0",
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 部分退款
|
||||
err = eabiApi.OrderReverseApply(&ebaiapi.OrderReverseApplyParam{
|
||||
OrderId: order.VendorOrderID,
|
||||
IdempotentId: utils.Int64ToStr(time.Now().Unix()),
|
||||
RefundType: ebaiapi.MerchantOrderReverseApplyPartCancel,
|
||||
ReasonCode: "7015",
|
||||
ReasonRemarks: reason,
|
||||
NeedIvrUser: 1,
|
||||
RefundProductList: refundSkuList,
|
||||
})
|
||||
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user