protected override IQuery <Payment> ApplyWhereClause(IQuery <Payment> query, PaymentFilterDto filter) { return(filter.AuctionId.Equals(Guid.Empty) ? query : query.Where(new SimplePredicate(nameof(Payment.AuctionId), ValueComparingOperator.Equal, filter.AuctionId))); }
public IActionResult Get([FromQuery] PagingDto pagingDto, [FromQuery] PaymentFilterDto Filter) { var paymentRquest = this._context.PaymentRequests .Include(c => c.Client) .Include(c => c.PaymentWay) .AsQueryable(); if (Filter.Id != null) { paymentRquest = paymentRquest.Where(c => c.Id.ToString().StartsWith(Filter.Id.ToString())); } if (Filter.ClientId != null) { paymentRquest = paymentRquest.Where(c => c.ClientId == Filter.ClientId); } if (Filter.PaymentWayId != null) { paymentRquest = paymentRquest.Where(c => c.PaymentWayId == Filter.PaymentWayId); } if (Filter.Accept != null) { paymentRquest = paymentRquest.Where(c => c.Accept == Filter.Accept); } if (Filter.CreateDate != null) { paymentRquest = paymentRquest.Where(c => c.CreateDate == Filter.CreateDate); } var total = paymentRquest.Count(); var list = paymentRquest.Skip(pagingDto.Page - 1).Take(pagingDto.RowCount); return(Ok(new { total, data = _mapper.Map <PayemntRquestDto[]>(list) })); }