Skip to content

Commit

Permalink
Update 'CatNip.Domain' dependency to v0.9.1
Browse files Browse the repository at this point in the history
  • Loading branch information
dimitrietataru committed Feb 16, 2024
1 parent 73f4fd4 commit e67ef5d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 8 deletions.
2 changes: 1 addition & 1 deletion src/CatNip.Infrastructure/CatNip.Infrastructure.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

<ItemGroup>
<PackageReference Include="AutoMapper" Version="12.0.1" />
<PackageReference Include="CatNip.Domain" Version="0.9.0-beta" />
<PackageReference Include="CatNip.Domain" Version="0.9.1-beta" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="8.0.1" />
</ItemGroup>
Expand Down
20 changes: 15 additions & 5 deletions src/CatNip.Infrastructure/Repositories/AceRepository.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,22 +61,32 @@ public virtual async Task<bool> ExistsAsync(TFiltering filter, CancellationToken

protected virtual IQueryable<TEntity> BuildPaginationQuery(IQueryable<TEntity> query, IPaginationRequest paginationRequest)
{
int page = paginationRequest.Page ?? 1;
int size = paginationRequest.Size ?? int.MaxValue;
if (!paginationRequest.HasPaginationData())
{
return query;
}

int page = paginationRequest.Page!.Value;
int size = paginationRequest.Size!.Value;

return query.Skip((page - 1) * size).Take(size);
}

protected virtual IQueryable<TEntity> BuildSortingQuery(IQueryable<TEntity> query, ISortingRequest sortingRequest)
{
string sortBy = sortingRequest.SortBy ?? "id";
var sortDirection = sortingRequest.SortDirection ?? SortDirection.Ascending;
if (!sortingRequest.HasSortingData())
{
return BuildDefaultSortingQuery(query);
}

string sortBy = sortingRequest.SortBy!;
var sortDirection = sortingRequest.SortDirection!.Value;

query = (sortBy, sortDirection) switch
{
("id", SortDirection.Ascending) => query.OrderBy(_ => _.Id),
("id", SortDirection.Descending) => query.OrderByDescending(_ => _.Id),
_ => query
_ => BuildDefaultSortingQuery(query)
};

return query;
Expand Down
4 changes: 2 additions & 2 deletions src/CatNip.Infrastructure/Repositories/CrudRepository.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ protected CrudRepository(TDbContext dbContext, IMapper mapper)
public virtual async Task<IEnumerable<TModel>> GetAllAsync(CancellationToken cancellation = default)
{
var baseQuery = GetQueriable();
var sortQuery = BuildDefaultSortQuery(baseQuery);
var sortQuery = BuildDefaultSortingQuery(baseQuery);

var result = await sortQuery
.AsNoTracking()
Expand Down Expand Up @@ -102,7 +102,7 @@ public virtual async Task DeleteAsync(TId id, CancellationToken cancellation = d
await DeleteAsync(entity, cancellation);
}

protected virtual IQueryable<TEntity> BuildDefaultSortQuery(IQueryable<TEntity> query)
protected virtual IQueryable<TEntity> BuildDefaultSortingQuery(IQueryable<TEntity> query)
{
return query.OrderBy(e => e.Id);
}
Expand Down

0 comments on commit e67ef5d

Please sign in to comment.