Merge branch 'S07' into test

This commit is contained in:
hardstylewyl 2025-03-27 16:20:18 +08:00
commit 29ba189181
2 changed files with 24 additions and 4 deletions

View File

@ -788,6 +788,26 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
// 不存在更新需要关注的,也不存在删除的 // 不存在更新需要关注的,也不存在删除的
if (updateFollowRuleItems.Count == 0 && deleteRuleItemIds.Count == 0) return; if (updateFollowRuleItems.Count == 0 && deleteRuleItemIds.Count == 0) return;
// 只存在删除的规则项目,直接关闭处理返回即可
if (updateFollowRuleItems.Count == 0)
{
// 关闭相关的预警生成任务(未关闭的)
await _warningTaskRepository.CloseTransportWarningDetailsGenerateTaskAsync(x =>
!x.IsClosed
&& x.WarningId == rule.Id
&& deleteRuleItemIds.Contains(x.WarningSceneRuleItemId)
);
// 关闭关联的预警通知任务(未关闭的)
await _warningTaskRepository.CloseWarningNotifyTaskAsync(x =>
!x.IsClosed
&& x.WarningId == rule.Id
&& x.WarningType == WarningRuleType.运输时效预警.GetHashCode()
&& deleteRuleItemIds.Contains(x.WarningRuleItemId)
);
return;
}
// 1.查询变更配置相关的预警生成任务(未关闭的) // 1.查询变更配置相关的预警生成任务(未关闭的)
var updateFollowRuleItemIds = updateFollowRuleItems.Select(x => x.Id).ToHashSet(); var updateFollowRuleItemIds = updateFollowRuleItems.Select(x => x.Id).ToHashSet();
var generateTasks = await _warningTaskRepository.GetTransportWarningDetailsGenerateTaskAsync(x => var generateTasks = await _warningTaskRepository.GetTransportWarningDetailsGenerateTaskAsync(x =>
@ -925,10 +945,12 @@ public class TransportWarningHandler : ITransportWarningHandler, ITransientDepen
// 预警信息状态修改为已关闭(即将超时/已超时) // 预警信息状态修改为已关闭(即将超时/已超时)
var closeDetailIds = typeIdsDict.GetValueOrDefault(HandleType.Detail, new HashSet<string>()); var closeDetailIds = typeIdsDict.GetValueOrDefault(HandleType.Detail, new HashSet<string>());
if (closeDetailIds.Count > 0) if (closeDetailIds.Count > 0)
{
await _warningDetailsEsRepository.BulkCloseTransportWarningDetailsAsync(new BulkCloseTransportWarningDetailsVO await _warningDetailsEsRepository.BulkCloseTransportWarningDetailsAsync(new BulkCloseTransportWarningDetailsVO
{ {
DetailsIds = closeDetailIds, DetailsIds = closeDetailIds,
}); });
}
// 关闭相关的预警生成任务(未关闭的) // 关闭相关的预警生成任务(未关闭的)
var closeGenerateTaskIds = typeIdsDict.GetValueOrDefault(HandleType.GenerateTask, new HashSet<string>()); var closeGenerateTaskIds = typeIdsDict.GetValueOrDefault(HandleType.GenerateTask, new HashSet<string>());

View File

@ -99,12 +99,10 @@ public class WarningDetailsEsRepository : IWarningDetailsEsRepository, ITransien
} }
else else
{ {
musts.Add(mu => mu.Terms(t => t.Field(f => f.Status).Terms(input.Status)));
r = await _client.SearchAsync<TransportWarningDetailsIndex>(x => x r = await _client.SearchAsync<TransportWarningDetailsIndex>(x => x
.Index(GlobalConst.TransportWarningDetailsIndex) .Index(GlobalConst.TransportWarningDetailsIndex)
.Query(q => q.Bool(b => b .Query(q => q.Bool(b => b.Must(musts)))
.Must(mu => mu.Terms(t => t.Field(f => f.Status).Terms(input.Status)))
.Must(musts)
))
.Size(SafelyLimit) .Size(SafelyLimit)
); );
} }