refactor:优化轨迹更新后更新订单主表事件处理器逻辑

This commit is contained in:
hardstylewyl 2025-01-02 09:19:27 +08:00
parent cc91079011
commit 923d7a2e91

View File

@ -26,8 +26,6 @@ public class TrackChangeAfterUpdateOrderEventHandler : ITransientDependency, ICa
return; return;
} }
//指示是否需要更新【预计签收时间】【签收地时区】
var isNeedUpdate = false;
var updateOrders = new List<OrderEntity>(); var updateOrders = new List<OrderEntity>();
foreach (var order in orders) foreach (var order in orders)
{ {
@ -62,37 +60,23 @@ public class TrackChangeAfterUpdateOrderEventHandler : ITransientDependency, ICa
{ {
order.EstimatedDeliveryDate = @event.EstimatedDeliveryDate.Value; order.EstimatedDeliveryDate = @event.EstimatedDeliveryDate.Value;
order.DestinationTimeZone = @event.DestinationTimeZone.Value; order.DestinationTimeZone = @event.DestinationTimeZone.Value;
isNeedUpdate = true;
} }
updateOrders.Add(order); updateOrders.Add(order);
} }
await _orderRepository.UpdateRangeAsync(updateOrders, await _orderRepository.UpdateRangeAsync(updateOrders, x => new
isNeedUpdate {
? x => new x.IsCompleted,
{ x.LatestTrackContent,
x.IsCompleted, x.LatestTrackEnContent,
x.LatestTrackContent, x.LatestTrackPlace,
x.LatestTrackEnContent, x.LatestTrackTime,
x.LatestTrackPlace, x.LatestTrackTimeZone,
x.LatestTrackTime, x.DeficiencyTag,
x.LatestTrackTimeZone, x.EstimatedDeliveryDate,
x.DeficiencyTag, x.DestinationTimeZone
//当标识指示需要更新时添加更新列 }
x.EstimatedDeliveryDate,
x.DestinationTimeZone
}
: x => new
{
x.IsCompleted,
x.LatestTrackContent,
x.LatestTrackEnContent,
x.LatestTrackPlace,
x.LatestTrackTime,
x.LatestTrackTimeZone,
x.DeficiencyTag,
}
); );
} }
@ -109,6 +93,8 @@ public class TrackChangeAfterUpdateOrderEventHandler : ITransientDependency, ICa
LatestTrackPlace = order.LatestTrackPlace, LatestTrackPlace = order.LatestTrackPlace,
LatestTrackTime = order.LatestTrackTime, LatestTrackTime = order.LatestTrackTime,
LatestTrackTimeZone = order.LatestTrackTimeZone, LatestTrackTimeZone = order.LatestTrackTimeZone,
DestinationTimeZone = order.DestinationTimeZone,
EstimatedDeliveryDate = order.EstimatedDeliveryDate,
}); });
} }
} }