diff --git a/business/partner/purchase/ebai/order_afs.go b/business/partner/purchase/ebai/order_afs.go index 3d1718d35..46da75e99 100644 --- a/business/partner/purchase/ebai/order_afs.go +++ b/business/partner/purchase/ebai/order_afs.go @@ -45,11 +45,11 @@ func (c *PurchaseHandler) isAfsMsg(msg *ebaiapi.CallbackMsg) bool { } func (c *PurchaseHandler) OnAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaiapi.CallbackResponse) { - jxutils.CallMsgHandler(func() { - utils.CallFuncAsync(func() { + utils.CallFuncAsync(func() { + jxutils.CallMsgHandler(func() { retVal = c.onAfsOrderMsg(msg) - }) - }, jxutils.ComposeUniversalOrderID(GetOrderIDFromMsg(msg), model.VendorIDEBAI)) + }, jxutils.ComposeUniversalOrderID(GetOrderIDFromMsg(msg), model.VendorIDEBAI)) + }) return retVal } @@ -71,7 +71,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaia // SkuBoxMoney: afsInfo.MealBoxMoney, } if msg.Cmd == ebaiapi.CmdOrderPartRefund { - if orderStatus.Status <= model.AfsOrderStatusNew { + if orderStatus.Status == model.AfsOrderStatusWait4Approve || orderStatus.Status == model.AfsOrderStatusNew { partRefundData := msg.Data.(*ebaiapi.CBPartRefundInfo) afsOrder.VendorReasonType = partRefundData.ReasonType afsOrder.ReasonType = c.convertAfsReasonType(partRefundData.ReasonType) @@ -98,7 +98,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaia } } } else if msg.Cmd == ebaiapi.CmdOrderUserCancel { - if orderStatus.Status <= model.AfsOrderStatusNew { + if orderStatus.Status == model.AfsOrderStatusWait4Approve || orderStatus.Status == model.AfsOrderStatusNew { if orderFinancial, err2 := partner.CurOrderManager.LoadOrderFinancial(afsOrder.VendorOrderID, afsOrder.VendorID); err2 == nil { afsOrder = c.OrderFinancialDetail2Refund(orderFinancial, msg) cancelData := msg.Data.(*ebaiapi.CBUserCancelInfo) @@ -111,7 +111,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *ebaiapi.CallbackMsg) (retVal *ebaia } } var err error - if orderStatus.Status <= model.AfsOrderStatusNew { + if orderStatus.Status == model.AfsOrderStatusWait4Approve || orderStatus.Status == model.AfsOrderStatusNew { err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, orderStatus) } else { err = partner.CurOrderManager.OnAfsOrderStatusChanged(orderStatus) diff --git a/business/partner/purchase/jd/order_afs.go b/business/partner/purchase/jd/order_afs.go index 3645b7737..1852d15eb 100644 --- a/business/partner/purchase/jd/order_afs.go +++ b/business/partner/purchase/jd/order_afs.go @@ -73,7 +73,7 @@ func (c *PurchaseHandler) onAfsOrderMsg(msg *jdapi.CallbackOrderMsg) (retVal *jd if err == nil { var err error status := c.callbackAfsMsg2Status(msg, afsInfo) - if status.Status <= model.AfsOrderStatusNew { + if status.Status == model.AfsOrderStatusWait4Approve || status.Status == model.AfsOrderStatusNew { afsOrder := c.buildAfsOrder(afsInfo) err = partner.CurOrderManager.OnAfsOrderNew(afsOrder, status) } else {