diff --git a/business/jxcallback/scheduler/basesch/basesch.go b/business/jxcallback/scheduler/basesch/basesch.go index d6c44c614..c81c6744a 100644 --- a/business/jxcallback/scheduler/basesch/basesch.go +++ b/business/jxcallback/scheduler/basesch/basesch.go @@ -143,10 +143,7 @@ func (c *BaseScheduler) SelfDeliverDelivering(order *model.GoodsOrder, userName err = c.CancelWaybill(localBill, partner.CancelWaybillReasonDYPSCancel, partner.CancelWaybillReasonStrDYPSCancel) partner.CurOrderManager.OnOrderMsg(order, "取消抖音配送,转用门店自配送/三方配送", "抖音骑手已经接单,无法取消") return err - } - - // 先转自送,自送不成功取消平台配送. - if tiktokWayBillStatus == -1 { + } else if tiktokWayBillStatus == -1 { // 先转自送,自送不成功取消平台配送. if err := partner.GetPurchaseOrderHandlerFromVendorID(order.VendorID).SelfDeliverDelivering(order, userName); err != nil { partner.CurOrderManager.OnOrderMsg(order, "抖音转自送,平台无运力", "tiktokWayBillStatus = -1") } diff --git a/business/partner/purchase/tao_vegetable/order.go b/business/partner/purchase/tao_vegetable/order.go index 546392265..c006cdd1a 100644 --- a/business/partner/purchase/tao_vegetable/order.go +++ b/business/partner/purchase/tao_vegetable/order.go @@ -498,6 +498,7 @@ func (c *PurchaseHandler) AcceptOrRefuseOrder(order *model.GoodsOrder, isAcceptI // PickupGoods 拣货 func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bool, userName string) (err error) { + var err2 error if isSelfDelivery { param, err := orderStatusChangeNotice(order, tao_vegetable.OrderStatusPickedUp) if err != nil { @@ -505,15 +506,16 @@ func (c *PurchaseHandler) PickupGoods(order *model.GoodsOrder, isSelfDelivery bo } api := getAPI(order.VendorOrgCode, jxutils.GetSaleStoreIDFromOrder(order), "") err = api.DeliveryFinish(param) - if err != nil && strings.Contains(err.Error(), "并发操作,执行失败,请重试") { time.Sleep(200 * time.Millisecond) - api.DeliveryFinish(param) + err2 = api.DeliveryFinish(param) } else if err != nil { return err } - c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp) + if err != nil && err2 != nil { + c.postFakeMsg(order.VendorOrderID, tao_vegetable.OrderStatusPickedUp, tao_vegetable.OrderStatusPickedUp) + } } return err }