diff --git a/src/SJZY.Track.Application.Contract/Dtos/Warning/Complete/CompleteWarningDetailsDto.cs b/src/SJZY.Track.Application.Contract/Dtos/Warning/Complete/CompleteWarningDetailsDto.cs index b2c0d5be..94fafb32 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/Warning/Complete/CompleteWarningDetailsDto.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/Warning/Complete/CompleteWarningDetailsDto.cs @@ -1,7 +1,9 @@ +using SJZY.Track.Application.Contract.Dtos.Warning.Return; + namespace SJZY.Track.Application.Contract.Dtos.Warning.Complete; /// -/// 完整预警 +/// 完整预警明细 /// public class CompleteWarningDetailsDto { @@ -59,7 +61,7 @@ public class CompleteWarningDetailsDto /// /// 缺失轨迹状态 /// - public string MissingTrackStatus { get; set; } // todo:id换名称 + public List MissingTrackStatus { get; set; } //视图属性 tips:从es即时拿取 diff --git a/src/SJZY.Track.Application/Services/Warning/CompleteWarningService.cs b/src/SJZY.Track.Application/Services/Warning/CompleteWarningService.cs index 2a52edbf..06b4c97f 100644 --- a/src/SJZY.Track.Application/Services/Warning/CompleteWarningService.cs +++ b/src/SJZY.Track.Application/Services/Warning/CompleteWarningService.cs @@ -194,18 +194,23 @@ public class CompleteWarningService : ApplicationService return string.Join(',', notifyUsers.ToObject>().Select(x => x.UserName)); } - string BuildMissingTrackStatus(string statusIds) + List BuildMissingTrackStatus(string statusIds) { var trackStatus = statusIds.Split(',').Select(x => { - if (int.TryParse(x, out var id)) - return trackStatusDict.GetValueOrDefault(id) - ?? $"丢失{id}轨迹状态"; + if (!int.TryParse(x, out var id)) return null; + + var trackStatusName = trackStatusDict.GetValueOrDefault(id); + if (string.IsNullOrWhiteSpace(trackStatusName)) return null; + return new TrackStatusDto + { + TrackStatusId = id, + TrackStatus = trackStatusName + }; - return null; }).Where(x => x != null); - return string.Join(',', trackStatus); + return trackStatus.ToList()!; } }