Merge branch 'S07' into test

This commit is contained in:
hardstylewyl 2025-04-16 15:04:37 +08:00
commit cb3edd43b3
2 changed files with 11 additions and 14 deletions

View File

@ -550,10 +550,8 @@ public class TrackPushEventHandler : ITransientDependency, ICapSubscribe
//轨迹推送失败(被拦截)
private void TrackPushFailedPublicTopic(string failedMessage, TrackPushEvent @event, OrderEntity order)
{
using var activity = ActivityHelper.CreateSpanActivity("TrackPushFailedPublicTopic");
using var activity = ActivityHelper.CreateSpanActivity($"TrackPushFailedPublicTopic-{order.OrderNo}");
activity.SetTag("failedMessage", failedMessage);
activity.SetTag("order", order.ToJson());
activity.SetTag("@event", @event.ToJson());
_broadcastingService.TrackPushFailedPubilcTopic(new TrackPushRecordDto
{
SubSystemCode = @event.SubSystemCode,
@ -586,7 +584,7 @@ public class TrackPushEventHandler : ITransientDependency, ICapSubscribe
List<dynamic> pushOrUpdateInputs
)
{
using var activity = ActivityHelper.CreateSpanActivity("TrackPushFailedPublicTopic");
using var activity = ActivityHelper.CreateSpanActivity("TrackPushFailedPublicTopic-All");
activity.SetTag("failedMessage", failedMessage.ToJson());
activity.SetTag("@event", @event.ToJson());
foreach (var pushInput in pushOrUpdateInputs)

View File

@ -272,6 +272,10 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
var insertTracks = new List<TrackDetailsIndex>();
var updateTracks = new List<TrackDetailsIndex>();
var operationRecords = new List<OrderOperationRecordIndex>();
var traceLog = new Dictionary<string, object>
{
{ "@event", @event.ToJson() }
};
foreach (var order in @event.OrderIdentifiers)
{
// fast path: by update with es id case
@ -308,15 +312,12 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
// 修改了extra,要校验修改后的extra是否存在
|| (!string.IsNullOrWhiteSpace(@event.NewExtra) && x.Extra == @event.NewExtra)).ToList();
using var activity = ActivityHelper.CreateSpanActivity("TrackUpsertEventHandler.UpsertTrackAsync");
if (@event.IsAdd)
{
if (existTracks.Count > 0)
{
_logger.LogInformation("订单已经存在不允许重复的轨迹,不允许重复添加:{@event}", @event);
activity.SetTag("errorMsg", "订单已经存在不允许重复的轨迹,不允许重复添加");
activity.SetTag("order", order.ToJson());
activity.SetTag("@event", @event.ToJson());
traceLog.Add($"OrderNo-{order.OrderNo}", "订单已经存在不允许重复的轨迹,不允许重复添加");
continue;
}
@ -328,18 +329,14 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
if (existTracks.Count == 0)
{
_logger.LogInformation("订单不存在轨迹,不允许修改:{@event}", @event);
activity.SetTag("errorMsg", "订单不存在轨迹,不允许修改");
activity.SetTag("order", order.ToJson());
activity.SetTag("@event", @event.ToJson());
traceLog.Add($"OrderNo-{order.OrderNo}", "订单不存在轨迹,不允许修改");
continue;
}
if (existTracks.Count > 1)
{
_logger.LogInformation("订单存在多条轨迹不允许修改:{@event}", @event);
activity.SetTag("errorMsg", "订单存在多条轨迹不允许修改");
activity.SetTag("order", order.ToJson());
activity.SetTag("@event", @event.ToJson());
traceLog.Add($"OrderNo-{order.OrderNo}", "订单存在多条轨迹不允许修改");
continue;
}
@ -352,6 +349,8 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
canNextOrderIds.Add(order.OrderId);
}
ActivityHelper.StartSpanActivity("UpsertTrackAsync", traceLog);
if (updateTracks.Any())
{
// 批量差异化更新轨迹