Ejemplo n.º 1
0
        protected virtual PagedQueryRequest <TRequest, TResponse> CreateQuery <TRequest, TResponse>(TRequest request, PagerBindModel pagerBindModel)
        {
            var user = HttpContext.User;
            var pagedQueryRequest = new PagedQueryRequest <TRequest, TResponse>(request, user, pagerBindModel.Page, pagerBindModel.PageSize);

            return(pagedQueryRequest);
        }
Ejemplo n.º 2
0
        protected override async Task <PagedResponse <UserProfileDto> > Handle(PagedQueryRequest <GetProfilesQuery, UserProfileDto> request)
        {
            const string query = "SELECT " +
                                 "Id, UserName, Email, Created, Modified, LastLogged " +
                                 "FROM dbo.Users " +
                                 "Order By Id " +
                                 "OFFSET @Offset ROWS " +
                                 "FETCH NEXT @Next ROWS ONLY " +
                                 "SELECT COUNT(*) from dbo.Users";

            await using var conn = DbConnectionFactory.Create();
            using var multiQuery = await conn.QueryMultipleAsync(query, request.Pager);

            var results = await multiQuery.ReadAsync <UserProfileDto>();

            var totalCount = await multiQuery.ReadFirstAsync <int>();

            return(new PagedResponse <UserProfileDto>(results, request.Pager, totalCount));
        }
Ejemplo n.º 3
0
 public async Task <PagedQueryResult <ReturnEntity> > GetAllAsync <ReturnEntity, TOrderBy>(Expression <Func <TEntity, bool> > filter,
                                                                                           Expression <Func <TEntity, TOrderBy> > orderBy, PagedQueryRequest pagedQueryRequest)
 {
     return(await this.Entity.Where(filter).OrderByDescending(orderBy).AsQueryable()
            .ToPagedResult <TEntity, ReturnEntity>(pagedQueryRequest.PageNumber, pagedQueryRequest.PageSize));
 }
Ejemplo n.º 4
0
        public async Task <PagedQueryResult <Customer> > GetCustomersAwaitingConfirmation(PagedQueryRequest request)
        {
            var confirmedCustomers = await GetAllAsync <Customer, DateTime>(e => e.CustomerStatus == Enumerations.CustomerStatus.CONFIRMED, x => x.DateCreated, request);

            return(confirmedCustomers);
        }
Ejemplo n.º 5
0
        public async Task <PagedQueryResult <Customer> > GetRejectedCustomers(PagedQueryRequest request)
        {
            var confirmedCustomers = await GetAllAsync <Customer, DateTime>(e => e.CustomerStatus == Enumerations.CustomerStatus.REJECTED, x => x.DateCreated, request);

            return(confirmedCustomers);
        }