track/src/SJZY.Track.Domain/Aggregates/TrackDetailsAggregate/ITrackDetailsRepository.cs

32 lines
1.1 KiB
C#

using SJZY.Track.Domain.Dtos.TrackDetails;
namespace SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
public interface ITrackDetailsRepository
{
Task<TrackDetailsIndex?> GetFirstOrDefaultAsync(int orderId, string trackCode);
Task UpsertAsync(TrackDetailsIndex index);
Task<List<TrackDetailsIndex>> GetListAsync(int orderType, List<string> orderNos);
Task<List<TrackDetailsIndex>> GetListAsync(int orderType, List<string> orderNos, string trackCode);
Task<(List<TrackDetailsIndex> list, long total)> GetListAsync(TrackDetailsQueryInput input);
Task<List<TrackDetailsIndex>> GetListAsync(int orderId);
/// <summary>
/// 删除轨迹
/// </summary>
/// <param name="orderId"></param>
/// <param name="trackCodes"></param>
/// <returns></returns>
Task<bool> DeleteTrackAsync(int orderId, List<string> trackCodes);
/// <summary>
/// 获取最近一条发生的轨迹
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
Task<TrackDetailsIndex?> GetLatestAsync(int orderId);
}