This commit is contained in:
邹宗楠
2022-03-07 10:44:17 +08:00
parent d6697d18fe
commit 18d8c23d98

View File

@@ -370,50 +370,46 @@ func (s *DefScheduler) QueryOrderWaybillFeeInfoEx(ctx *jxcontext.Context, vendor
} }
for _, storeCourier := range storeCourierList { for _, storeCourier := range storeCourierList {
var feeInfo *partner.WaybillFeeInfo var feeInfo *partner.WaybillFeeInfo
// 无订单
if waybillMap[storeCourier.VendorID] != nil { if waybillMap[storeCourier.VendorID] != nil {
feeInfo = &partner.WaybillFeeInfo{ feeInfo = &partner.WaybillFeeInfo{
Waybill: waybillMap[storeCourier.VendorID], Waybill: waybillMap[storeCourier.VendorID],
} }
continue } else {
} if storeCourier.Status != model.StoreStatusOpened {
// 未开通运营联系 feeInfo = &partner.WaybillFeeInfo{
if storeCourier.Status != model.StoreStatusOpened { ErrCode: partner.WaybillFeeErrCodeCourierNotOpen,
feeInfo = &partner.WaybillFeeInfo{ ErrStr: fmt.Sprintf("暂未开通,联系运营"),
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
} }
// 获取订单处理对线
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 deliveryFeeMap[storeCourier.VendorID] = feeInfo
} }
err = nil
return deliveryFeeMap, err return deliveryFeeMap, err
}() }()
}, jxutils.ComposeUniversalOrderID(vendorOrderID, vendorID)) }, jxutils.ComposeUniversalOrderID(vendorOrderID, vendorID))