- 创建三方运单超价时报警

This commit is contained in:
gazebo
2019-07-24 11:53:29 +08:00
parent 07273a9ada
commit df5eca85ef
3 changed files with 12 additions and 3 deletions

View File

@@ -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("测试环境不能真正创建运单")

View File

@@ -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))
}
}

View File

@@ -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)
}