Merge branch 'S07' into test

This commit is contained in:
hardstylewyl 2025-03-26 16:05:39 +08:00
commit ca9b5d4e02

View File

@ -303,7 +303,7 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
);
// 处理【预警明细生成就绪阶段】预警明细生成任务
var (updateTasks, addTasks) = HandleDetailGenerateTask(order, orderTasks, ruleItemBoDict, trackStatusTrackDict);
var (updateTasks, addTasks) = HandleDetailGenerateTask(order, orderTasks, warningDetails, ruleItemBoDict, trackStatusTrackDict);
addDetailGenerateTasks.AddRange(addTasks);
updateDetailGenerateTasks.AddRange(updateTasks);
}
@ -411,12 +411,11 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
// 命中:存在任务,起始轨迹状态轨迹变更则更新任务信息,
// 命中:不存在任务,添加生成任务
// 未命中,已有的任务关闭,没有的忽略生成
private (List<TransportWarningDetailsGenerateTaskEntity> UpdateTasks, List<TransportWarningDetailsGenerateTaskEntity> AddTasks) HandleDetailGenerateTask(
OrderEntity order,
private (List<TransportWarningDetailsGenerateTaskEntity> UpdateTasks, List<TransportWarningDetailsGenerateTaskEntity> AddTasks) HandleDetailGenerateTask(OrderEntity order,
List<TransportWarningDetailsGenerateTaskEntity> tasks,
List<TransportWarningDetailsIndex> warningDetails,
Dictionary<int, TransportWarningSceneRuleItemBO> ruleItemBoDict,
Dictionary<int, TrackDetailsIndex> trackStatusIdEarliestTrackDict
)
Dictionary<int, TrackDetailsIndex> trackStatusIdEarliestTrackDict)
{
var insertTasks = new List<TransportWarningDetailsGenerateTaskEntity>();
var updateTasks = new List<TransportWarningDetailsGenerateTaskEntity>();
@ -437,7 +436,9 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
// 不存在任务,生成任务根据最早轨迹
if (task == null)
{
insertTasks.Add(BuildDetailsGenerateTask(order, ruleItem, earliestTrack));
// 不存在开启的预警明细,则添加一个生成任务
if (warningDetails.All(x => x.WarningSceneRuleItemId != ruleId))
insertTasks.Add(BuildDetailsGenerateTask(order, ruleItem, earliestTrack));
continue;
}