fix(dal): в UnitFilter добавлено необязательное ограничение на количество строк в выдаваемом списке ЭК
This commit is contained in:
@@ -78,6 +78,9 @@ namespace PARR.DAL.DomainServices.Implementations
|
|||||||
|
|
||||||
foreach (var unitFilter in job.UnitFilters)
|
foreach (var unitFilter in job.UnitFilters)
|
||||||
{
|
{
|
||||||
|
if (takeCount.HasValue && result.Count() > takeCount.Value)
|
||||||
|
break;
|
||||||
|
|
||||||
var query = baseQuery.Where(t => EF.Functions.ILike(t.Name, unitFilter.UnitFilter));
|
var query = baseQuery.Where(t => EF.Functions.ILike(t.Name, unitFilter.UnitFilter));
|
||||||
|
|
||||||
foreach (var fieldFilter in unitFilter.FieldFilters)
|
foreach (var fieldFilter in unitFilter.FieldFilters)
|
||||||
@@ -113,13 +116,13 @@ namespace PARR.DAL.DomainServices.Implementations
|
|||||||
query = query.Where(t => t.ChildUnits.Count() >= job.MinValueRelationships && t.ChildUnits.Count() <= job.MaxValueRelationships);
|
query = query.Where(t => t.ChildUnits.Count() >= job.MinValueRelationships && t.ChildUnits.Count() <= job.MaxValueRelationships);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (takeCount.HasValue)
|
|
||||||
query = query.Take(takeCount.Value);
|
|
||||||
|
|
||||||
var newUnits = await query.Select(t => t.Id).ToListAsync();
|
var newUnits = await query.Select(t => t.Id).ToListAsync();
|
||||||
result.AddRange(newUnits);
|
result.AddRange(newUnits);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (takeCount.HasValue && result.Count() > takeCount.Value)
|
||||||
|
result = result.Take(takeCount.Value).ToList();
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user