From f82b0bbae03c37ece953d14cd3b0b35ee00a2edd Mon Sep 17 00:00:00 2001 From: xiaolipro <2357729423@qq.com> Date: Tue, 20 Oct 2026 14:46:34 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix=EF=BC=9A=E6=97=B6=E5=8C=BA=E6=98=BE?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Services/TrackOrders/TrackOrderService.cs | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs index cb2b2dc2..31f9e43c 100644 --- a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs +++ b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs @@ -231,7 +231,7 @@ public class TrackOrderService : ApplicationServiceBase IsHighlight = false, IsShowHover = true, Remark = item.Remarks == null || item.Remarks == "--" ? "" : item.Remarks, - TrackTimeZone = $"GMT{(item.TrackTimeZone >= 0 ? "+" : "-")}{GetTimeZoneStr(item.TrackTimeZone)}", + TrackTimeZone = DateTimeHelper.ConvertFloatToTimeZone(item.TrackTimeZone), TrackTime = timeTick, TrackPlace = item.TrackPlace, EnContent = item.TrackEnContent, @@ -269,19 +269,6 @@ public class TrackOrderService : ApplicationServiceBase return (long) (time - sTime).TotalMilliseconds; } - private static string GetTimeZoneStr(float timeZone) - { - var time = timeZone.ToString().Split('.'); - if (time.Length > 1 && time[1] != "0") //如果时区有小数点 - { - return time[0] + ":30"; - } - else - { - return time[0] + ":00"; - } - } - /// /// 根据轨迹id删除单条轨迹 /// From f1ae5563b4d4a93295d005be7850592860b18a0c Mon Sep 17 00:00:00 2001 From: zzh <1368735060@qq.com> Date: Tue, 20 Oct 2026 15:17:09 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix:=20GetDetailTimeline=20=E6=97=B6?= =?UTF-8?q?=E5=8C=BA=E7=BC=BA=E5=A4=B1=E6=97=B6=E4=BC=98=E5=85=88=E7=94=A8?= =?UTF-8?q?=20TrackTime=EF=BC=8C=E9=81=BF=E5=85=8D=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E8=BD=B4=E6=98=BE=E7=A4=BA=E5=90=8C=E4=B8=80=20CreateTime?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Cursor --- .../Services/TrackOrders/TrackOrderService.cs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs index 31f9e43c..f9c05bb0 100644 --- a/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs +++ b/src/TrackCenter.Application/Services/TrackOrders/TrackOrderService.cs @@ -222,10 +222,11 @@ public class TrackOrderService : ApplicationServiceBase foreach (var item in trackDetails) { - //时间和时区任意一个为空则使用创建时间做为排序参照值 - var timeTick = ToUnixTimestamp(Math.Abs(item.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1 - ? item.CreateTime - : item.TrackTime); + // 时区缺失(99999)时仍优先用真实发生时间 TrackTime;仅当 TrackTime 无效才回退 CreateTime。 + // 旧逻辑在时区缺失时一律用 CreateTime,同批写入会导致时间轴全部显示成同一时刻。 + var invalidTrackTime = item.TrackTime <= GlobalConst.MinDateTime; + var timeSource = invalidTrackTime ? item.CreateTime : item.TrackTime; + var timeTick = ToUnixTimestamp(timeSource); res.Add(new GetDetailTimelineOutput() { IsHighlight = false,