public ActionResult <PaginationResult <Ticket> > GetTickets(Guid eventId, [FromQuery] FopQuery query, bool?isDelivered, bool?validated, Guid?ticketTypeId, PaymentStatus?paymentStatus) { var tickets = _context.Tickets .AsNoTracking() .Include(t => t.TicketType) .Where(e => e.EventId == eventId); if (isDelivered != null) { tickets = tickets.Where(e => e.IsDelivered == isDelivered.Value); } if (validated != null) { tickets = tickets.Where(e => e.Validated == validated.Value); } if (ticketTypeId != null) { tickets = tickets.Where(e => e.TicketTypeId == ticketTypeId.Value); } if (paymentStatus != null) { tickets = tickets.Where(e => e.PaymentStatus == paymentStatus); } tickets = tickets.OrderByDescending(x => x.CreatedAt); return(_mapper .ProjectTo <Ticket>(tickets) .ApplyQuery(query)); }
public async Task <IActionResult> Index([FromQuery] FopQuery request) { var fopRequest = FopExpressionBuilder <Student> .Build(request.Filter, request.Order, request.PageNumber, request.PageSize); var(filteredStudents, totalCount) = await _studentRepository.RetrieveStudents(fopRequest); return(Ok(filteredStudents)); }
public async Task <IActionResult> GetListProducts([FromQuery] FopQuery request) { try { var fopRequest = FopExpressionBuilder <ProductForList> .Build(request.Filter, request.Order, request.PageNumber, request.PageSize); var(productToReturn, totalCount) = await _productServices.GetListProduct(fopRequest); var response = new PagedResult <IEnumerable <ProductForList> >((productToReturn), totalCount, request.PageNumber, request.PageSize);; return(Ok(response)); } catch (Exception ex) { return(new BadRequestObjectResult(new { Message = ex.Message.ToString() })); } }
public async Task <IActionResult> GetBlogsByCateId(int blogCategoryId, [FromQuery] FopQuery request) { try { var fopRequest = FopExpressionBuilder <Cl_BlogForList> .Build(request.Filter, request.Order, request.PageNumber, request.PageSize); var(blogsReturn, totalCount) = await _blogServices.GetBlogsByCateId(blogCategoryId, fopRequest); if (blogsReturn.Count() == 0) { return(new BadRequestObjectResult(new { Message = "Tin tức hiện đang trống. Chúng tôi sẽ cập nhật trong thời gian sớm nhất" })); } var response = new PagedResult <IEnumerable <Cl_BlogForList> >((blogsReturn), totalCount, request.PageNumber, request.PageSize);; return(Ok(response)); } catch (Exception ex) { return(new BadRequestObjectResult(new { Message = ex.Message.ToString() })); } }
public async Task <IActionResult> GetOrdersByUserId(string userId, [FromQuery] FopQuery request) { try { var fopRequest = FopExpressionBuilder <OrderForList> .Build(request.Filter, request.Order, request.PageNumber, request.PageSize); var(ordersToReturn, totalCount) = await _orderServices.GetOrdersByUserId(userId, fopRequest); if (ordersToReturn.Count() == 0) { return(new BadRequestObjectResult(new { Message = "Không tìm thấy đơn hàng nào" })); } var response = new PagedResult <IEnumerable <OrderForList> >((ordersToReturn), totalCount, request.PageNumber, request.PageSize);; return(Ok(response)); } catch (Exception ex) { return(new BadRequestObjectResult(new { Message = ex.Message.ToString() })); } }
public async Task <IActionResult> GetBlogs(int blogCategoryId, [FromQuery] FopQuery request) { try { var fopRequest = FopExpressionBuilder <BlogForList> .Build(request.Filter, request.Order, request.PageNumber, request.PageSize); var(blogsByCateId, totalCount) = await _blogServices.GetBlogs(blogCategoryId, fopRequest); if (blogsByCateId == null) { return(new BadRequestObjectResult(new { Message = "Không tìm tháy tin tức nào!" })); } var response = new PagedResult <IEnumerable <BlogForList> >((blogsByCateId), totalCount, request.PageNumber, request.PageSize);; return(Ok(response)); } catch (Exception ex) { return(new BadRequestObjectResult(new { Message = ex.Message.ToString() })); } }