diff --git a/business/jxcallback/scheduler/defsch/defsch_ext.go b/business/jxcallback/scheduler/defsch/defsch_ext.go index 9c97bfc80..948c57e1a 100644 --- a/business/jxcallback/scheduler/defsch/defsch_ext.go +++ b/business/jxcallback/scheduler/defsch/defsch_ext.go @@ -370,46 +370,50 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor } for _, storeCourier := range storeCourierList { var feeInfo *partner.WaybillFeeInfo + // 无订单 if waybillMap[storeCourier.VendorID] != nil { feeInfo = &partner.WaybillFeeInfo{ Waybill: waybillMap[storeCourier.VendorID], } - } else { - if storeCourier.Status != model.StoreStatusOpened { - feeInfo = &partner.WaybillFeeInfo{ - ErrCode: partner.WaybillFeeErrCodeCourierNotOpen, - ErrStr: fmt.Sprintf("暂未开通,联系运营"), - } - } else { - if handler := partner.GetDeliveryPlatformFromVendorID(storeCourier.VendorID); handler != nil { - if handler.Use4CreateWaybill { - globals.SugarLogger.Info("获取美团运单开始", handler.Handler.GetVendorID()) - // 获取订单配送费用 - if feeInfo, err = handler.Handler.GetWaybillFee(order); err != nil { - feeInfo = &partner.WaybillFeeInfo{ - ErrCode: partner.WaybillFeeErrCodeCourierOthers, - ErrStr: err.Error(), - } - } else { - feeInfo.TimeoutSecond = timeoutSecond - } - } else { - feeInfo = &partner.WaybillFeeInfo{ - ErrCode: partner.WaybillFeeErrCodeCourierForbidden, - ErrStr: fmt.Sprintf("内部错误,%d不能用于创建运单", storeCourier.VendorID), - } - } - } else { - feeInfo = &partner.WaybillFeeInfo{ - ErrCode: partner.WaybillFeeErrCodeCourierNotSupported, - ErrStr: fmt.Sprintf("内部错误,%d不被支持", storeCourier.VendorID), - } - } - } + continue } + // 未开通运营联系 + if storeCourier.Status != model.StoreStatusOpened { + feeInfo = &partner.WaybillFeeInfo{ + ErrCode: partner.WaybillFeeErrCodeCourierNotOpen, + ErrStr: fmt.Sprintf("暂未开通,联系运营"), + } + continue + } + // 获取订单处理对线 + handler := partner.GetDeliveryPlatformFromVendorID(storeCourier.VendorID) + if handler == nil { + feeInfo = &partner.WaybillFeeInfo{ + ErrCode: partner.WaybillFeeErrCodeCourierNotSupported, + ErrStr: fmt.Sprintf("内部错误,%d不被支持", storeCourier.VendorID), + } + continue + } + if !handler.Use4CreateWaybill { + feeInfo = &partner.WaybillFeeInfo{ + ErrCode: partner.WaybillFeeErrCodeCourierForbidden, + ErrStr: fmt.Sprintf("内部错误,%d不能用于创建运单", storeCourier.VendorID), + } + continue + } + // 获取订单配送费用 + globals.SugarLogger.Info("获取美团运单开始", handler.Handler.GetVendorID()) + feeInfo, err = handler.Handler.GetWaybillFee(order) + if err != nil { + feeInfo = &partner.WaybillFeeInfo{ + ErrCode: partner.WaybillFeeErrCodeCourierOthers, + ErrStr: err.Error(), + } + continue + } + feeInfo.TimeoutSecond = timeoutSecond deliveryFeeMap[storeCourier.VendorID] = feeInfo } - err = nil return deliveryFeeMap, err }() }, jxutils.ComposeUniversalOrderID(vendorOrderID, vendorID))