修改预下单查询配送费接口

This commit is contained in:
邹宗楠
2022-03-05 16:07:16 +08:00
parent c6d2d26bb1
commit bcf8f3164e

View File

@@ -4,6 +4,8 @@ import (
"crypto/sha1"
"errors"
"fmt"
"git.rosy.net.cn/baseapi"
"math/rand"
"net/http"
"net/url"
"sort"
@@ -176,42 +178,11 @@ func (c *DeliveryHandler) callbackMsg2Waybill(msg *mtpsapi.CallbackOrderMsg) (re
return retVal
}
func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInfo *partner.WaybillFeeInfo, err error) {
db := dao.GetDB()
deliveryFeeInfo = &partner.WaybillFeeInfo{}
deliveryFeeInfo.RefDeliveryFee, deliveryFeeInfo.RefAddFee, err = delivery.CalculateOrderDeliveryFee(order, time.Now(), db)
if err == nil {
if _, err = c.getMTPSShopID(order, db); err == nil {
deliveryFeeInfo.DeliveryFee = deliveryFeeInfo.RefDeliveryFee
}
}
return deliveryFeeInfo, err
}
//
//// todo 是否应该语法订单
// 老方法是自己计算
//func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInfo *partner.WaybillFeeInfo, err error) {
// db := dao.GetDB()
// deliveryFeeInfo = &partner.WaybillFeeInfo{}
// api.MtpsAPI.PreCreateByShop(&mtpsapi.PreCreateByShopParam{
// DeliveryID: time.Now().Unix()*100 + int64(rand.Intn(2)),
// OrderID: order.VendorOrderID,
// ShopID: utils.Int2Str(order.StoreID),
// DeliveryServiceCode: mtpsapi.DeliveryServiceCodeIntime,
// ReceiverName: order.ConsigneeName,
// ReceiverAddress: order.ConsigneeAddress,
// ReceiverPhone: order.ConsigneeMobile,
// ReceiverLng: order.ConsigneeLng,
// ReceiverLat: order.ConsigneeLat,
// GoodsValue: utils.Int64ToFloat64(order.ActualPayPrice),
// GoodsWeight: utils.Int2Float64(order.Weight),
// PayTypeCode: 0,
// OuterOrderSourceDesc: "101",
// })
// deliveryFeeInfo.RefDeliveryFee, deliveryFeeInfo.RefAddFee, err = delivery.CalculateOrderDeliveryFee(order, time.Now(), db)
// baseapi.SugarLogger.Debug("errrr:=====", err)
// baseapi.SugarLogger.Debug("delFee:=====", deliveryFeeInfo.RefDeliveryFee)
// baseapi.SugarLogger.Debug("FeeInfo:=====", deliveryFeeInfo.RefAddFee)
// if err == nil {
// if _, err = c.getMTPSShopID(order, db); err == nil {
// deliveryFeeInfo.DeliveryFee = deliveryFeeInfo.RefDeliveryFee
@@ -220,6 +191,38 @@ func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInf
// return deliveryFeeInfo, err
//}
// 新方法平台返回
func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInfo *partner.WaybillFeeInfo, err error) {
db := dao.GetDB()
deliveryFeeInfo = &partner.WaybillFeeInfo{}
deliveryFeeInfo.RefDeliveryFee, deliveryFeeInfo.RefAddFee, err = api.MtpsAPI.PreCreateByShop(&mtpsapi.PreCreateByShopParam{
DeliveryID: time.Now().Unix()*100 + int64(rand.Intn(2)),
OrderID: order.VendorOrderID,
ShopID: utils.Int2Str(order.StoreID),
DeliveryServiceCode: mtpsapi.DeliveryServiceCodeIntime,
ReceiverName: order.ConsigneeName,
ReceiverAddress: order.ConsigneeAddress,
ReceiverPhone: order.ConsigneeMobile,
ReceiverLng: order.ConsigneeLng,
ReceiverLat: order.ConsigneeLat,
GoodsValue: utils.Int64ToFloat64(order.ActualPayPrice),
GoodsWeight: utils.Int2Float64(order.Weight),
PayTypeCode: 0,
ExpectedDeliveryTime: 4012, // 4002飞速达,4011快速达,4012及时达,4013集中送
OuterOrderSourceDesc: "101",
})
//deliveryFeeInfo.RefDeliveryFee, deliveryFeeInfo.RefAddFee, err = delivery.CalculateOrderDeliveryFee(order, time.Now(), db)
baseapi.SugarLogger.Debug("errrr:=====", err)
baseapi.SugarLogger.Debug("delFee:=====", deliveryFeeInfo.RefDeliveryFee)
baseapi.SugarLogger.Debug("FeeInfo:=====", deliveryFeeInfo.RefAddFee)
if err != nil {
if _, err = c.getMTPSShopID(order, db); err == nil {
deliveryFeeInfo.DeliveryFee = deliveryFeeInfo.RefDeliveryFee
}
}
return deliveryFeeInfo, err
}
// IDeliveryPlatformHandler美团配送
func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee int64) (bill *model.Waybill, err error) {
db := dao.GetDB()