public GetTableReservationsByCustomerResponse GetTableReservationsByCustomer(GetTableReservationsByCustomerRequest request)
        {
            var response = new GetTableReservationsByCustomerResponse
            {
                IsSuccessful = false,
                Message      = ""
            };

            try
            {
                var customer = _context.Customers
                               .Where(x => x.Id == request.CustomerId)
                               .FirstOrDefault();

                if (customer != null)
                {
                    var reservations = _context.TableReservations
                                       .Include(x => x.Customer)
                                       .Where(x => x.Customer.Id == customer.Id)
                                       .OrderByDescending(x => x.SubmissionTime)
                                       .ToList();

                    response.Reservations = reservations;
                    response.Message      = $"Successfully retrieved reservations made by customer: {customer.FirstName} {customer.LastName}.";
                    response.IsSuccessful = true;
                }
            }
            catch (Exception ex)
            {
                response.Message = ex.ToString();
            }

            return(response);
        }
예제 #2
0
        public IActionResult GetCustomerReservations([FromRoute] int id)
        {
            var request = new GetTableReservationsByCustomerRequest
            {
                CustomerId = id
            };

            var response = _tableService.GetTableReservationsByCustomer(request);

            if (response.IsSuccessful)
            {
                return(Ok(response.Reservations));
            }
            else
            {
                return(BadRequest());
            }
        }