- OnOrderDetail

This commit is contained in:
gazebo
2019-03-21 16:46:52 +08:00
parent 5c8106a70b
commit 81efff6380
4 changed files with 31 additions and 16 deletions

View File

@@ -233,10 +233,11 @@ func (c *PurchaseHandler) onOrderNew(msg *ebaiapi.CallbackMsg) (response *ebaiap
vendorOrderID := GetOrderIDFromMsg(msg)
order, orderMap, err := c.getOrder(vendorOrderID)
if err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
err = partner.CurOrderManager.OnOrderNew(order, order.VendorStatus)
if err = partner.CurOrderManager.OnOrderNew(order, order.VendorStatus); err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
}
}
return api.EbaiAPI.Err2CallbackResponse(msg.Cmd, err, map[string]interface{}{
"source_order_id": vendorOrderID,

View File

@@ -5,3 +5,7 @@ import "git.rosy.net.cn/baseapi/platformapi/jdapi"
func OnFinancialMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi.CallbackResponse) {
return retVal
}
func (p *PurchaseHandler) OnOrderDetail(orderDetail map[string]interface{}) (err error) {
return err
}

View File

@@ -61,7 +61,7 @@ func (c *PurchaseHandler) onOrderMsg(msg *jdapi.CallbackOrderMsg) (retVal *jdapi
return retVal
}
func (c *PurchaseHandler) GetOrder(orderID string) (order *model.GoodsOrder, err error) {
func (c *PurchaseHandler) getOrder(orderID string) (order *model.GoodsOrder, orderMap map[string]interface{}, err error) {
globals.SugarLogger.Debugf("jd GetOrder orderID:%s", orderID)
var (
result map[string]interface{}
@@ -91,6 +91,11 @@ func (c *PurchaseHandler) GetOrder(orderID string) (order *model.GoodsOrder, err
// globals.SugarLogger.Warnf("jd GetOrder orderID:%s, GetRealMobile4Order failed with error:%v", orderID, err2)
}
}
return order, result, err
}
func (c *PurchaseHandler) GetOrder(orderID string) (order *model.GoodsOrder, err error) {
order, _, err = c.getOrder(orderID)
return order, err
}
@@ -182,12 +187,13 @@ func setOrederDetailFee(result map[string]interface{}, order *model.GoodsOrder)
//
func (c *PurchaseHandler) onOrderNew(msg *jdapi.CallbackOrderMsg) (response *jdapi.CallbackResponse) {
order, err := c.GetOrder(msg.BillID)
order, orderMap, err := c.getOrder(msg.BillID)
if err == nil {
err = partner.CurOrderManager.OnOrderNew(order, msg.StatusID)
// if err == nil {
// c.legacyWriteJdOrder(order, false)
// }
if err = partner.CurOrderManager.OnOrderNew(order, msg.StatusID); err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
}
}
return jdapi.Err2CallbackResponse(err, "jd onOrderNew")
}
@@ -196,9 +202,11 @@ func (c *PurchaseHandler) onOrderAdjust(msg *jdapi.CallbackOrderMsg) *jdapi.Call
order, err := c.GetOrder(msg.BillID)
if err == nil {
err = partner.CurOrderManager.OnOrderAdjust(order, msg.StatusID)
// if globals.HandleLegacyJxOrder && err == nil {
// c.legacyWriteJdOrder(order, true)
// }
if err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
}
}
return jdapi.Err2CallbackResponse(err, "jd onOrderAdjust")
}

View File

@@ -133,14 +133,16 @@ func (c *PurchaseHandler) onOrderMsg(msg *mtwmapi.CallbackMsg) (response *mtwmap
if msg.Cmd == mtwmapi.MsgTypeNewOrder || msg.Cmd == mtwmapi.MsgTypeOrderModified {
order, orderMap, err2 := c.getOrder(GetOrderIDFromMsg(msg))
if err = err2; err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
if msg.Cmd == mtwmapi.MsgTypeNewOrder {
err = partner.CurOrderManager.OnOrderNew(order, order.VendorStatus)
} else {
err = partner.CurOrderManager.OnOrderAdjust(order, order.VendorStatus)
}
if err == nil {
utils.CallFuncAsync(func() {
c.OnOrderDetail(orderMap)
})
}
}
} else {
// todo 好像没有“商家已收到”消息回调,是否需要模拟?