- tt.
This commit is contained in:
@@ -95,8 +95,8 @@ func (s *DefScheduler) OnOrderStatusChanged(status *model.OrderStatus) (err erro
|
|||||||
globals.SugarLogger.Debugf("OnOrderStatusChanged, status:%v", status)
|
globals.SugarLogger.Debugf("OnOrderStatusChanged, status:%v", status)
|
||||||
savedOrderInfo := s.loadSavedOrderFromMap(status)
|
savedOrderInfo := s.loadSavedOrderFromMap(status)
|
||||||
s.updateOrderByStatus(savedOrderInfo.order, status)
|
s.updateOrderByStatus(savedOrderInfo.order, status)
|
||||||
if (status.Status > model.OrderStatusUnknown && status.Status < model.OrderStatusEndBegin) && status.Status != model.OrderStatusFinishedPickup {
|
if status.Status > model.OrderStatusUnknown && status.Status < model.OrderStatusEndBegin {
|
||||||
if !(status.Status == model.OrderStatusFinishedPickup && len(savedOrderInfo.waybills) > 0) { //饿了么还观察到运单消息早于拣货完成消息
|
if !(status.Status == model.OrderStatusFinishedPickup && len(savedOrderInfo.waybills) > 0) && status.Status != model.OrderStatusFinishedPickup { //饿了么还观察到运单消息早于拣货完成消息
|
||||||
gap := 0 * time.Second
|
gap := 0 * time.Second
|
||||||
beginTime := status.StatusTime
|
beginTime := status.StatusTime
|
||||||
if status.Status == model.OrderStatusNew {
|
if status.Status == model.OrderStatusNew {
|
||||||
@@ -110,6 +110,8 @@ func (s *DefScheduler) OnOrderStatusChanged(status *model.OrderStatus) (err erro
|
|||||||
gap = time2Schedule3rdCarrierGap4OrderStatus
|
gap = time2Schedule3rdCarrierGap4OrderStatus
|
||||||
}
|
}
|
||||||
s.resetTimer(savedOrderInfo, status.Status, beginTime, gap)
|
s.resetTimer(savedOrderInfo, status.Status, beginTime, gap)
|
||||||
|
} else {
|
||||||
|
s.stopTimer(savedOrderInfo)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
s.stopTimer(savedOrderInfo)
|
s.stopTimer(savedOrderInfo)
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ var (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type StatusActionConfig struct {
|
type StatusActionConfig struct {
|
||||||
Timeout time.Duration // 超时时间,为0的话表示立即执行
|
Timeout time.Duration // 超时时间,为0的话表示禁用
|
||||||
TimeoutAction func(order *model.GoodsOrder) (err error) // 超时后需要执行的动作,为nil表示此状态不需要执行监控
|
TimeoutAction func(order *model.GoodsOrder) (err error) // 超时后需要执行的动作,为nil表示此状态不需要执行监控
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user