Merge branch 'fix/pagination-container-items' into dev

This commit is contained in:
ngfrolov 2023-07-18 16:47:30 +05:00
commit 1d94a64e49
Signed by: ng.frolov
GPG Key ID: E99907A0357B29A7
5 changed files with 12 additions and 17 deletions

View File

@ -1,4 +1,5 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
namespace AsbCloudApp.Data namespace AsbCloudApp.Data
{ {
@ -13,16 +14,7 @@ namespace AsbCloudApp.Data
/// </summary> /// </summary>
public PaginationContainer() public PaginationContainer()
{ {
Items = new List<T>(4); Items = Enumerable.Empty<T>();
}
/// <summary>
/// конструктор
/// </summary>
/// <param name="capacity"></param>
public PaginationContainer(int capacity)
{
Items = new List<T>(capacity);
} }
/// <summary> /// <summary>
@ -43,6 +35,6 @@ namespace AsbCloudApp.Data
/// <summary> /// <summary>
/// Данные /// Данные
/// </summary> /// </summary>
public List<T> Items { get; set; } public IEnumerable<T> Items { get; set; }
} }
} }

View File

@ -111,7 +111,7 @@ namespace AsbCloudInfrastructure.Repository
.ToListAsync(token) .ToListAsync(token)
.ConfigureAwait(false); .ConfigureAwait(false);
result.Items = entities.Select(e => Convert(e)).ToList(); result.Items = entities.Select(e => Convert(e));
return result; return result;
} }

View File

@ -70,14 +70,14 @@ public class NotificationRepository : CrudCacheRepositoryBase<NotificationDto, N
if (result.Count < skip) if (result.Count < skip)
return result; return result;
result.Items = await query result.Items = await query
.SortBy(request.SortFields) .SortBy(request.SortFields)
.Skip(skip) .Skip(skip)
.Take(take) .Take(take)
.AsNoTracking() .AsNoTracking()
.Select(x => x.Adapt<NotificationDto>()) .Select(x => x.Adapt<NotificationDto>())
.ToListAsync(cancellationToken); .ToArrayAsync(cancellationToken);
return result; return result;
} }

View File

@ -165,7 +165,7 @@ namespace AsbCloudInfrastructure.Repository
.Skip(result.Skip) .Skip(result.Skip)
.Take(result.Take); .Take(result.Take);
result.Items = await query.ToListAsync(token); result.Items = await query.ToArrayAsync(token);
return result; return result;
} }

View File

@ -101,6 +101,8 @@ namespace AsbCloudInfrastructure.Services.SAUB
var eventsDict = events.ToDictionary(x=>x.IdEvent, x => x); var eventsDict = events.ToDictionary(x=>x.IdEvent, x => x);
var usersDict = users.ToDictionary(x => x.IdUser, x => x); var usersDict = users.ToDictionary(x => x.IdUser, x => x);
var messagesDtoList = new List<MessageDto>();
foreach (var message in messagesList) foreach (var message in messagesList)
{ {
var messageDto = new MessageDto var messageDto = new MessageDto
@ -126,10 +128,11 @@ namespace AsbCloudInfrastructure.Services.SAUB
messageDto.CategoryId = e.IdCategory; messageDto.CategoryId = e.IdCategory;
messageDto.Message = e.MakeMessageText(message); messageDto.Message = e.MakeMessageText(message);
} }
messagesDtoList.Add(messageDto);
result.Items.Add(messageDto);
} }
result.Items = result.Items.Concat(messagesDtoList);
return result; return result;
} }