diff --git a/AsbCloudInfrastructure/Repository/ChangeLogRepositoryAbstract.cs b/AsbCloudInfrastructure/Repository/ChangeLogRepositoryAbstract.cs index 84506a21..64208a8e 100644 --- a/AsbCloudInfrastructure/Repository/ChangeLogRepositoryAbstract.cs +++ b/AsbCloudInfrastructure/Repository/ChangeLogRepositoryAbstract.cs @@ -193,7 +193,8 @@ public abstract class ChangeLogRepositoryAbstract : ICh dates = dates.Select(date => date.ToOffset(offset)); var datesOnly = dates .Select(d => new DateOnly(d.Year, d.Month, d.Day)) - .Distinct(); + .Distinct() + .OrderBy(d => d); return datesOnly; } @@ -214,7 +215,11 @@ public abstract class ChangeLogRepositoryAbstract : ICh query = createdQuery.Union(editedQuery); } - var entities = await query.ToListAsync(token); + var entities = await query + .OrderBy(e => e.Creation) + .ThenBy(e => e.Obsolete) + .ThenBy(e => e.Id) + .ToListAsync(token); var dtos = entities.Select(e => Convert(e, offset)); return dtos; @@ -223,7 +228,11 @@ public abstract class ChangeLogRepositoryAbstract : ICh public async Task> Get(TRequest request, CancellationToken token) { var query = BuildQuery(request); - var entities = await query.ToArrayAsync(token); + var entities = await query + .OrderBy(e => e.Creation) + .ThenBy(e => e.Obsolete) + .ThenBy(e => e.Id) + .ToArrayAsync(token); TimeSpan offset = GetTimezoneOffset(request); var dtos = entities.Select(e => Convert(e, offset));