- 防止重复发送订单取消通知消息
This commit is contained in:
@@ -325,7 +325,8 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod
|
||||
} else if order.Status > model.OrderStatusUnknown && status.Status > model.OrderStatusUnknown && order.Status != status.Status {
|
||||
globals.SugarLogger.Warnf("OnOrderStatusChanged strange order:%s, status:%s", utils.Format4Output(order, true), utils.Format4Output(status, true))
|
||||
}
|
||||
savedOrderInfo := s.loadSavedOrderFromMap(status, false)
|
||||
savedOrderInfo := s.loadSavedOrderFromMap(status, false) // 可能会有重复的消息(比如订单取消)
|
||||
statusChanged := savedOrderInfo.order == nil || savedOrderInfo.order.Status != order.Status
|
||||
savedOrderInfo.SetOrder(order)
|
||||
|
||||
if (model.IsOrderUnlockStatus(status.Status)) ||
|
||||
@@ -366,7 +367,7 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod
|
||||
}
|
||||
if !isPending {
|
||||
if status.Status == model.OrderStatusFinishedPickup || status.Status == model.OrderStatusCanceled {
|
||||
if status.Status == model.OrderStatusCanceled {
|
||||
if statusChanged && status.Status == model.OrderStatusCanceled {
|
||||
s.notifyOrderCanceled(savedOrderInfo.order)
|
||||
}
|
||||
msghub.OnFinishedPickup(savedOrderInfo.order)
|
||||
@@ -374,7 +375,7 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod
|
||||
status.Status == model.OrderStatusApplyFailedGetGoods || //model.IsOrderUnlockStatus(status.Status) ||
|
||||
status.Status == model.OrderStatusAgreeFailedGetGoods ||
|
||||
status.Status == model.OrderStatusDeliverFailed {
|
||||
if status.Status == model.OrderStatusApplyCancel {
|
||||
if statusChanged && status.Status == model.OrderStatusApplyCancel {
|
||||
s.notifyUserApplyCancel(savedOrderInfo.order, status.Remark)
|
||||
}
|
||||
msghub.OnKeyOrderStatusChanged(savedOrderInfo.order)
|
||||
|
||||
Reference in New Issue
Block a user