- onAfsOrderNew都要检查是否已有同号的售后单

This commit is contained in:
gazebo
2019-05-13 15:31:14 +08:00
parent 64cc7797eb
commit c9fcb83e56
2 changed files with 15 additions and 10 deletions

View File

@@ -49,18 +49,22 @@ func (c *OrderManager) onAfsOrderNew(afsOrder *model.AfsOrder, orderStatus *mode
} }
return err return err
} }
if orderStatus.Status == model.AfsOrderStatusNew { var existAfsOrder *model.AfsOrder
if _, err = c.loadAfsOrder(db, afsOrder.AfsOrderID, afsOrder.VendorID); err != nil { if existAfsOrder, err = c.loadAfsOrder(db, afsOrder.AfsOrderID, afsOrder.VendorID); err != nil {
if !dao.IsNoRowsError(err) { if !dao.IsNoRowsError(err) {
return err return err
}
} else {
dao.Commit(db)
return nil
} }
} }
if err = c.SaveAfsOrder(db, afsOrder, isAdjust); err != nil { if existAfsOrder != nil {
return err 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) dao.Commit(db)
scheduler.CurrentScheduler.OnAfsOrderNew(afsOrder, false) scheduler.CurrentScheduler.OnAfsOrderNew(afsOrder, false)

View File

@@ -47,6 +47,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi
} else if msg.MsgURL == jdapi.CallbackMsgAfterSaleBillStatus { } else if msg.MsgURL == jdapi.CallbackMsgAfterSaleBillStatus {
retVal = c.OnAfsOrderMsg(msg) retVal = c.OnAfsOrderMsg(msg)
} else { } else {
// 新订单事件,与订单状态有点冲突
if jdapi.StatusIDNewOrder == msg.StatusID { if jdapi.StatusIDNewOrder == msg.StatusID {
retVal = c.onOrderNew(msg) retVal = c.onOrderNew(msg)
} else if jdapi.OrderStatusAdjust == msg.StatusID { } else if jdapi.OrderStatusAdjust == msg.StatusID {