diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs index f5313b3b..edf15090 100644 --- a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs +++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/GetTrackOutput.cs @@ -19,6 +19,7 @@ public class TrackDetail public string Code { get; set; } = null!; public string Status { get; set; } = null!; public string? Content { get; set; } + public string? EnContent { get; set; } public string? OriginContent { get; set; } public string Location { get; set; } = null!; diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs index f6768eee..bc140364 100644 --- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs +++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.Query.cs @@ -56,7 +56,9 @@ public partial class TrackService foreach (var group in details.GroupBy(x => x.OrderId)) { var item = new GetTrackOutput(); - var trackDetails = group.ToList(); + var trackDetails = group + .WhereIf(isFilterExternal, x => trackContentDic.TryGetValue(x.TrackCode, out var isExternal) && isExternal) + .ToList(); item.OrderNo = trackDetails.First().OrderNo; item.TrackDetails = trackDetails.Select(x => new TrackDetail @@ -65,6 +67,7 @@ public partial class TrackService Code = x.TrackCode, Status = x.TrackStatus, Content = x.TrackContent, + EnContent = x.TrackEnContent, OriginContent = x.OriginTrackContent, Location = x.TrackPlace, Time = Math.Abs(x.TrackTimeZone - GlobalConst.NoneTrackTimeZone) < 1 @@ -142,7 +145,9 @@ public partial class TrackService foreach (var group in details.GroupBy(x => x.OrderId)) { var item = new GetTrackOutput(); - var trackDetails = group.ToList(); + var trackDetails = group + .WhereIf(isFilterExternal, x => trackContentDic.TryGetValue(x.TrackCode, out var isExternal) && isExternal) + .ToList(); item.OrderNo = trackDetails.First().OrderNo; item.TrackDetails = trackDetails.Select(x => new TrackDetail @@ -151,6 +156,7 @@ public partial class TrackService Code = x.TrackCode, Status = x.TrackStatus, Content = x.TrackContent, + EnContent = x.TrackEnContent, OriginContent = x.OriginTrackContent, Location = x.TrackPlace, Time = x.TrackTime,