diff --git a/business/partner/purchase/ebai/order_afs.go b/business/partner/purchase/ebai/order_afs.go index 197dd1d07..d2b0e04e3 100644 --- a/business/partner/purchase/ebai/order_afs.go +++ b/business/partner/purchase/ebai/order_afs.go @@ -36,13 +36,17 @@ var ( ) func (c *PurchaseHandler) isAfsMsg(msg *ebaiapi.CallbackMsg) bool { - if msg.Cmd == ebaiapi.CmdOrderPartRefund { + switch msg.Cmd { + case ebaiapi.CmdOrderPartRefund: msgType := int(utils.MustInterface2Int64(msg.Body["type"])) return msgType == ebaiapi.OrderPartRefuncTypeCustomer || msgType == ebaiapi.OrderPartRefuncTypeCS - } else if msg.Cmd == ebaiapi.CmdOrderUserCancel { + case ebaiapi.CmdOrderUserCancel: + // 1表示订单完成前用户全单取消申请流程, 2表示订单完成后用户全单退款申请流程 cancelType := int(utils.MustInterface2Int64(msg.Body["cancel_type"])) - return cancelType == ebaiapi.OrderUserCancelTypeAfterSale + + return cancelType == ebaiapi.OrderUserCancelTypeAfterSale || cancelType == ebaiapi.OrderUserCancelTypeBeforeSale } + return false } diff --git a/business/partner/purchase/mtwm/order_afs.go b/business/partner/purchase/mtwm/order_afs.go index c8cafd921..7a3f768cb 100644 --- a/business/partner/purchase/mtwm/order_afs.go +++ b/business/partner/purchase/mtwm/order_afs.go @@ -159,10 +159,15 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *mtwmapi.CallbackMsg) (retVal *mtwma } // 新订单平台自动同意退单,某一些情况下产生的运单没退!这个处理一下! - //if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree) { - // partner.CurOrderManager.+ - // defsch.FixedScheduler.CancelAll3rdWaybills(jxcontext.AdminCtx, orderStatus.RefVendorOrderID, orderStatus.VendorID, true) - //} + if refundData.NotifyType == mtwmapi.MsgTypeOrderAgree && (msg.Cmd == mtwmapi.MsgTypeOrderRefund || msg.Cmd == mtwmapi.MsgTypeOrderAgree) { + wayBill, _ := dao.GetWaybills(dao.GetDB(), orderStatus.RefVendorOrderID, nil) + for _, v := range wayBill { + handlerInfo := partner.GetDeliveryPlatformFromVendorID(v.WaybillVendorID) + if handlerInfo != nil { + handlerInfo.Handler.CancelWaybill(v, 0, "订单转移被取消") + } + } + } } } return mtwmapi.Err2CallbackResponse(err, "")