修改配送价格

This commit is contained in:
邹宗楠
2022-02-24 18:01:15 +08:00
parent 908f4debc7
commit 982e1d309f
4 changed files with 10 additions and 3 deletions

View File

@@ -188,7 +188,7 @@ func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInf
return deliveryFeeInfo, err
}
// IDeliveryPlatformHandler
// IDeliveryPlatformHandler(美团配送)
func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee int64) (bill *model.Waybill, err error) {
db := dao.GetDB()
if vendorOrgCode, err := dao.GetVendorOrgCode(db, model.VendorIDMTPS, "", model.VendorOrgTypeDelivery); err == nil {
@@ -200,6 +200,8 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
} else {
return nil, err
}
// 自定义计算预估费用
deliveryFee, _, err := delivery.CalculateOrderDeliveryFee(order, time.Now(), db)
if err == nil {
if err = delivery.CallCreateWaybillPolicy(deliveryFee, maxDeliveryFee, order, model.VendorIDMTPS); err != nil {
@@ -259,6 +261,7 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
billParams.GoodsPickupInfo = fmt.Sprintf("%s第%d号单", model.VendorChineseNames[order.VendorID], order.OrderSeq)
billParams.PoiSeq = fmt.Sprintf("#%d", order.OrderSeq)
if globals.EnableStoreWrite {
// 通知美团订单,获取返回订单配送费
result, err2 := api.MtpsAPI.CreateOrderByShop2(billParams)
if err = err2; err == nil {
bill = &model.Waybill{
@@ -267,8 +270,10 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
VendorWaybillID: result.MtPeisongID,
VendorWaybillID2: utils.Int64ToStr(result.DeliveryID),
WaybillVendorID: model.VendorIDMTPS,
DesiredFee: deliveryFee,
// todo
DesiredFee: int64(result.DeliveryFee * 100), // todo deliveryFee,
}
// 当前运单总费大于配送阈值15日志打印提示
delivery.OnWaybillCreated(bill)
} else {
globals.SugarLogger.Debugf("CreateWaybill failed, orderID:%s, billParams:%v, error:%v", order.VendorOrderID, billParams, err)

View File

@@ -18,7 +18,7 @@ func TestCreateWaybill(t *testing.T) {
order, _ := partner.CurOrderManager.LoadOrder(orerID, model.VendorIDJD)
// globals.SugarLogger.Debug(order)
c := new(DeliveryHandler)
_, err := c.CreateWaybill(order, nil)
_, err := c.CreateWaybill(order, 0)
if err != nil {
t.Fatal(err.Error())
}