public IActionResult Get([FromQuery] PagingDto pagingDto, [FromQuery] AccountFilterDto accountFilterDto) { var repiq = this._context.Receipts.AsQueryable(); if (accountFilterDto.ClientId != null) { repiq = repiq.Where(c => c.ClientId == accountFilterDto.ClientId); } if (accountFilterDto.IsPay != null) { repiq = repiq.Where(c => c.IsPay == (bool)accountFilterDto.IsPay); } if (accountFilterDto.Date != null) { repiq = repiq.Where(c => c.Date == accountFilterDto.Date); } var totalRreq = repiq.Count(); var replist = repiq.Skip((pagingDto.Page - 1) * pagingDto.RowCount).Take(pagingDto.RowCount) .Include(c => c.Client) .Include(c => c.ClientPayment) .ToList(); var data = _mapper.Map <ReceiptDto[]>(replist); return(Ok(new { data, total = totalRreq })); }
private static SimplePredicate FilterId(AccountFilterDto filter) { if (filter.Id.Equals(Guid.Empty)) { return(null); } return(new SimplePredicate(nameof(Account.Id), ValueComparingOperator.Equal, filter.Id)); }
private static SimplePredicate FilterEmail(AccountFilterDto filter) { if (string.IsNullOrWhiteSpace(filter.Email)) { return(null); } return(new SimplePredicate(nameof(Account.Email), ValueComparingOperator.Equal, filter.Email)); }
private IPredicate FilterUsername(AccountFilterDto filter) { return(string.IsNullOrWhiteSpace(filter.Username) ? null : new SimplePredicate(nameof(Account.Username), ValueComparingOperator.Equal, filter.Username)); }
public async Task <ActionResult> List(int page = 1) { var filter = new AccountFilterDto { PageSize = PageSize, RequestedPageNumber = page }; var result = await AccountFacade.ListAccountsAsync(filter); // Paging ViewBag.RequestedPageNumber = result.RequestedPageNumber; ViewBag.PageCount = (int)Math.Ceiling((double)result.TotalItemsCount / (double)PageSize); // Paging END return(View("List", result.Items)); }
protected override IQuery <Account> ApplyWhereClause(IQuery <Account> query, AccountFilterDto filter) { var predicates = new List <IPredicate>(); AddIfDefined(FilterUsername(filter), predicates); AddIfDefined(FilterEmail(filter), predicates); if (predicates.Count == 0) { return(query); } if (predicates.Count == 1) { return(query.Where(predicates.First())); } var wherePredicate = new CompositePredicate(predicates); return(query.Where(wherePredicate)); }
public async Task <QueryResultDto <AccountDto, AccountFilterDto> > ListAccountsAsync(AccountFilterDto filter) { using (UnitOfWorkProvider.Create()) { return(await _accountService.ListAccountsAsync(filter)); } }