diff --git a/business/partner/delivery/mtps/waybill.go b/business/partner/delivery/mtps/waybill.go index f2d2eb933..687d1f108 100644 --- a/business/partner/delivery/mtps/waybill.go +++ b/business/partner/delivery/mtps/waybill.go @@ -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()