diff --git a/business/jxcallback/scheduler/defsch/defsch.go b/business/jxcallback/scheduler/defsch/defsch.go index f3473f43a..d27b74bf1 100644 --- a/business/jxcallback/scheduler/defsch/defsch.go +++ b/business/jxcallback/scheduler/defsch/defsch.go @@ -346,7 +346,11 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod } } if savedOrderInfo.order.Status == model.OrderStatusFinishedPickup { - utils.AfterFuncWithRecover(minAddWaybillTipMinute*time.Minute, func() { + duration := order.StatusTime.Add(minAddWaybillTipMinute * time.Minute).Sub(time.Now()) + if duration <= 0 { + duration = 1 * time.Second + } + utils.AfterFuncWithRecover(duration, func() { jxutils.CallMsgHandlerAsync(func() { s.handleWaybillTip(savedOrderInfo) }, jxutils.ComposeUniversalOrderID(order.VendorOrderID, order.VendorID))