diff --git a/src/SJZY.Track.Application/EventHandlers/TrackDeleteEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackDeleteEventHandler.cs index 4f402731..28b38520 100644 --- a/src/SJZY.Track.Application/EventHandlers/TrackDeleteEventHandler.cs +++ b/src/SJZY.Track.Application/EventHandlers/TrackDeleteEventHandler.cs @@ -1,5 +1,6 @@ using DotNetCore.CAP; using SJZY.Expand.ABP.Core.Logger; +using SJZY.Expand.ABP.Core.PublicMethords; using SJZY.Track.Application.Contract.Events; using SJZY.Track.Domain.Aggregates.OrderAggregate; using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate; @@ -34,8 +35,6 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe return; } - @event.Visited.Add(@event.OrderId); - // 不同子系统需要做内容映射 if (@event.UpSubSystemId != 0 && @event.UpSubSystemId != @event.SubSystemId) { @@ -75,13 +74,11 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe var linkedOrders = await _orderRepository.GetLinkedOrdersAsync(@event.OrderId); foreach (var linkedOrder in linkedOrders) { - var nextEvent = new TrackDeleteEvent - { - OrderId = linkedOrder.OrderId, - TrackCodes = @event.TrackCodes, - SubSystemId = linkedOrder.SubSystemId, - UpSubSystemId = @event.SubSystemId - }; + var nextEvent = @event.DeepCopy(); + nextEvent.Visited.Add(@event.OrderId); + nextEvent.TrackCodes = @event.TrackCodes; + nextEvent.SubSystemId = linkedOrder.SubSystemId; + nextEvent.UpSubSystemId = @event.SubSystemId; await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, nextEvent); } diff --git a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs index 6de64141..208b3a85 100644 --- a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs +++ b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs @@ -42,8 +42,6 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe return; } - @event.Visited.Add(@event.OrderId); - // 不同子系统需要做内容映射 if (@event.UpSubSystemId != 0 && @event.UpSubSystemId != @event.SubSystemId) { @@ -88,6 +86,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe foreach (var linkedOrder in linkedOrders) { var nextEvent = @event.DeepCopy(); + nextEvent.Visited.Add(@event.OrderId); nextEvent.OrderId = linkedOrder.OrderId; nextEvent.OrderType = linkedOrder.OrderType; nextEvent.OrderNo = linkedOrder.OrderNo;