fix: GetDetailTimeline 时区缺失时优先用 TrackTime,避免时间轴显示同一 CreateTime #6

Merged
zzh merged 2 commits from test into master 2026-10-20 15:20:35 +08:00
Showing only changes of commit f1ae5563b4 - Show all commits

View File

@ -222,10 +222,11 @@ public class TrackOrderService : ApplicationServiceBase
foreach (var item in trackDetails) foreach (var item in trackDetails)
{ {
//时间和时区任意一个为空则使用创建时间做为排序参照值 // 时区缺失(99999)时仍优先用真实发生时间 TrackTime;仅当 TrackTime 无效才回退 CreateTime。
var timeTick = ToUnixTimestamp(Math.Abs(item.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1 // 旧逻辑在时区缺失时一律用 CreateTime,同批写入会导致时间轴全部显示成同一时刻。
? item.CreateTime var invalidTrackTime = item.TrackTime <= GlobalConst.MinDateTime;
: item.TrackTime); var timeSource = invalidTrackTime ? item.CreateTime : item.TrackTime;
var timeTick = ToUnixTimestamp(timeSource);
res.Add(new GetDetailTimelineOutput() res.Add(new GetDetailTimelineOutput()
{ {
IsHighlight = false, IsHighlight = false,