InfiniteScroll and Layer list filter

This commit is contained in:
Michał Zieliński
2023-10-20 13:56:40 +02:00
parent a358dc75cf
commit a96ca6a795
9 changed files with 227 additions and 201 deletions

View File

@@ -37,24 +37,24 @@ namespace WebAPI.Controllers
}
[HttpGet]
public IActionResult GetAll(int start, int limit, [FromQuery] string[] codes)
public IActionResult GetAll(int start, int limit, string? name, LayerType? type)
{
try
{
if (codes != null && codes.Length > 0)
IQueryable<Layer> response = db.Layers.Where(x => !x.IsDeleted);
if (name != null)
{
response = response.Where(x => x.Name.Contains(name));
}
if (type != null)
{
response = response.Where(x => x.Type == type);
}
return Ok(db.Layers.Where(x => !x.IsDeleted)
.Where(x => codes.Select(Int32.Parse).ToList().Contains(x.Number))
.OrderByDescending(x => x.Number)
.Skip(start).Take(limit).ToList());
}
else
{
return Ok(db.Layers.Where(x => !x.IsDeleted)
.OrderByDescending(x => x.Number)
.Skip(start).Take(limit).ToList());
}
return Ok(response
.OrderByDescending(x => x.Number)
.Skip(start).Take(limit).ToList());
}
catch (Exception e)
{