- UpdateOrderStatusAndFlag to UpdateOrderStatusAndDeliveryFlag
This commit is contained in:
@@ -487,7 +487,7 @@ func (c *OrderManager) loadOrderFinancial(vendorOrderID, vendorOrderID2 string,
|
|||||||
return order, err
|
return order, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *OrderManager) UpdateOrderStatusAndFlag(order *model.GoodsOrder) (err error) {
|
func (c *OrderManager) UpdateOrderStatusAndDeliveryFlag(order *model.GoodsOrder) (err error) {
|
||||||
return c.UpdateOrderFields(order, []string{"Status", "DeliveryFlag"})
|
return c.UpdateOrderFields(order, []string{"Status", "DeliveryFlag"})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ func (c *BaseScheduler) Swtich2SelfDeliver(order *model.GoodsOrder, userName str
|
|||||||
if err == nil { // 因为有些平台转自送后,不会再发送订单在配送中消息过来,所以成功后就强制设置状态为配送中
|
if err == nil { // 因为有些平台转自送后,不会再发送订单在配送中消息过来,所以成功后就强制设置状态为配送中
|
||||||
order.Status = model.OrderStatusDelivering
|
order.Status = model.OrderStatusDelivering
|
||||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskPurcahseDisabled
|
order.DeliveryFlag |= model.OrderDeliveryFlagMaskPurcahseDisabled
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if order.LockStatus != model.OrderStatusUnknown || order.Status < model.OrderStatusFinishedPickup || order.VendorID == order.WaybillVendorID {
|
if order.LockStatus != model.OrderStatusUnknown || order.Status < model.OrderStatusFinishedPickup || order.VendorID == order.WaybillVendorID {
|
||||||
@@ -107,7 +107,7 @@ func (c *BaseScheduler) SelfDeliverDelivering(order *model.GoodsOrder, userName
|
|||||||
}, "SelfDeliverDelivering orderID:%s", order.VendorOrderID)
|
}, "SelfDeliverDelivering orderID:%s", order.VendorOrderID)
|
||||||
if err == nil { // 因为有些平台设置配送中后,不会发送订单在配送中消息过来,所以成功后就强制设置状态为配送中
|
if err == nil { // 因为有些平台设置配送中后,不会发送订单在配送中消息过来,所以成功后就强制设置状态为配送中
|
||||||
order.Status = model.OrderStatusDelivering
|
order.Status = model.OrderStatusDelivering
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -165,7 +165,7 @@ func (c *BaseScheduler) CreateWaybill(platformVendorID int, order *model.GoodsOr
|
|||||||
globals.SugarLogger.Infof("CreateWaybill failed orderID:%s vendorID:%d with error:%v", order.VendorOrderID, platformVendorID, err)
|
globals.SugarLogger.Infof("CreateWaybill failed orderID:%s vendorID:%d with error:%v", order.VendorOrderID, platformVendorID, err)
|
||||||
} else {
|
} else {
|
||||||
order.DeliveryFlag |= model.WaybillVendorID2Mask(platformVendorID)
|
order.DeliveryFlag |= model.WaybillVendorID2Mask(platformVendorID)
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -72,8 +72,7 @@ func (c *BaseScheduler) SelfDeliveredAndUpdateStatus(ctx *jxcontext.Context, ven
|
|||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
// order.Status = model.OrderStatusFinished // todo 是否需要强制设置完成状态?
|
// order.Status = model.OrderStatusFinished // todo 是否需要强制设置完成状态?
|
||||||
order.Flag |= model.OrderFlagMaskSetDelivered
|
if err = dao.SetOrderFlag(dao.GetDB(), ctx.GetUserName(), order.VendorOrderID, order.VendorID, model.OrderFlagMaskSetDelivered); err == nil {
|
||||||
if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil {
|
|
||||||
globals.SugarLogger.Infof("SelfDeliveredAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
globals.SugarLogger.Infof("SelfDeliveredAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@@ -95,7 +94,7 @@ func (c *BaseScheduler) PickupGoodsAndUpdateStatus(ctx *jxcontext.Context, vendo
|
|||||||
err = c.PickupGoods(order, c.GetStoreDeliveryType(order, nil) == scheduler.StoreDeliveryTypeByStore, userName)
|
err = c.PickupGoods(order, c.GetStoreDeliveryType(order, nil) == scheduler.StoreDeliveryTypeByStore, userName)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
order.Status = model.OrderStatusFinishedPickup
|
order.Status = model.OrderStatusFinishedPickup
|
||||||
if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil {
|
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
||||||
globals.SugarLogger.Infof("PickupGoodsAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
globals.SugarLogger.Infof("PickupGoodsAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -305,7 +305,7 @@ func (s *DefScheduler) OnOrderStatusChanged(order *model.GoodsOrder, status *mod
|
|||||||
(order.LockStatus == model.OrderStatusUnknown && (status.Status > model.OrderStatusUnknown || status.Status == model.OrderStatusRefuseFailedGetGoods)) { // 只处理状态转换,一般消息不处理
|
(order.LockStatus == model.OrderStatusUnknown && (status.Status > model.OrderStatusUnknown || status.Status == model.OrderStatusRefuseFailedGetGoods)) { // 只处理状态转换,一般消息不处理
|
||||||
if status.Status == model.OrderStatusRefuseFailedGetGoods && order.Status != model.OrderStatusFinishedPickup && !model.IsOrderFinalStatus(order.Status) {
|
if status.Status == model.OrderStatusRefuseFailedGetGoods && order.Status != model.OrderStatusFinishedPickup && !model.IsOrderFinalStatus(order.Status) {
|
||||||
order.Status = model.OrderStatusFinishedPickup
|
order.Status = model.OrderStatusFinishedPickup
|
||||||
partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
s.resetTimer(savedOrderInfo, nil, isPending)
|
s.resetTimer(savedOrderInfo, nil, isPending)
|
||||||
if status.Status >= model.OrderStatusDelivering {
|
if status.Status >= model.OrderStatusDelivering {
|
||||||
@@ -388,7 +388,7 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
|||||||
flag2Clear := model.WaybillVendorID2Mask(bill.WaybillVendorID)
|
flag2Clear := model.WaybillVendorID2Mask(bill.WaybillVendorID)
|
||||||
if order.DeliveryFlag&flag2Clear != 0 {
|
if order.DeliveryFlag&flag2Clear != 0 {
|
||||||
order.DeliveryFlag &= ^flag2Clear
|
order.DeliveryFlag &= ^flag2Clear
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 只有购物平台的新运单消息才会启动抢单TIMER
|
// 只有购物平台的新运单消息才会启动抢单TIMER
|
||||||
@@ -420,7 +420,7 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
|||||||
if bill.Status == model.WaybillStatusDelivering {
|
if bill.Status == model.WaybillStatusDelivering {
|
||||||
// 强制将订单状态置为配送中?
|
// 强制将订单状态置为配送中?
|
||||||
order.Status = model.OrderStatusDelivering
|
order.Status = model.OrderStatusDelivering
|
||||||
partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if savedOrderInfo.storeDeliveryType == scheduler.StoreDeliveryTypeByStore ||
|
if savedOrderInfo.storeDeliveryType == scheduler.StoreDeliveryTypeByStore ||
|
||||||
@@ -448,7 +448,7 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo
|
|||||||
flag2Clear := model.WaybillVendorID2Mask(bill.WaybillVendorID)
|
flag2Clear := model.WaybillVendorID2Mask(bill.WaybillVendorID)
|
||||||
if order.DeliveryFlag&flag2Clear != 0 {
|
if order.DeliveryFlag&flag2Clear != 0 {
|
||||||
order.DeliveryFlag &= ^flag2Clear
|
order.DeliveryFlag &= ^flag2Clear
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
case model.WaybillStatusAcceptCanceled:
|
case model.WaybillStatusAcceptCanceled:
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ func (s *DefScheduler) SelfDeliveringAndUpdateStatus(ctx *jxcontext.Context, ven
|
|||||||
if err == nil {
|
if err == nil {
|
||||||
order.Status = model.OrderStatusDelivering
|
order.Status = model.OrderStatusDelivering
|
||||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled | model.OrderDeliveryFlagMaskPurcahseDisabled
|
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled | model.OrderDeliveryFlagMaskPurcahseDisabled
|
||||||
if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil {
|
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
||||||
s.stopTimer(savedOrderInfo)
|
s.stopTimer(savedOrderInfo)
|
||||||
globals.SugarLogger.Infof("SelfDeliveringAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
globals.SugarLogger.Infof("SelfDeliveringAndUpdateStatus orderID:%s userName:%s successfully", vendorOrderID, userName)
|
||||||
return err
|
return err
|
||||||
@@ -110,7 +110,7 @@ func (s *DefScheduler) CreateWaybillOnProviders4SavedOrder(ctx *jxcontext.Contex
|
|||||||
if bills, err = s.CreateWaybillOnProviders(ctx, order, courierVendorIDs, feeHandler, forceCreate); err == nil {
|
if bills, err = s.CreateWaybillOnProviders(ctx, order, courierVendorIDs, feeHandler, forceCreate); err == nil {
|
||||||
if forceCreate {
|
if forceCreate {
|
||||||
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
order.DeliveryFlag |= model.OrderDeliveryFlagMaskScheduleDisabled
|
||||||
err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order)
|
err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order)
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
if forceCreate {
|
if forceCreate {
|
||||||
@@ -169,7 +169,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
|
||||||
if err = partner.CurOrderManager.UpdateOrderStatusAndFlag(order); err == nil {
|
if err = partner.CurOrderManager.UpdateOrderStatusAndDeliveryFlag(order); err == nil {
|
||||||
s.stopTimer(savedOrderInfo)
|
s.stopTimer(savedOrderInfo)
|
||||||
globals.SugarLogger.Infof("CancelAll3rdWaybills orderID:%s userName:%s successfully", vendorOrderID, ctx.GetUserName())
|
globals.SugarLogger.Infof("CancelAll3rdWaybills orderID:%s userName:%s successfully", vendorOrderID, ctx.GetUserName())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -142,7 +142,7 @@ type IOrderManager interface {
|
|||||||
LoadOrderFinancial(vendorOrderID string, vendorID int) (order *model.OrderFinancial, err error)
|
LoadOrderFinancial(vendorOrderID string, vendorID int) (order *model.OrderFinancial, err error)
|
||||||
LoadOrderFinancial2(vendorOrderID2 string, vendorID int) (order *model.OrderFinancial, err error)
|
LoadOrderFinancial2(vendorOrderID2 string, vendorID int) (order *model.OrderFinancial, err error)
|
||||||
|
|
||||||
UpdateOrderStatusAndFlag(order *model.GoodsOrder) (err error)
|
UpdateOrderStatusAndDeliveryFlag(order *model.GoodsOrder) (err error)
|
||||||
UpdateOrderFields(order *model.GoodsOrder, fieldList []string) (err error)
|
UpdateOrderFields(order *model.GoodsOrder, fieldList []string) (err error)
|
||||||
|
|
||||||
LoadWaybill(vendorWaybillID string, waybillVendorID int) (bill *model.Waybill, err error)
|
LoadWaybill(vendorWaybillID string, waybillVendorID int) (bill *model.Waybill, err error)
|
||||||
|
|||||||
Reference in New Issue
Block a user