public ActionResult ShowOfferById(int offerIndex)
        {
            OfferBll  offerBll  = _sharingService.GetOfferById(offerIndex);
            OfferView offerView = new OfferView()
            {
                DailyCost   = offerBll.DailyCost,
                Model       = offerBll.Model,
                Description = offerBll.Description,
                Id          = offerBll.Id,
                Image       = offerBll.Image,
                Type        = offerBll.Type,
                Year        = offerBll.Year
            };

            return(View(offerView));
        }
        public ActionResult CustomerDetails(ParametersView parameters)
        {
            ParametersBll parametersBll = new ParametersBll
            {
                PageSize = PagerParameters.PageSize,
                Page     = parameters.Page
            };

            CustomerBll customerBll = _sharingService.GetCustomerById(parameters.CustomerId);

            CustomerDetailsView customerDetails = new CustomerDetailsView
            {
                Id        = customerBll.Id,
                FirstName = customerBll.FirstName,
                Surname   = customerBll.Surname,
                Email     = customerBll.Email
            };

            foreach (RentBll rent in _sharingService.GetRentsByEmail(customerBll.Email))
            {
                customerDetails.Rents.Add(new RentView
                {
                    OfferId       = rent.OfferBll.Id,
                    Cost          = rent.Cost,
                    Customer      = customerBll,
                    StartDate     = rent.StartDate,
                    EndDate       = rent.EndDate,
                    InsuranceCase = rent.InsuranceCase
                });
            }

            foreach (var rent in customerDetails.Rents)
            {
                OfferBll  offerBll  = _sharingService.GetOfferById(rent.OfferId);
                OfferView offerView = new OfferView
                {
                    Id          = offerBll.Id,
                    Model       = offerBll.Model,
                    Description = offerBll.Description,
                    Year        = offerBll.Year,
                    Image       = offerBll.Image,
                    Type        = offerBll.Type,
                    DailyCost   = offerBll.DailyCost,
                    IsTaken     = _sharingService.IsOfferTaken(offerBll.Id)
                };

                customerDetails.Offers.Add(offerView);
            }

            int            totalItems = customerDetails.Offers.Count;
            PagingInfoView pagingInfo = new PagingInfoView
            {
                CurrentPage  = parameters.Page,
                ItemsPerPage = PagerParameters.PageSize,
                TotalItems   = totalItems
            };

            if (customerDetails.Offers.Skip((parameters.Page - 1) * PagerParameters.PageSize).Count() > PagerParameters.PageSize)
            {
                customerDetails.Offers = customerDetails.Offers.GetRange((parameters.Page - 1) * PagerParameters.PageSize, PagerParameters.PageSize);
                customerDetails.Rents  = customerDetails.Rents.GetRange((parameters.Page - 1) * PagerParameters.PageSize, PagerParameters.PageSize);
            }
            else
            {
                customerDetails.Offers =
                    customerDetails.Offers.Skip((parameters.Page - 1) * PagerParameters.PageSize).ToList();
                customerDetails.Rents =
                    customerDetails.Rents.Skip((parameters.Page - 1) * PagerParameters.PageSize).ToList();
            }

            customerDetails.PagingInfo = pagingInfo;

            return(View(customerDetails));
        }