Ignore:
Timestamp:
08/24/22 17:11:52 (2 years ago)
Author:
Danilo <danilo.najkov@…>
Branches:
master
Children:
d86edb7
Parents:
a569b7c
Message:

reviews pagination

Location:
resTools_backend/backend/Services
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • resTools_backend/backend/Services/RestaurantService.cs

    ra569b7c r63f5ced  
    4747                        Price = x.Price
    4848                    }).ToList(),
    49                     Reviews = x.Reviews.OrderByDescending(x => x.CreatedAt).Select(x => new ReviewResponse()
     49                    Reviews = x.Reviews.Select(x => new ReviewResponse()
    5050                    {
     51                        CreatedAt = x.CreatedAt,
     52                        Description = x.Description,
    5153                        Id = x.Id,
     54                        Stars = x.Stars,
    5255                        Title = x.Title,
    53                         Description = x.Description,
    54                         Stars = x.Stars,
    55                         CreatedAt = x.CreatedAt,
    5656                        Username = x.User == null ? "Anonymous" : x.User.Email
    5757                    }).ToList(),
  • resTools_backend/backend/Services/ReviewService.cs

    ra569b7c r63f5ced  
    99    {
    1010        public Task AddReview(CreateReviewRequest review, int userId);
     11        public Task<List<ReviewResponse>> GetReviews(int page, int pageSize);
     12        public Task<int> GetCount();
    1113    }
    1214    public class ReviewService : IReviewService
     
    3840            await _context.SaveChangesAsync();
    3941        }
     42
     43        public async Task<int> GetCount()
     44        {
     45            return await _context.Reviews.CountAsync();
     46        }
     47
     48        public async Task<List<ReviewResponse>> GetReviews(int page, int pageSize)
     49        {
     50            return await _context.Reviews
     51                .Include(x => x.User)
     52                .OrderByDescending(x => x.CreatedAt)
     53                .Skip(page * pageSize)
     54                .Take(pageSize)
     55                .Select(x => new ReviewResponse()
     56                {
     57                    CreatedAt = x.CreatedAt,
     58                    Description = x.Description,
     59                    Id = x.Id,
     60                    Stars = x.Stars,
     61                    Title = x.Title,
     62                    Username = x.User == null ? "Anonymous" : x.User.Email
     63                })
     64                .ToListAsync();
     65        }
    4066    }
    4167}
Note: See TracChangeset for help on using the changeset viewer.