From 36706ae62cbed9bfa8c9385e0a2687c77b293c84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=86=9B?= <2357729423@qq.com> Date: Mon, 18 Mar 2024 16:15:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E6=97=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EventHandlers/TrackRefreshEventHandler.cs | 2 +- .../Repositories/TrackDetailsRepository.cs | 25 +++++++++++++++++-- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs index d732258d..9d0e410d 100644 --- a/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs +++ b/src/SJZY.Track.Application/EventHandlers/TrackRefreshEventHandler.cs @@ -29,7 +29,7 @@ public class TrackRefreshEventHandler : ITransientDependency, ICapSubscribe _trackPullCacheService = trackPullCacheService; } - [CapSubscribe(GlobalConst.TrackRefreshSubscribe)] + [CapSubscribe(GlobalConst.TrackRefreshSubscribe, Group = GlobalConst.TrackRefreshSubscribe)] public async Task ConsumerAsync(InterfaceRelayForwardReplayEvent @event) { var attach = JsonConvert.DeserializeObject(@event.Attach); diff --git a/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs index 132341a1..f50d7ebb 100644 --- a/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs +++ b/src/SJZY.Track.Repository/Repositories/TrackDetailsRepository.cs @@ -87,9 +87,30 @@ internal class TrackDetailsRepository : ElasticSearchContextAbstract> GetListAsync(int orderType, List orderNos, string trackCode) + public async Task> GetListAsync(int orderType, List orderNos, string trackCode) { - throw new NotImplementedException(); + if (orderNos.Count < 1) return new List(); + + var data = await Context.SearchAsync(x => x + .Source(s => s.Includes(fd => fd + .Field(f => f.OrderNo) + .Field(f => f.TrackStatus) + .Field(f => f.TrackCode) + .Field(f => f.TrackContent) + .Field(f => f.TrackPlace) + .Field(f => f.TrackTime) + .Field(f => f.TrackTimeZone) + )) + .Query(q => + q.Terms(t => t + .Field(f => f.OrderNo.Suffix("keyword")) + .Terms(orderNos)) + && q.Term(f => f.OrderType, orderType) + && q.Term(f => f.TrackCode.Suffix("keyword"), trackCode) + ) + ); + + return data.Documents.ToList(); } public async Task> GetListAsync(int orderId)