Merge branch 'S01-轨迹中台' into test
This commit is contained in:
commit
fa5668a991
@ -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
|
||||
});
|
||||
|
||||
// 根据订单关联关系异步向下刷
|
||||
|
||||
@ -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
|
||||
});
|
||||
}
|
||||
}
|
||||
@ -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<OrderTemplateInfo>, List<OrderTemplateEntity>>(input.Templates);
|
||||
order.OrderFlights = ObjectMapper.Map<List<OrderFlightInfo>, List<OrderFlightEntity>>(input.FlightInfos);
|
||||
order.OrderTemplates = ObjectMapper.Map<List<OrderTemplateInfo>, List<OrderTemplateEntity>>(input.Templates!);
|
||||
order.OrderFlights = ObjectMapper.Map<List<OrderFlightInfo>, List<OrderFlightEntity>>(input.FlightInfos!);
|
||||
await _orderRepository.UpdateOrderAsync(order);
|
||||
}
|
||||
}
|
||||
@ -16,6 +16,11 @@ public class TrackDetailsIndex : IdBaseIndex
|
||||
/// </summary>
|
||||
public string OrderNo { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 索引名称
|
||||
/// </summary>
|
||||
public string IndexName { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 订单类型(主数据枚举TrackOrderType)
|
||||
/// </summary>
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -27,7 +25,7 @@ internal class TrackDetailsRepository : ElasticSearchContextAbstract<TrackDetail
|
||||
);
|
||||
|
||||
var res = r.Documents.FirstOrDefault();
|
||||
if (r.Hits.FirstOrDefault() != default && res != default)
|
||||
if (res != default && r.Hits.FirstOrDefault() != default)
|
||||
{
|
||||
res.Id = r.Hits.FirstOrDefault()!.Id;
|
||||
}
|
||||
@ -36,27 +34,31 @@ internal class TrackDetailsRepository : ElasticSearchContextAbstract<TrackDetail
|
||||
}
|
||||
|
||||
public async Task UpsertAsync(TrackDetailsIndex index)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (index.Id.IsNullOrWhiteSpace())
|
||||
{
|
||||
// 按天写入es
|
||||
await Context.IndexAsync(index, request => request
|
||||
.Index($"{GlobalConst.TrackIndex}-{DateTime.Now:yyyy.MM.dd}")
|
||||
var r = await Context.IndexAsync(index, request => request
|
||||
.Index(index.IndexName)
|
||||
);
|
||||
|
||||
if (!r.IsValid)
|
||||
{
|
||||
LogHelper.Error($"轨迹数据新增失败,原因:{r.DebugInformation}。");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
await Context.UpdateAsync<TrackDetailsIndex>(index.Id, u => u
|
||||
var r = await Context.UpdateAsync<TrackDetailsIndex>(index.Id, u => u
|
||||
.Index(index.IndexName)
|
||||
.Doc(index)
|
||||
//.Refresh(Refresh.True) // 可选:立即刷新索引使更改立即可见
|
||||
);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
if (!r.IsValid)
|
||||
{
|
||||
LogHelper.Error($"轨迹数据新增/修改失败,原因:{ex.Message}。\n{index.ToJson()}");
|
||||
LogHelper.Error($"轨迹数据更新失败,原因:{r.DebugInformation}。");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user