private static void AddPaginationToQueryBuilder(IDapperQuery dapperQuery, IPagedQuery pagedQuery) { var sqlBuilder = dapperQuery.SqlBuilder; var config = pagedQuery.PagingConfiguration !; var offset = config.ItemsPerPage * (config.Page - 1); sqlBuilder.Offset("@Paging_Offset", new { Paging_Offset = offset }); sqlBuilder.FetchNext("@Paging_FetchNext", new { Paging_FetchNext = config.ItemsPerPage }); }
private static void AddFiltersToQueryBuilder(IDapperQuery <TResult> dapperQuery, IFilteredQuery <TResult> filteredQuery) { var sqlBuilder = dapperQuery.SqlBuilder; foreach (var filter in filteredQuery.FilteringConfiguration !.Filters !) { var args = filter.GetArguments <TResult>(); var filterSql = GetFilterSql(filter); AddSqlBuilderWhereClause(filteredQuery, sqlBuilder, filterSql, args); } }
private static void AddSortingToSqlBuilder(IDapperQuery <TResult> dapperQuery, ISortedQuery <TResult> sortedQuery) { var sqlBuilder = dapperQuery.SqlBuilder; foreach (var configuration in sortedQuery.SortingConfiguration !) { var sortDirection = configuration.GetSortDirection(); var fieldName = configuration.GetFieldName <TResult>() !; sqlBuilder.OrderBy($"{fieldName} {sortDirection}"); } }
public OrderController(IMediator mediator, IDapperQuery <Core.Domain.Order> orderQueries) { _mediator = mediator; _orderQueries = orderQueries; }
protected virtual void ConfigureQuery(IDapperQuery query) { query.SqlBuilder.Select("*"); }
public LeadRepository(IDapperQuery dapperQuery) { _dapperQuery = dapperQuery; }