track/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/ITrackDetailsEsRepository.cs
hardstylewyl a7e303a77a add-interface:增加轨迹查询提供接口(返回原始轨迹)QueryV2Async
update:更新轨迹删除广播方式,减少不必要的查库

update:添加轨迹查询的创建时间的二级排序(原只按轨迹发生时间)
2024-12-31 11:58:47 +08:00

39 lines
1.5 KiB
C#

using SJZY.Expand.ElasticSearch.Services;
using SJZY.Track.Domain.Dtos.TrackContents;
using SJZY.Track.Domain.Enums;
namespace SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
public interface ITrackDetailsEsRepository : IElasticsearchClientService<TrackDetailsIndex>
{
Task<List<TrackDetailsIndex>> GetListAsync(int[] orderIds, string trackCode, bool forUpsert = false);
Task<List<TrackDetailsIndex>> GetLatestListAsync(int[] eventOrderIds, List<string> trackCodes);
Task<List<TrackDetailsIndex>> GetListAsync(int subSystemId, int orderType, List<string> orderNos, List<string>? trackCodes = null);
Task<bool> AnyAsync(int orderId, string originTrackDataHash);
Task UpdateAsync(TrackDetailsIndex index);
Task UpdateManyAsync(List<TrackDetailsIndex> indexes, int maxRetries = 3);
Task BulkUpdateAsync(List<TrackDetailsIndex> indexes, int maxRetries = 3);
Task AddManyAsync(List<TrackDetailsIndex> index);
Task AddAsync(TrackDetailsIndex track);
Task<List<TrackDetailsIndex>> GetListAsync(int orderId);
Task<List<TrackDetailsIndex>> GetListAsync(int[] orderIds, List<string>? trackCodes = null, TrackSourceEnum? source = null);
Task<List<int>> DeleteTrackAsync(int[] orderIds, List<string> trackCodes);
Task DeleteTrackByIdAsync(string id, string indexName);
Task<List<TrackDetailsIndex>> GetDataByIds(string[] ids);
Task<TrackDetailsIndex> GetDetailAsync(string orderNo, string trackCode, int orderType, int subSystemId, DateTime trackTime);
}