三方配送新规则
This commit is contained in:
@@ -784,6 +784,7 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
||||
if err = s.canOrderCreateWaybillNormally(order, savedOrderInfo); err == nil {
|
||||
if (order.DeliveryFlag & model.OrderDeliveryFlagMaskScheduleDisabled) == 0 {
|
||||
if savedOrderInfo.retryCount <= maxWaybillRetryCount {
|
||||
var waybillVendorIDs = []int{model.VendorIDMTPS, model.VendorIDDada}
|
||||
savedOrderInfo.isNeedCreate3rdWaybill = true
|
||||
excludeVendorIDs := savedOrderInfo.GetWaybillVendorIDs()
|
||||
//TODO 取消京西不自动发美团 2020-06-02
|
||||
@@ -793,7 +794,23 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
||||
//TODO 2020-08-18 饿百美团订单暂时不自动发送三方
|
||||
if order.VendorID == model.VendorIDMTWM || order.VendorID == model.VendorIDEBAI {
|
||||
if order.DeliveryType != model.OrderDeliveryTypeStoreSelf {
|
||||
excludeVendorIDs = append(excludeVendorIDs, model.VendorIDMTPS, model.VendorIDDada)
|
||||
excludeVendorIDs = append(excludeVendorIDs, waybillVendorIDs...)
|
||||
}
|
||||
}
|
||||
|
||||
var income int64
|
||||
if order.EarningType == model.EarningTypePoints {
|
||||
income = order.TotalShopMoney * int64((order.OrderPayPercentage / 2))
|
||||
} else {
|
||||
income = order.TotalShopMoney - order.ShopPrice
|
||||
}
|
||||
//2020-11-16 预计收益-配送费 > 0 再发
|
||||
for _, vendorID := range waybillVendorIDs {
|
||||
handler := partner.GetDeliveryPlatformFromVendorID(vendorID)
|
||||
if deliveryFeeInfo, err := handler.Handler.GetWaybillFee(order); err == nil {
|
||||
if income-deliveryFeeInfo.DeliveryFee <= 0 {
|
||||
excludeVendorIDs = append(excludeVendorIDs, vendorID)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -818,6 +835,7 @@ func (s *DefScheduler) createWaybillOn3rdProviders(savedOrderInfo *WatchOrderInf
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if err == nil {
|
||||
if _, err = s.CreateWaybillOnProviders4SavedOrder(jxcontext.AdminCtx, savedOrderInfo, nil, excludeVendorIDs, false, maxDeliveryFee); err == nil {
|
||||
savedOrderInfo.retryCount++
|
||||
|
||||
Reference in New Issue
Block a user