fix: GetDetailTimeline 时区缺失时优先用 TrackTime,避免时间轴显示同一 CreateTime #6
@ -222,16 +222,17 @@ 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,
|
||||||
IsShowHover = true,
|
IsShowHover = true,
|
||||||
Remark = item.Remarks == null || item.Remarks == "--" ? "" : item.Remarks,
|
Remark = item.Remarks == null || item.Remarks == "--" ? "" : item.Remarks,
|
||||||
TrackTimeZone = $"GMT{(item.TrackTimeZone >= 0 ? "+" : "-")}{GetTimeZoneStr(item.TrackTimeZone)}",
|
TrackTimeZone = DateTimeHelper.ConvertFloatToTimeZone(item.TrackTimeZone),
|
||||||
TrackTime = timeTick,
|
TrackTime = timeTick,
|
||||||
TrackPlace = item.TrackPlace,
|
TrackPlace = item.TrackPlace,
|
||||||
EnContent = item.TrackEnContent,
|
EnContent = item.TrackEnContent,
|
||||||
@ -269,19 +270,6 @@ public class TrackOrderService : ApplicationServiceBase
|
|||||||
return (long) (time - sTime).TotalMilliseconds;
|
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";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 根据轨迹id删除单条轨迹
|
/// 根据轨迹id删除单条轨迹
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user