From 427338aacfa30056d7e2118b4d2e462e321268ef Mon Sep 17 00:00:00 2001 From: gazebo Date: Tue, 7 May 2019 18:03:39 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E5=9C=A8=E5=8F=96=E6=B6=88=E8=BF=90?= =?UTF-8?q?=E5=8D=95=E7=9B=B8=E5=85=B3=E6=93=8D=E4=BD=9C=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=8F=8D=E8=BD=AC=E8=AE=A2=E5=8D=95=E7=8A=B6=E6=80=81=E8=87=B3?= =?UTF-8?q?=E5=BE=85=E9=85=8D=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- business/jxcallback/scheduler/basesch/basesch.go | 3 ++- business/jxcallback/scheduler/defsch/defsch.go | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/business/jxcallback/scheduler/basesch/basesch.go b/business/jxcallback/scheduler/basesch/basesch.go index 466621e57..7ed878ece 100644 --- a/business/jxcallback/scheduler/basesch/basesch.go +++ b/business/jxcallback/scheduler/basesch/basesch.go @@ -55,7 +55,8 @@ func (c *BaseScheduler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bool func (c *BaseScheduler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) { globals.SugarLogger.Infof("Swtich2SelfDeliver orderID:%s", order.VendorOrderID) - if /*order.LockStatus == model.OrderStatusUnknown && */ order.Status == model.OrderStatusFinishedPickup { + if /*order.LockStatus == model.OrderStatusUnknown && */ (order.Status == model.OrderStatusFinishedPickup || order.Status == model.OrderStatusDelivering) && + order.DeliveryFlag&model.OrderDeliveryFlagMaskPurcahseDisabled == 0 { if c.IsReallyCallPlatformAPI { err = utils.CallFuncLogErrorWithInfo(func() error { return partner.GetPurchasePlatformFromVendorID(order.VendorID).Swtich2SelfDeliver(order, userName) diff --git a/business/jxcallback/scheduler/defsch/defsch.go b/business/jxcallback/scheduler/defsch/defsch.go index c8b9129f1..333ebb18b 100644 --- a/business/jxcallback/scheduler/defsch/defsch.go +++ b/business/jxcallback/scheduler/defsch/defsch.go @@ -390,7 +390,7 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo s.resetTimer(savedOrderInfo, bill, isPending) if !isPending { bill.WaybillVendorID = model.VendorIDUnknown - s.updateOrderByBill(order, bill, false) + s.updateOrderByBill(order, bill, true) } } else if s.IsOrderHasWaybill(order) { s.ProxyCancelWaybill(order, bill, partner.CancelWaybillReasonNotAcceptIntime, partner.CancelWaybillReasonStrNotAcceptIntime) @@ -412,7 +412,7 @@ func (s *DefScheduler) OnWaybillStatusChanged(bill *model.Waybill, isPending boo if !isPending { if s.IsOrderHasWaybill(order) { bill.WaybillVendorID = model.VendorIDUnknown - s.updateOrderByBill(order, bill, false) + s.updateOrderByBill(order, bill, true) } // 3方的运单取消才会重新发起创建3方订单,购物平台的运单取消后,它本身还会再创建新运单(NewWaybill事件有相应TIMER)),至少京东是这样的,暂时按京东的行为来 // 现在发现饿百取消订单后不会再创建运单了,所以饿百运单取消也允许直接创建三方运单 @@ -821,7 +821,6 @@ func (s *DefScheduler) updateOrderByBill(order *model.GoodsOrder, bill *model.Wa order.VendorWaybillID = bill.VendorWaybillID if revertStatus { order.Status = model.OrderStatusFinishedPickup - partner.CurOrderManager.UpdateOrderStatusAndFlag(order) } }