1
This commit is contained in:
@@ -1081,7 +1081,7 @@ func (s *DefScheduler) swtich2SelfDeliverWithRetry(savedOrderInfo *WatchOrderInf
|
|||||||
|
|
||||||
// 这个函数这样写的原因是适应一些消息错序
|
// 这个函数这样写的原因是适应一些消息错序
|
||||||
func (s *DefScheduler) loadSavedOrderFromMap(status *model.OrderStatus, isForceLoad bool) *WatchOrderInfo {
|
func (s *DefScheduler) loadSavedOrderFromMap(status *model.OrderStatus, isForceLoad bool) *WatchOrderInfo {
|
||||||
universalOrderID := jxutils.ComposeUniversalOrderID(status.RefVendorOrderID, status.RefVendorID)
|
universalOrderID := jxutils.ComposeUniversalOrderID(status.RefVendorOrderID, status.RefVendorID) // 等于RefVendorOrderID
|
||||||
var realSavedInfo *WatchOrderInfo
|
var realSavedInfo *WatchOrderInfo
|
||||||
if savedInfo, ok := s.orderMap.Load(universalOrderID); ok {
|
if savedInfo, ok := s.orderMap.Load(universalOrderID); ok {
|
||||||
realSavedInfo = savedInfo.(*WatchOrderInfo)
|
realSavedInfo = savedInfo.(*WatchOrderInfo)
|
||||||
@@ -1089,6 +1089,7 @@ func (s *DefScheduler) loadSavedOrderFromMap(status *model.OrderStatus, isForceL
|
|||||||
realSavedInfo = NewWatchOrderInfo(nil)
|
realSavedInfo = NewWatchOrderInfo(nil)
|
||||||
s.orderMap.StoreWithTimeout(universalOrderID, realSavedInfo, orderMapStoreMaxTime)
|
s.orderMap.StoreWithTimeout(universalOrderID, realSavedInfo, orderMapStoreMaxTime)
|
||||||
}
|
}
|
||||||
|
globals.SugarLogger.Debugf("loadSavedOrderFromMap realSavedInfo===========%s", utils.Format4Output(realSavedInfo, false))
|
||||||
if isForceLoad {
|
if isForceLoad {
|
||||||
if order, err := partner.CurOrderManager.LoadOrder(status.RefVendorOrderID, status.RefVendorID); err == nil {
|
if order, err := partner.CurOrderManager.LoadOrder(status.RefVendorOrderID, status.RefVendorID); err == nil {
|
||||||
realSavedInfo.SetOrder(order)
|
realSavedInfo.SetOrder(order)
|
||||||
@@ -1102,6 +1103,7 @@ func (s *DefScheduler) loadSavedOrderFromMap(status *model.OrderStatus, isForceL
|
|||||||
WaybillVendorID: model.VendorIDUnknown,
|
WaybillVendorID: model.VendorIDUnknown,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
globals.SugarLogger.Debugf("loadSavedOrderFromMap realSavedInfo=========%s", utils.Format4Output(realSavedInfo, false))
|
||||||
}
|
}
|
||||||
return realSavedInfo
|
return realSavedInfo
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,6 +157,7 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
if bills, err = s.CreateWaybillOnProviders(ctx, order, courierVendorIDs, excludeCourierVendorIDs, maxDeliveryFee, forceCreate); err == nil {
|
if bills, err = s.CreateWaybillOnProviders(ctx, order, courierVendorIDs, excludeCourierVendorIDs, maxDeliveryFee, forceCreate); err == nil {
|
||||||
if forceCreate {
|
if forceCreate {
|
||||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
||||||
|
globals.SugarLogger.Debugf("order.DeliveryFlag============%d,order.Status===========%d", order.DeliveryFlag, order.Status)
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
@@ -416,8 +417,9 @@ func (s *DefScheduler) CancelAll3rdWaybills(ctx *jxcontext.Context, vendorOrderI
|
|||||||
jxutils.CallMsgHandler(func() {
|
jxutils.CallMsgHandler(func() {
|
||||||
err = func() (err error) {
|
err = func() (err error) {
|
||||||
// 取消三方运单,取消各平台单号信息,间隔一段时间后定时任务重新调度
|
// 取消三方运单,取消各平台单号信息,间隔一段时间后定时任务重新调度
|
||||||
|
globals.SugarLogger.Debugf("CancelAll3rdWaybills vendorOrderID=========%s, vendorID====%d", vendorOrderID, vendorID)
|
||||||
savedOrderInfo := s.loadSavedOrderByID(vendorOrderID, vendorID, true)
|
savedOrderInfo := s.loadSavedOrderByID(vendorOrderID, vendorID, true)
|
||||||
globals.SugarLogger.Debugf("savedOrderInfo========%s", utils.Format4Output(savedOrderInfo, false))
|
globals.SugarLogger.Debugf("savedOrderInfo.order========%s", utils.Format4Output(savedOrderInfo.order, false))
|
||||||
if savedOrderInfo != nil {
|
if savedOrderInfo != nil {
|
||||||
err = s.cancelOtherWaybills(savedOrderInfo, nil, partner.CancelWaybillReasonOther, partner.CancelWaybillReasonStrActive)
|
err = s.cancelOtherWaybills(savedOrderInfo, nil, partner.CancelWaybillReasonOther, partner.CancelWaybillReasonStrActive)
|
||||||
} else {
|
} else {
|
||||||
@@ -428,6 +430,7 @@ func (s *DefScheduler) CancelAll3rdWaybills(ctx *jxcontext.Context, vendorOrderI
|
|||||||
if err == nil && isStopSchedule {
|
if err == nil && isStopSchedule {
|
||||||
order := savedOrderInfo.order
|
order := savedOrderInfo.order
|
||||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
||||||
|
globals.SugarLogger.Debugf("停止调度操作order=========%s", utils.Format4Output(order, false))
|
||||||
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
||||||
s.stopTimer(savedOrderInfo)
|
s.stopTimer(savedOrderInfo)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -382,6 +382,7 @@ const (
|
|||||||
|
|
||||||
OrderDeliveryFlagMaskDada = 16 // 创建达达运单中
|
OrderDeliveryFlagMaskDada = 16 // 创建达达运单中
|
||||||
OrderDeliveryFlagMaskMtps = 32 // 创建美团配送运单中
|
OrderDeliveryFlagMaskMtps = 32 // 创建美团配送运单中
|
||||||
|
OrderDeliveryFlagMaskDYPS = 48 //创建抖音运力配送中
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@@ -520,6 +521,8 @@ func WaybillVendorID2Mask(vendorID int) (mask int8) {
|
|||||||
mask = OrderDeliveryFlagMaskDada
|
mask = OrderDeliveryFlagMaskDada
|
||||||
} else if vendorID == VendorIDMTPS {
|
} else if vendorID == VendorIDMTPS {
|
||||||
mask = OrderDeliveryFlagMaskMtps
|
mask = OrderDeliveryFlagMaskMtps
|
||||||
|
} else if vendorID == VendorIDDYPS {
|
||||||
|
mask = OrderDeliveryFlagMaskDYPS
|
||||||
}
|
}
|
||||||
return mask
|
return mask
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user