From c9fcb83e564b5a8cb083256ddec0eb3f99f4446f Mon Sep 17 00:00:00 2001 From: gazebo Date: Mon, 13 May 2019 15:31:14 +0800 Subject: [PATCH] =?UTF-8?q?-=20onAfsOrderNew=E9=83=BD=E8=A6=81=E6=A3=80?= =?UTF-8?q?=E6=9F=A5=E6=98=AF=E5=90=A6=E5=B7=B2=E6=9C=89=E5=90=8C=E5=8F=B7?= =?UTF-8?q?=E7=9A=84=E5=94=AE=E5=90=8E=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxcallback/orderman/order_afs.go | 24 +++++++++++++---------- business/partner/purchase/jd/order.go | 1 + 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/business/jxcallback/orderman/order_afs.go b/business/jxcallback/orderman/order_afs.go index 2e5b1632a..f6014a086 100644 --- a/business/jxcallback/orderman/order_afs.go +++ b/business/jxcallback/orderman/order_afs.go @@ -49,18 +49,22 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode } return err } - if orderStatus.Status == model.AfsOrderStatusNew { - if _, err = c.loadAfsOrder(db, afsOrder.AfsOrderID, afsOrder.VendorID); err != nil { - if !dao.IsNoRowsError(err) { - return err - } - } else { - dao.Commit(db) - return nil + var existAfsOrder *model.AfsOrder + if existAfsOrder, err = c.loadAfsOrder(db, afsOrder.AfsOrderID, afsOrder.VendorID); err != nil { + if !dao.IsNoRowsError(err) { + return err } } - if err = c.SaveAfsOrder(db, afsOrder, isAdjust); err != nil { - return err + if existAfsOrder != nil { + existAfsOrder.Status = afsOrder.Status + existAfsOrder.VendorStatus = afsOrder.VendorStatus + if _, err = dao.UpdateEntity(db, existAfsOrder, "Status", "VendorStatus"); err != nil { + return err + } + } else { + if err = c.SaveAfsOrder(db, afsOrder, isAdjust); err != nil { + return err + } } dao.Commit(db) scheduler.CurrentScheduler.OnAfsOrderNew(afsOrder, false) diff --git a/business/partner/purchase/jd/order.go b/business/partner/purchase/jd/order.go index c8b4c3081..a3f1afe94 100644 --- a/business/partner/purchase/jd/order.go +++ b/business/partner/purchase/jd/order.go @@ -47,6 +47,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi } else if msg.MsgURL == jdapi.CallbackMsgAfterSaleBillStatus { retVal = c.OnAfsOrderMsg(msg) } else { + // 新订单事件,与订单状态有点冲突 if jdapi.StatusIDNewOrder == msg.StatusID { retVal = c.onOrderNew(msg) } else if jdapi.OrderStatusAdjust == msg.StatusID {