diff --git a/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs b/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
index 7fba7153..e8072e27 100644
--- a/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
+++ b/src/SJZY.Track.Application.Contract/Events/TrackDeleteEvent.cs
@@ -27,6 +27,11 @@ public class TrackDeleteEvent
///
public string? OperationMan { get; set; }
+ ///
+ /// 操作人姓名
+ ///
+ public int OperationManId { get; set; }
+
///
/// 已经处理过的订单
///
diff --git a/src/SJZY.Track.Application.Contract/Events/TrackUpsertEvent.cs b/src/SJZY.Track.Application.Contract/Events/TrackUpsertEvent.cs
index 07fa4f95..225572d9 100644
--- a/src/SJZY.Track.Application.Contract/Events/TrackUpsertEvent.cs
+++ b/src/SJZY.Track.Application.Contract/Events/TrackUpsertEvent.cs
@@ -24,6 +24,11 @@ public class TrackUpsertEvent
///
public string? OperationMan { get; set; }
+ ///
+ /// 操作人id
+ ///
+ public int OperationManId { get; set; }
+
///
/// true新增,false更新
///
diff --git a/src/SJZY.Track.Application/CAP/EventHandlers/TrackDeleteEventHandler.cs b/src/SJZY.Track.Application/CAP/EventHandlers/TrackDeleteEventHandler.cs
index 92ca0dee..436e55dd 100644
--- a/src/SJZY.Track.Application/CAP/EventHandlers/TrackDeleteEventHandler.cs
+++ b/src/SJZY.Track.Application/CAP/EventHandlers/TrackDeleteEventHandler.cs
@@ -23,13 +23,15 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
private readonly IProvideQueries _provideQueries;
private readonly ITrackDetailsEsRepository _trackDetailsEsRepository;
private readonly RabbitClientBus _rabbitClientBus;
+ private readonly IOrderOperationRecordEsRepository _orderOperationRecordEsRepository;
public TrackDeleteEventHandler(IProvideQueries provideQueries,
IOrderRepository orderRepository, ICapPublisher capPublisher,
ITrackDetailsEsRepository trackDetailsEsRepository,
RabbitClientBus rabbitClientBus,
ITrackStatusRepository trackStatusRepository,
- ITrackContentRepository trackContentRepository)
+ ITrackContentRepository trackContentRepository,
+ IOrderOperationRecordEsRepository orderOperationRecordEsRepository)
{
_provideQueries = provideQueries;
_orderRepository = orderRepository;
@@ -38,6 +40,7 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
_rabbitClientBus = rabbitClientBus;
_trackStatusRepository = trackStatusRepository;
_trackContentRepository = trackContentRepository;
+ _orderOperationRecordEsRepository = orderOperationRecordEsRepository;
}
[CapSubscribe(GlobalConst.TrackDeleteSubscribe, Group = GlobalConst.TrackDeleteSubscribe)]
@@ -168,6 +171,7 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
{
tracks = await _trackDetailsEsRepository.GetDataByIds(@event.EsIds);
orderIds = tracks.Select(m => m.OrderId).Distinct().ToList();
+ @event.OrderIds = orderIds.ToArray();
// 外部api获取的轨迹不允许删除
if (tracks.Any(m => m.Source == TrackSourceEnum.ExternalServiceProvide.GetHashCode()))
@@ -223,6 +227,19 @@ public class TrackDeleteEventHandler : ITransientDependency, ICapSubscribe
order.LatestTrackTime = track.TrackTime;
order.LatestTrackTimeZone = track.TrackTimeZone;
}
+
+
+ // 写入操作日志
+ _ = _orderOperationRecordEsRepository.AddAsync(new OrderOperationRecordIndex
+ {
+ OrderId = order.Id,
+ OrderNo = order.OrderNo,
+ OptionType = OrderOperationType.删除轨迹.ToString(),
+ Content = tracks?.Where(m=>m.OrderId == order.Id)?.ToList().ToJson(),
+ CreateUserId = @event.OperationManId,
+ CreateUserName = @event.OperationMan ?? "",
+ CreateTime = DateTime.Now
+ });
}
await _orderRepository.UpdateRangeAsync(orders,
diff --git a/src/SJZY.Track.Application/CAP/EventHandlers/TrackUpsertEventHandler.cs b/src/SJZY.Track.Application/CAP/EventHandlers/TrackUpsertEventHandler.cs
index cfdc1ed4..c5253ac8 100644
--- a/src/SJZY.Track.Application/CAP/EventHandlers/TrackUpsertEventHandler.cs
+++ b/src/SJZY.Track.Application/CAP/EventHandlers/TrackUpsertEventHandler.cs
@@ -22,20 +22,22 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
private readonly IProvideQueries _provideQueries;
private readonly ITrackDetailsEsRepository _trackDetailsEsRepository;
private readonly RabbitClientBus _rabbitClientBus;
+ private readonly IOrderOperationRecordEsRepository _orderOperationRecordEsRepository;
public TrackUpsertEventHandler(
IOrderRepository orderRepository,
ICapPublisher capPublisher,
IProvideQueries provideQueries,
ITrackDetailsEsRepository trackDetailsEsRepository,
- ITrackStatusRepository trackStatusRepository,
- RabbitClientBus rabbitClientBus)
+ RabbitClientBus rabbitClientBus,
+ IOrderOperationRecordEsRepository orderOperationRecordEsRepository)
{
_orderRepository = orderRepository;
_capPublisher = capPublisher;
_provideQueries = provideQueries;
_trackDetailsEsRepository = trackDetailsEsRepository;
_rabbitClientBus = rabbitClientBus;
+ _orderOperationRecordEsRepository = orderOperationRecordEsRepository;
}
[CapSubscribe(GlobalConst.TrackUpsertSubscribe, Group = GlobalConst.TrackUpsertSubscribe)]
@@ -294,6 +296,19 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
//来源与外部服务商不允许修改
if (track.Source == (int) TrackSourceEnum.ExternalServiceProvide) continue;
+
+
+ // 写入操作日志
+ _ = _orderOperationRecordEsRepository.AddAsync(new OrderOperationRecordIndex
+ {
+ OrderId = order.OrderId,
+ OrderNo = order.OrderNo,
+ OptionType = OrderOperationType.创建轨迹.ToString(),
+ Content = track.ToJson(),
+ CreateUserId = @event.OperationManId,
+ CreateUserName = @event.OperationMan ?? "",
+ CreateTime = DateTime.Now
+ });
}
else
{
@@ -329,6 +344,18 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
}
//其余情况:A,D都为新增操作,无需检查数量,track为null执行新增操作
+
+ // 写入操作日志
+ _ = _orderOperationRecordEsRepository.AddAsync(new OrderOperationRecordIndex
+ {
+ OrderId = order.OrderId,
+ OrderNo = order.OrderNo,
+ OptionType = OrderOperationType.修改轨迹.ToString(),
+ Content = track.ToJson(),
+ CreateUserId = @event.OperationManId,
+ CreateUserName = @event.OperationMan ?? "",
+ CreateTime = DateTime.Now
+ });
}
if (track == default)
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs b/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs
index 772cef1e..dea72486 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs
@@ -60,7 +60,7 @@ public partial class OrderService : ApplicationService, IOrderService
OptionType = OrderOperationType.修改订单.ToString(),
Content = input.ToJson(),
CreateUserId = currentUser.UserId,
- CreateUserString = currentUser.Name,
+ CreateUserName = currentUser.Name,
};
_ = _orderOperationRecordEsRepository.AddAsync(index);
@@ -87,7 +87,7 @@ public partial class OrderService : ApplicationService, IOrderService
OptionType = OrderOperationType.创建订单.ToString(),
Content = input.ToJson(),
CreateUserId = currentUser.UserId,
- CreateUserString = currentUser.Name,
+ CreateUserName = currentUser.Name,
CreateTime = DateTime.Now
};
_ = _orderOperationRecordEsRepository.AddAsync(indexForAdd);
diff --git a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
index a1eea9ae..52b372cc 100644
--- a/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
+++ b/src/SJZY.Track.Application/Services/ProvideServices/TrackService.cs
@@ -195,11 +195,13 @@ public partial class TrackService : ApplicationService, ITrackService
}
// 删除轨迹
+ var currentUser = CurrentUserRequest.CurrentUser;
var @event = new TrackDeleteEvent
{
EsIds = input.TrackContentEsIds.ToArray(),
SubSystemId = tracks.First().SubSystemId,
- OperationMan = userInfo.Data.UserName,
+ OperationMan = currentUser.Name,
+ OperationManId = currentUser.UserId
};
await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
@@ -350,6 +352,7 @@ public partial class TrackService : ApplicationService, ITrackService
TrackTime = input.TrackTime,
TrackTimeZone = input.TrackTimeZone,
OperationMan = userInfo.Data.UserName,
+ OperationManId= userInfo.Data.UserId,
IsVisibility = input.IsVisibility,
Source = input.Source,
Remarks = input.Remarks,
@@ -361,7 +364,8 @@ public partial class TrackService : ApplicationService, ITrackService
TrackPlaceNation = input.TrackPlaceNation,
TrackPlacePostcode = input.TrackPlacePostcode,
EstimatedDeliveryDate = input.EstimatedDeliveryDate,
- DestinationTimeZone = input.DestinationTimeZone
+ DestinationTimeZone = input.DestinationTimeZone,
+
};
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
}
diff --git a/src/SJZY.Track.Domain/Aggregates/OrderAggregate/OrderOperationRecordIndex.cs b/src/SJZY.Track.Domain/Aggregates/OrderAggregate/OrderOperationRecordIndex.cs
index df044ff6..c53ed8c5 100644
--- a/src/SJZY.Track.Domain/Aggregates/OrderAggregate/OrderOperationRecordIndex.cs
+++ b/src/SJZY.Track.Domain/Aggregates/OrderAggregate/OrderOperationRecordIndex.cs
@@ -43,7 +43,7 @@ public class OrderOperationRecordIndex : IdBaseIndex
///
/// 创建人姓名
///
- public string CreateUserString { get; set; }
+ public string CreateUserName { get; set; }
///
/// 创建时间