- add new order status OrderStatusWait4Pay

- handle weimob wsc order status OrderStatusWait4Pay
This commit is contained in:
gazebo
2019-01-25 09:14:40 +08:00
parent 052170c1cb
commit 8100e2be88
3 changed files with 13 additions and 4 deletions

View File

@@ -280,9 +280,11 @@ func (s *DefScheduler) OnOrderNew(order *model.GoodsOrder, isPending bool) (err
} else {
savedOrderInfo.SetOrder(order) // 调整单或消息错序都可能进到这里来
}
s.resetTimer(savedOrderInfo, nil, isPending)
if !isPending {
weixinmsg.NotifyNewOrder(order)
if order.Status >= model.OrderStatusNew {
s.resetTimer(savedOrderInfo, nil, isPending)
if !isPending {
weixinmsg.NotifyNewOrder(order)
}
}
return err
}
@@ -292,6 +294,11 @@ func (s *DefScheduler) OnOrderStatusChanged(status *model.OrderStatus, isPending
if status.LockStatus != model.OrderStatusUnknown || status.Status > model.OrderStatusUnknown {
globals.SugarLogger.Debugf("OnOrderStatusChanged orderID:%s %s, status:%v", status.VendorOrderID, model.OrderStatusName[status.Status], status)
savedOrderInfo := s.loadSavedOrderFromMap(status, true)
if status.Status == model.OrderStatusNew {
if !isPending {
weixinmsg.NotifyNewOrder(savedOrderInfo.order)
}
}
s.updateOrderByStatus(savedOrderInfo.order, status)
if status.LockStatus == model.OrderStatusUnknown && status.Status > model.OrderStatusUnknown { // 只处理状态转换,一般消息不处理
s.resetTimer(savedOrderInfo, nil, isPending)

View File

@@ -115,6 +115,7 @@ const (
OrderStatusUnknown = 0
OrderStatusWait4Pay = 3 // 下单待支付,微盟在这个时间发新订单事件
OrderStatusNew = 5 // 新订单
OrderStatusAdjust = 8 // 订单调整
OrderStatusAccepted = 10 // 已经接单,也即待出库,待拣货

View File

@@ -27,7 +27,7 @@ const (
var (
VendorStatus2StatusMap = map[int]int{
weimobapi.OrderStatusWait4Pay: model.OrderStatusUnknown,
weimobapi.OrderStatusWait4Pay: model.OrderStatusWait4Pay,
weimobapi.OrderStatusPayed: model.OrderStatusNew,
FakeOrderStatusAccepted: model.OrderStatusAccepted,
FakeOrderStatusFinishedPickup: model.OrderStatusFinishedPickup,
@@ -270,6 +270,7 @@ func (p *PurchaseHandler) arrangeSaleStore(order *model.GoodsOrder, cityName, pr
}
if selectedStore != nil {
order.StoreID = selectedStore.ID
order.StoreName = selectedStore.Name
globals.SugarLogger.Debugf("arrangeSaleStore orderID:%s arranged to store:%d", order.VendorOrderID, selectedStore.ID)
} else {
globals.SugarLogger.Errorf("arrangeSaleStore orderID:%s 找不到门店", order.VendorOrderID)