diff --git a/business/partner/purchase/ebai/order.go b/business/partner/purchase/ebai/order.go index afcfc5291..355ca0fa8 100644 --- a/business/partner/purchase/ebai/order.go +++ b/business/partner/purchase/ebai/order.go @@ -484,33 +484,40 @@ func (p *PurchaseHandler) trySyncCancelStatus(vendorOrderID string) (err error) // 将订单从购物平台配送转为自送后又送达 func (p *PurchaseHandler) Swtich2SelfDelivered(order *model.GoodsOrder, userName string) (err error) { - // todo 饿百转商家自送后,没有确认送达的概念,空操作 - if globals.EnableEbaiStoreWrite && order.WaybillVendorID > 100 { - param2 := &ebaiapi.PushRiderInfo{ - DistributorId: 201, - OrderId: order.VendorOrderID, - State: 21, - SelfStatus: ebaiapi.OrderDeliveryStatusSendOver, - SelfStatusDesc: "自配送送达", - DistributorInfoDTO: ebaiapi.DistributorInfoDTO{ - DistributorTypeId: "99999", - DistributorName: "商家自行配送", - }, + param2 := &ebaiapi.PushRiderInfo{ + DistributorId: 201, + OrderId: order.VendorOrderID, + State: 21, + SelfStatus: ebaiapi.OrderDeliveryStatusSendOver, + SelfStatusDesc: "自配送送达", + DistributorInfoDTO: ebaiapi.DistributorInfoDTO{ + DistributorTypeId: "99999", + DistributorName: "商家自行配送", + }, + } + bills, _ := dao.GetWaybills(dao.GetDB(), order.VendorOrderID, nil) + for _, v := range bills { + if v.Status == model.WaybillStatusDelivered || v.Status == model.WaybillStatusFailed { + param2.Knight = ebaiapi.Knight{ + Id: utils.Str2Int64(order.VendorOrderID), + Name: v.CourierName, + Phone: v.CourierMobile, + } + break } - bills, _ := dao.GetWaybills(dao.GetDB(), order.VendorOrderID, nil) - for _, v := range bills { - if v.Status == model.WaybillStatusDelivered || v.Status == model.WaybillStatusFailed { - param2.Knight = ebaiapi.Knight{ - Id: utils.Str2Int64(order.VendorOrderID), - Name: v.CourierName, - Phone: v.CourierMobile, - } - break + } + if param2.Knight.Name == "" { + store, _ := dao.GetStoreDetail(dao.GetDB(), order.JxStoreID, order.VendorID, order.VendorOrgCode) + if store != nil { + param2.Knight = ebaiapi.Knight{ + Id: utils.Str2Int64(order.VendorOrderID), + Name: store.Name, + Phone: store.Tel1, } } - - err = api.EbaiAPI.OrderselfDeliveryStateSync2(param2) } + + err = api.EbaiAPI.OrderselfDeliveryStateSync2(param2) return err }