diff --git a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs index d8e480ef..08969864 100644 --- a/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs +++ b/src/SJZY.Track.Application/EventHandlers/TrackUpsertEventHandler.cs @@ -71,6 +71,7 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe track = new TrackDetailsIndex { + IndexName = $"{GlobalConst.TrackIndex}-{DateTime.Now:yyyy.MM.dd}", OrderId = @event.OrderId, OrderNo = @event.OrderNo, OrderType = @event.OrderType, @@ -110,7 +111,8 @@ public class TrackUpsertEventHandler : ITransientDependency, ICapSubscribe TrackContent = track.TrackContent, TrackEnContent = track.TrackEnContent, TrackPlace = track.TrackPlace, - TrackTime = track.TrackTime + TrackTime = track.TrackTime, + TrackTimeZone = track.TraceTimeZone }); // 根据订单关联关系异步向下刷 diff --git a/src/SJZY.Track.Application/EventHandlers/UpdateOrderTrackEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/UpdateOrderTrackEventHandler.cs index dfbafc42..0901b2a0 100644 --- a/src/SJZY.Track.Application/EventHandlers/UpdateOrderTrackEventHandler.cs +++ b/src/SJZY.Track.Application/EventHandlers/UpdateOrderTrackEventHandler.cs @@ -33,7 +33,8 @@ public class UpdateOrderTrackEventHandler : ITransientDependency, ICapSubscribe await _orderRepository.UpdateColumnAsync(order, x => new { - x.IsCompleted, x.LatestTrackContent, x.LatestTrackEnContent, x.LatestTrackPlace, x.LatestTrackTime + x.IsCompleted, x.LatestTrackContent, x.LatestTrackEnContent, x.LatestTrackPlace, x.LatestTrackTime, + x.LatestTrackTimeZone }); } } \ No newline at end of file diff --git a/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs b/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs index b05e3f68..226be0ef 100644 --- a/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs +++ b/src/SJZY.Track.Application/Services/ProvideServices/OrderService.cs @@ -115,8 +115,8 @@ public class OrderService : ApplicationService private async Task UpdateOrderAsync(UpdateOrderInput input, OrderEntity order) { order = ObjectMapper.Map(input, order); - order.OrderTemplates = ObjectMapper.Map, List>(input.Templates); - order.OrderFlights = ObjectMapper.Map, List>(input.FlightInfos); + order.OrderTemplates = ObjectMapper.Map, List>(input.Templates!); + order.OrderFlights = ObjectMapper.Map, List>(input.FlightInfos!); await _orderRepository.UpdateOrderAsync(order); } } \ No newline at end of file diff --git a/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs b/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs index 0004343c..b885e11b 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/TrackDetailsIndex.cs @@ -16,6 +16,11 @@ public class TrackDetailsIndex : IdBaseIndex /// public string OrderNo { get; set; } = null!; + /// + /// 索引名称 + /// + public string IndexName { get; set; } = null!; + /// /// 订单类型(主数据枚举TrackOrderType) /// diff --git a/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs index 71779e5d..a0e6cead 100644 --- a/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs +++ b/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs @@ -1,8 +1,6 @@ using Nest; using SJZY.Expand.ABP.Core.Logger; -using SJZY.Expand.ABP.Core.PublicMethords; using SJZY.Expand.ElasticSearch.Services; -using SJZY.Track.Domain; using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate; using SJZY.Track.Domain.Dtos.TrackDetails; @@ -25,9 +23,9 @@ internal class TrackDetailsRepository : ElasticSearchContextAbstract f.IsDeleted, false) ) ); - - var res= r.Documents.FirstOrDefault(); - if (r.Hits.FirstOrDefault() != default && res != default) + + var res = r.Documents.FirstOrDefault(); + if (res != default && r.Hits.FirstOrDefault() != default) { res.Id = r.Hits.FirstOrDefault()!.Id; } @@ -37,26 +35,30 @@ internal class TrackDetailsRepository : ElasticSearchContextAbstract request + .Index(index.IndexName) + ); + + if (!r.IsValid) { - // 按天写入es - await Context.IndexAsync(index, request => request - .Index($"{GlobalConst.TrackIndex}-{DateTime.Now:yyyy.MM.dd}") - ); - } - else - { - await Context.UpdateAsync(index.Id, u => u - .Doc(index) - //.Refresh(Refresh.True) // 可选:立即刷新索引使更改立即可见 - ); + LogHelper.Error($"轨迹数据新增失败,原因:{r.DebugInformation}。"); } } - catch (Exception ex) + else { - LogHelper.Error($"轨迹数据新增/修改失败,原因:{ex.Message}。\n{index.ToJson()}"); + var r = await Context.UpdateAsync(index.Id, u => u + .Index(index.IndexName) + .Doc(index) + //.Refresh(Refresh.True) // 可选:立即刷新索引使更改立即可见 + ); + + if (!r.IsValid) + { + LogHelper.Error($"轨迹数据更新失败,原因:{r.DebugInformation}。"); + } } }