diff --git a/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs b/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
index eccbe955..d5286726 100644
--- a/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
+++ b/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
@@ -22,6 +22,11 @@ public class TrackDeleteEvent
///
public int UpSubSystemId { get; set; }
+ ///
+ /// 操作人
+ ///
+ public string? OperationMan { get; set; }
+
///
/// 已经处理过的订单
///
diff --git a/src/SJZY.Track.Application/EventHandlers/CAPFilter.cs b/src/SJZY.Track.Application/EventHandlers/CAPFilter.cs
index feaf198f..31f49b16 100644
--- a/src/SJZY.Track.Application/EventHandlers/CAPFilter.cs
+++ b/src/SJZY.Track.Application/EventHandlers/CAPFilter.cs
@@ -3,6 +3,7 @@ using DotNetCore.CAP.Filter;
using SJZY.Expand.ABP.Core;
using SJZY.Expand.ABP.Core.Logger;
using SJZY.Expand.ABP.Core.PublicMethords;
+using SJZY.Track.Domain.Consts;
namespace SJZY.Track.Application.EventHandlers;
@@ -17,6 +18,8 @@ public class CAPFilter : SubscribeFilter
///
public override Task OnSubscribeExecutingAsync(ExecutingContext context)
{
+ if (context.DeliverMessage.Headers["cap-msg-name"] == GlobalConst.TrackRefreshSubscribe)
+ return Task.CompletedTask;
var argumentJsonStr = context.Arguments.ToJson();
context.DeliverMessage.Headers["sjzy-receive-time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss fff");
diff --git a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
index 75a991a2..8d6e6b07 100644
--- a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
+++ b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs
@@ -37,6 +37,7 @@ public class TrackRefreshEventHandler : ITransientDependency, ICapSubscribe
var config = await _trackPullCacheService.GetPullParamWithContentConfigAsync(attach.SubSystemId,
attach.ServiceProviderId);
+ if (@event.Data == null) return;
var data = JObject.Parse(@event.Data.ToString()!);
var orderToken = data[config.ParamConfig.OrderPath];
if (orderToken is JArray orderTokens)
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
index 77199263..72fe2f20 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
@@ -80,7 +80,7 @@ public partial class TrackService : ApplicationService, ITrackService
var orders = await _orderRepository.GetListAsync(x =>
x.OrderType == input.OrderType && input.OrderNos.Contains(x.OrderNo), x => new
{
- x.Id, x.OrderNo, x.SubSystemId, x.LatestPushTrackContentId, x.CustomId
+ x.Id, x.OrderNo, x.SubSystemId, x.LatestPushTrackContentId, x.CustomId, x.IsCompleted
});
foreach (var order in orders)
@@ -98,7 +98,9 @@ public partial class TrackService : ApplicationService, ITrackService
OrderId = order.Id,
SubSystemId = order.SubSystemId,
LatestPushTrackContentId = order.LatestPushTrackContentId,
- CustomId = order.CustomId
+ CustomId = order.CustomId,
+ IsCompleted = order.IsCompleted,
+ OperationMan = CurrentUserRequest.CurrentUser.Name
};
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
}
@@ -138,6 +140,7 @@ public partial class TrackService : ApplicationService, ITrackService
OrderId = order.Id,
TrackCodes = codes.Select(x => x.TrackCode).ToList(),
SubSystemId = order.SubSystemId,
+ OperationMan = CurrentUserRequest.CurrentUser.Name
};
await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
@@ -177,6 +180,7 @@ public partial class TrackService : ApplicationService, ITrackService
OrderId = group.Key,
TrackCodes = codes.Select(x => x.TrackCode).ToList(),
SubSystemId = orders.First(x => x.Id == group.Key).SubSystemId,
+ OperationMan = CurrentUserRequest.CurrentUser.Name
};
await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
}