diff --git a/business/jxcallback/scheduler/basesch/basesch_ext.go b/business/jxcallback/scheduler/basesch/basesch_ext.go index 1fd287f53..73531d641 100644 --- a/business/jxcallback/scheduler/basesch/basesch_ext.go +++ b/business/jxcallback/scheduler/basesch/basesch_ext.go @@ -327,16 +327,34 @@ func (c *BaseScheduler) SetOrderWaybillTipByOrder(ctx *jxcontext.Context, order func (c *BaseScheduler) confirmSelfTake(ctx *jxcontext.Context, order *model.GoodsOrder, selfTakeCode string) (err error) { globals.SugarLogger.Debugf("confirmSelfTake orderID:%s, selfTakeCode:%s", order.VendorOrderID, selfTakeCode) - if order.VendorID == model.VendorIDJD || order.VendorID == model.VendorIDJX { - if selfTakeCode == autoSelfTakeCode { - if selfTakeCode, err = jd.CurPurchaseHandler.GetSelfTakeCode(ctx, order); err != nil { - return fmt.Errorf("获取订单:%s自提货码失败,原始错误:%s", order.VendorOrderID, err.Error()) + vendorID := order.VendorID + if vendorID == model.VendorIDJD || vendorID == model.VendorIDJX { + if vendorID == model.VendorIDJD { + if selfTakeCode == autoSelfTakeCode { + if selfTakeCode, err = jd.CurPurchaseHandler.GetSelfTakeCode(ctx, order); err != nil { + return fmt.Errorf("获取订单:%s自提货码失败,原始错误:%s", order.VendorOrderID, err.Error()) + } + if selfTakeCode == "" { + return fmt.Errorf("订单:%s看起来不是一个自提订单,如果确认是自提订单,请联系开发", order.VendorOrderID) + } } - if selfTakeCode == "" { - return fmt.Errorf("订单:%s看起来不是一个自提订单,如果确认是自提订单,请联系开发", order.VendorOrderID) + err = jd.CurPurchaseHandler.ConfirmSelfTake(ctx, order, selfTakeCode) + } else { + orderStatus := &model.OrderStatus{ + VendorOrderID: order.VendorOrderID, + VendorID: model.VendorIDJX, + OrderType: model.OrderTypeOrder, + RefVendorOrderID: order.VendorOrderID, + RefVendorID: model.VendorIDJX, + VendorStatus: utils.Int2Str(model.OrderStatusFinished), + Status: model.OrderStatusFinished, + StatusTime: time.Now(), + Remark: "自提完成", } + jxutils.CallMsgHandlerAsync(func() { + err = partner.CurOrderManager.OnOrderStatusChanged("", orderStatus) + }, jxutils.ComposeUniversalOrderID(order.VendorOrderID, model.VendorIDJX)) } - err = jd.CurPurchaseHandler.ConfirmSelfTake(ctx, order, selfTakeCode) } else { err = fmt.Errorf("自提核销不支持%s平台订单", model.VendorChineseNames[order.VendorID]) }