1
This commit is contained in:
@@ -669,14 +669,17 @@ func GetSToURidingDistance2(sLng, sLat, uLng, uLat float64, orderId string) (way
|
|||||||
riderLine := strings.Split(v.OriginalData, ";") // 路线坐标点
|
riderLine := strings.Split(v.OriginalData, ";") // 路线坐标点
|
||||||
|
|
||||||
courierDistance := float64(time.Now().Unix()-v.WaybillCreatedAt.Unix()) * (float64(v.Distance) / float64(v.DurationTime)) // 当前骑手骑行距离
|
courierDistance := float64(time.Now().Unix()-v.WaybillCreatedAt.Unix()) * (float64(v.Distance) / float64(v.DurationTime)) // 当前骑手骑行距离
|
||||||
|
if courierDistance >= float64(v.Distance) {
|
||||||
|
courierDistance = float64(v.Distance)
|
||||||
|
}
|
||||||
nowCourierDrop := int64(math.Ceil((courierDistance / float64(v.Distance)) * float64(len(riderLine)))) // 当前骑手骑行距离,占中的骑行距离百分比.
|
nowCourierDrop := int64(math.Ceil((courierDistance / float64(v.Distance)) * float64(len(riderLine)))) // 当前骑手骑行距离,占中的骑行距离百分比.
|
||||||
if nowCourierDrop >= int64(len(riderLine)) {
|
if nowCourierDrop >= int64(len(riderLine)) {
|
||||||
v.CourierCoordinate = riderLine[nowCourierDrop-2]
|
v.CourierCoordinate = riderLine[nowCourierDrop-1]
|
||||||
}
|
}
|
||||||
if nowCourierDrop <= 0 {
|
if nowCourierDrop <= 0 {
|
||||||
v.CourierCoordinate = riderLine[0]
|
v.CourierCoordinate = riderLine[0]
|
||||||
}
|
}
|
||||||
if v.Status == model.WaybillStatusDelivered {
|
if v.Status >= model.WaybillStatusDelivered {
|
||||||
v.CourierCoordinate = riderLine[len(riderLine)-1]
|
v.CourierCoordinate = riderLine[len(riderLine)-1]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user