diff --git a/src/SJZY.Track.Application/Services/Warning/TransportWarningService.cs b/src/SJZY.Track.Application/Services/Warning/TransportWarningService.cs index d179707a..f25b817a 100644 --- a/src/SJZY.Track.Application/Services/Warning/TransportWarningService.cs +++ b/src/SJZY.Track.Application/Services/Warning/TransportWarningService.cs @@ -330,7 +330,6 @@ public class TransportWarningService : ApplicationService }); } - /// /// 删除运输时效规则场景 /// @@ -360,7 +359,6 @@ public class TransportWarningService : ApplicationService return new UnifyResultDto(true); } - /// /// 编辑预警规则项目(全量) /// diff --git a/src/SJZY.Track.Domain/Aggregates/WarningAggregate/Transport/TransportWarningDetailsIndex.cs b/src/SJZY.Track.Domain/Aggregates/WarningAggregate/Transport/TransportWarningDetailsIndex.cs index 6ff141b9..b40e2c96 100644 --- a/src/SJZY.Track.Domain/Aggregates/WarningAggregate/Transport/TransportWarningDetailsIndex.cs +++ b/src/SJZY.Track.Domain/Aggregates/WarningAggregate/Transport/TransportWarningDetailsIndex.cs @@ -127,6 +127,7 @@ public sealed class TransportWarningDetailsIndex : IdBaseIndex public int CalcStatus(TrackDetailsIndex? startStatusTrack, TrackDetailsIndex? endStatusTrack) { if (Status == (int) TransportWarningStatus.已关闭) return Status; + var isEnd = !string.IsNullOrWhiteSpace(EndTrackContent); //时效 var transportTimeSpan = TimeSpan.FromHours(TransportTimeSpan); //小时 //预警时效(预警发出的时间对比于最早轨迹状态时间的跨度) @@ -137,11 +138,20 @@ public sealed class TransportWarningDetailsIndex : IdBaseIndex //时效>累计运输时间>=预警时效 状态调整为【即将超时】 if (transportTimeSpan > cumulativeTimeSpan && cumulativeTimeSpan >= startTrackWarningTimeSpan) - return Status = (int) TransportWarningStatus.即将超时; + { + return Status = isEnd + ? (int) TransportWarningStatus.已完成 + : (int) TransportWarningStatus.即将超时; + } + //时效<累计运输时间 状态调整为【已超时】 if (transportTimeSpan < cumulativeTimeSpan) - return Status = (int) TransportWarningStatus.已超时; + { + return Status = isEnd + ? (int) TransportWarningStatus.超时完成 + : (int) TransportWarningStatus.已超时; + } return Status; }