- 创建三方运单超价时报警
This commit is contained in:
@@ -268,9 +268,6 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, policy partner.
|
||||
return nil, err
|
||||
}
|
||||
dadaFee := jxutils.StandardPrice2Int(result.Fee)
|
||||
if dadaFee > 2000 {
|
||||
globals.SugarLogger.Infof("[运营]计算订单orderID:%s, 达达配送费:%d太高,请检查达达门店坐标信息!", order.VendorOrderID, dadaFee)
|
||||
}
|
||||
if err = delivery.CallCreateWaybillPolicy(policy, deliveryFee, addFee, dadaFee, order, model.VendorIDDada); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -285,6 +282,7 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, policy partner.
|
||||
DesiredFee: deliveryFee,
|
||||
ActualFee: jxutils.StandardPrice2Int(result.Fee),
|
||||
}
|
||||
delivery.OnWaybillCreated(bill)
|
||||
}
|
||||
} else {
|
||||
err = fmt.Errorf("测试环境不能真正创建运单")
|
||||
|
||||
@@ -19,6 +19,8 @@ const (
|
||||
warningWeight = 50 * 1000 // 克
|
||||
maxDiffFee2Mtps = 200 // 与美团配送最多差价
|
||||
maxAddFee = 200 // 最大增加费用,单位为分,超过不发三方配送了
|
||||
|
||||
alarmFee = 1500 // 配送费报警阈值
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -151,3 +153,11 @@ func CalculateBillDeliveryFee(bill *model.Waybill) (deliveryFee, addFee int64) {
|
||||
deliveryFee, addFee, _ = CalculateOrderDeliveryFee(order, bill.StatusTime, nil)
|
||||
return deliveryFee, addFee
|
||||
}
|
||||
|
||||
func OnWaybillCreated(waybill *model.Waybill) {
|
||||
deliveryFee := int64(math.Max(float64(waybill.DesiredFee), float64(waybill.ActualFee)))
|
||||
if deliveryFee > alarmFee {
|
||||
globals.SugarLogger.Infof("[运营]%s订单, orderID:%s, 成功创建%s运单:%s, 配送费:%s太高(大于%s),请知悉!", model.VendorChineseNames[waybill.OrderVendorID], waybill.VendorOrderID,
|
||||
model.VendorChineseNames[waybill.WaybillVendorID], waybill.VendorWaybillID, jxutils.IntPrice2StandardCurrencyString(deliveryFee), jxutils.IntPrice2StandardCurrencyString(alarmFee))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,6 +188,7 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, policy partner.
|
||||
WaybillVendorID: model.VendorIDMTPS,
|
||||
DesiredFee: deliveryFee,
|
||||
}
|
||||
delivery.OnWaybillCreated(bill)
|
||||
} else {
|
||||
globals.SugarLogger.Debugf("CreateWaybill failed, orderID:%s, billParams:%v, addParams:%v, error:%v", order.VendorOrderID, billParams, addParams, err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user