Merge branch 'jdshop' of e.coding.net:rosydev/jx-callback into jdshop

This commit is contained in:
邹宗楠
2022-08-08 09:12:11 +08:00
2 changed files with 17 additions and 6 deletions

View File

@@ -641,7 +641,12 @@ func (c *PurchaseHandler) GetOrderRealMobile(ctx *jxcontext.Context, order *mode
func (c *PurchaseHandler) AgreeOrRefuseCancel(ctx *jxcontext.Context, order *model.GoodsOrder, isAgree bool, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
if isAgree {
err = api.EbaiAPI.OrderAgreeRefund(order.VendorOrderID)
//售后同意多次取消
if order.Status > model.OrderStatusEndBegin {
err = api.EbaiAPI.OrderAgreePartRefund(order.VendorOrderID)
} else {
err = api.EbaiAPI.OrderAgreeRefund(order.VendorOrderID)
}
} else {
err = api.EbaiAPI.OrderDisagreeRefund(order.VendorOrderID, reason)
}

View File

@@ -224,9 +224,9 @@ func (c *PurchaseHandler) callbackAfsMsg2Status(msg *ebaiapi.CallbackMsg) (order
func (c *PurchaseHandler) AgreeOrRefuseRefund(ctx *jxcontext.Context, order *model.AfsOrder, approveType int, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
if approveType == partner.AfsApproveTypeRefused {
err = api.EbaiAPI.OrderDisagreeRefund(order.VendorOrderID, reason)
err = api.EbaiAPI.OrderDisagreeReturnGoods(order.VendorOrderID, reason)
} else {
err = api.EbaiAPI.OrderAgreeRefund(order.VendorOrderID)
err = api.EbaiAPI.OrderAgreeReturnGoods(order.VendorOrderID)
}
}
return err
@@ -243,13 +243,19 @@ func (c *PurchaseHandler) RefundOrder(ctx *jxcontext.Context, order *model.Goods
return c.PartRefundOrder(ctx, order, order.Skus, reason)
}
// 发起部分退款
// 发起部分退款 售后/售中
func (c *PurchaseHandler) PartRefundOrder(ctx *jxcontext.Context, order *model.GoodsOrder, refundSkuList []*model.OrderSku, reason string) (err error) {
if globals.EnableEbaiStoreWrite {
//售后部分多次退款
if order.Status > model.OrderStatusEndBegin {
return fmt.Errorf("饿百暂不支持售后退款!")
if err := api.EbaiAPI.OrderAgreePartRefund(order.VendorOrderID); err != nil {
return err
}
} else {
if err := api.EbaiAPI.OrderPartRefund(order.VendorOrderID, orderSkus2AfsSkus(refundSkuList)); err != nil {
return err
}
}
err = api.EbaiAPI.OrderPartRefund(order.VendorOrderID, orderSkus2AfsSkus(refundSkuList))
}
return err
}