Merge branch 'S07' into test

This commit is contained in:
hardstylewyl 2025-03-21 17:48:42 +08:00
commit cc0120951a
4 changed files with 15 additions and 12 deletions

View File

@ -595,7 +595,7 @@ public sealed class ReturnWarningHandler : IReturnWarningHandler, ITransientDepe
private static bool CanNeedFollow(ReturnWarningRuleItemBO oldRule, ReturnWarningRuleItemBO postRule)
{
// 时效发生更改
if (Math.Abs(oldRule.ReturnTimeSpan - postRule.ReturnTimeSpan) > 0.1f)
if (Math.Abs(oldRule.ReturnTimeSpan - postRule.ReturnTimeSpan) > 0.01f)
return true;
// 关注的轨迹状态减少

View File

@ -883,14 +883,16 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
.Where(x => x.Type == HandleType.Detail)
.Select(x => x.Detail)
.ToList();
await _warningDetailsEsRepository.BulkUpdateTransportWarningDetailsAsync(updateWarningDetails);
if (reHitRuleBlocks.Count > 0)
await _warningDetailsEsRepository.BulkUpdateTransportWarningDetailsAsync(updateWarningDetails);
// 3.2 更新预警生成任务(重新命中规则)
var updateGenerateTasks = reHitRuleBlocks
.Where(x => x.Type == HandleType.GenerateTask)
.Select(x => x.GenerateTask)
.ToList();
await _warningTaskRepository.BulkUpdateTransportWarningDetailsGenerateTaskAsync(updateGenerateTasks);
if (updateGenerateTasks.Count > 0)
await _warningTaskRepository.BulkUpdateTransportWarningDetailsGenerateTaskAsync(updateGenerateTasks);
// 3.3 处理需要关闭的【预警明细】【预警生成任务】【预警通知任务】(未命中规则)
var typeIdsDict = handleBlocks
@ -910,10 +912,11 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
// 4.处理删除规则的相关联的【预警明细】【预警生成任务】【预警通知任务】
// 预警信息状态修改为已关闭(即将超时/已超时)
var closeDetailIds = typeIdsDict.GetValueOrDefault(HandleType.Detail, new HashSet<string>());
await _warningDetailsEsRepository.BulkCloseTransportWarningDetailsAsync(new BulkCloseTransportWarningDetailsVO
{
DetailsIds = closeDetailIds,
});
if (closeDetailIds.Count > 0)
await _warningDetailsEsRepository.BulkCloseTransportWarningDetailsAsync(new BulkCloseTransportWarningDetailsVO
{
DetailsIds = closeDetailIds,
});
// 关闭相关的预警生成任务(未关闭的)
var closeGenerateTaskIds = typeIdsDict.GetValueOrDefault(HandleType.GenerateTask, new HashSet<string>());
@ -968,10 +971,10 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
if (oldRule.EndTrackStatusId != postRule.EndTrackStatusId)
return true;
if (Math.Abs(oldRule.TransportTimeSpan - postRule.TransportTimeSpan) > 0.1f)
if (Math.Abs(oldRule.TransportTimeSpan - postRule.TransportTimeSpan) > 0.01f)
return true;
if (Math.Abs(oldRule.StartTrackWarningTimeSpan - postRule.StartTrackWarningTimeSpan) > 0.1f)
if (Math.Abs(oldRule.StartTrackWarningTimeSpan - postRule.StartTrackWarningTimeSpan) > 0.01f)
return true;
return false;

View File

@ -102,6 +102,6 @@ public class ReturnWarningDetailsIndex : IdBaseIndex
public bool MatchTrackTime(DateTime trackTime, float trackTimeZone)
{
return TrackTime == trackTime && Math.Abs(TrackTimeZone - trackTimeZone) < 0.1f;
return TrackTime == trackTime && Math.Abs(TrackTimeZone - trackTimeZone) < 0.01f;
}
}

View File

@ -140,7 +140,7 @@ public sealed class TransportWarningDetailsIndex : IdBaseIndex
public DateTime GetUtc0StartTrackTime()
{
return Math.Abs(StartTrackTimeZone - GlobalConst.NoneTrackTimeZone) < 0.1f
return Math.Abs(StartTrackTimeZone - GlobalConst.NoneTrackTimeZone) < 0.01f
? StartTrackTime
: StartTrackTime.Subtract(TimeSpan.FromHours(StartTrackTimeZone));
}
@ -148,7 +148,7 @@ public sealed class TransportWarningDetailsIndex : IdBaseIndex
public DateTime? GetUtc0EndTrackTime()
{
if (EndTrackTime == null || EndTrackTimeZone == null) return null;
return Math.Abs(EndTrackTimeZone.Value - GlobalConst.NoneTrackTimeZone) < 0.1f
return Math.Abs(EndTrackTimeZone.Value - GlobalConst.NoneTrackTimeZone) < 0.01f
? EndTrackTime
: EndTrackTime.Value.Subtract(TimeSpan.FromHours(EndTrackTimeZone.Value));
}