From fb355b892bd4649a460dd697ceba62e339096b35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B9=E5=AE=97=E6=A5=A0?= Date: Tue, 10 Sep 2024 17:34:58 +0800 Subject: [PATCH] 1 --- business/jxstore/cms/cms.go | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/business/jxstore/cms/cms.go b/business/jxstore/cms/cms.go index e742cdb1b..30729a3b4 100644 --- a/business/jxstore/cms/cms.go +++ b/business/jxstore/cms/cms.go @@ -704,12 +704,24 @@ func GetSToURidingDistance2(sLng, sLat, uLng, uLat float64, orderId string, vend } } else if (v.WaybillVendorID == model.VendorJXFakeWL || v.WaybillVendorID == model.VendorIDUnknown || v.CourierCoordinate == "") && v.OriginalData == "" { - lng := (sLng - uLng) / float64(300) - lat := (sLat - uLat) / float64(300) + lng := utils.Str2Float64(fmt.Sprintf("%0.6f", (sLng-uLng)/float64(300))) + lat := utils.Str2Float64(fmt.Sprintf("%0.6f", (sLat-uLat)/float64(300))) originalData := make([]string, 0, 0) originalData = append(originalData, fmt.Sprintf("%.6f,%.6f", sLng, sLat)) + var nLng float64 + var nLat float64 for i := 1; i <= 300; i++ { - fakeCourier := fmt.Sprintf("%.6f,%.6f", sLng+(lng*float64(i)), sLat+(lat*float64(i))) + if sLng > uLng { + nLng = sLng - (lng * float64(i)) + } else { + nLng = sLng + (lng * float64(i)) + } + if sLat > uLat { + nLat = sLat - (lat * float64(i)) + } else { + nLat = sLat + (lat * float64(i)) + } + fakeCourier := fmt.Sprintf("%.6f,%.6f", nLng, nLat) originalData = append(originalData, fakeCourier) } originalData = append(originalData, fmt.Sprintf("%.6f,%.6f", uLng, uLat))