diff --git a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpsertTrackInput.cs b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpsertTrackInput.cs
index 8248c8e0..ce97f715 100644
--- a/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpsertTrackInput.cs
+++ b/src/SJZY.Track.Application.Contract/Dtos/ProvideServices/UpsertTrackInput.cs
@@ -4,6 +4,11 @@ namespace SJZY.Track.Application.Contract.Dtos.ProvideServices;
public class UpsertTrackInput : OrderNoInfo
{
+ ///
+ /// true新增,false更新
+ ///
+ public bool IsAdd { get; set; }
+
///
/// 轨迹内容代码
///
diff --git a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs
index f5d542ef..6c8fd767 100644
--- a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs
+++ b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs
@@ -105,7 +105,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
///
private async Task UpsertTrackAsync(TrackDetailsIndex? track, TrackUpsertEvent @event)
{
- if (track == default)
+ if (track == default && @event.IsAdd)
{
//todo:可以优化
// 根据轨迹code在订单模板内容中寻找匹配的
@@ -140,7 +140,8 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe
track.ZeroTrackTime = track.TrackTime.Subtract(TimeSpan.FromHours(track.TrackTimeZone));
}
- else
+
+ if (track != default && !@event.IsAdd)
{
track.TrackPlace = @event.TrackPlace;
track.TrackTime = @event.TrackTime!.Value;