public ActionResult OpenedRents(ParametersView parameters)
        {
            ParametersBll parametersBll = new ParametersBll()
            {
                PriceFilter = parameters.PriceFilter,
                TypeFilter  = parameters.TypeFilter,
                Page        = parameters.Page,
                PageSize    = PagerParameters.PageSize
            };
            List <OfferView> offers    = new List <OfferView>();
            List <OfferBll>  offersBll = _sharingService.GetSelectedTypes(parametersBll);

            _sharingService.Sort(parametersBll, offersBll);
            offersBll = offersBll.Where(offer => _sharingService.IsOfferTaken(offer.Id)).ToList();
            offersBll = _sharingService.GetCurrentPageItems(offersBll, parametersBll);

            foreach (var offer in offersBll)
            {
                bool isTaken = _sharingService.IsOfferTaken(offer.Id);
                offers.Add(new OfferView
                {
                    Id          = offer.Id,
                    Model       = offer.Model,
                    Description = offer.Description,
                    Year        = offer.Year,
                    Image       = offer.Image,
                    Type        = offer.Type,
                    DailyCost   = offer.DailyCost,
                    IsTaken     = isTaken
                });
            }

            List <OfferView> takenOffers = new List <OfferView>();

            foreach (OfferView offer in offers)
            {
                if (offer.IsTaken)
                {
                    takenOffers.Add(offer);
                }
            }

            int totalItems = takenOffers.Count;

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

            OffersView offerView = new OffersView()
            {
                Offers     = takenOffers,
                PagingInfo = pagingInfo
            };

            return(View(offerView));
        }
        public ActionResult OpenedRents()
        {
            ParametersBll parametersBll = new ParametersBll
            {
                Page     = 1,
                PageSize = PagerParameters.PageSize
            };

            List <OfferView> offers = new List <OfferView>();

            foreach (var offer in _sharingService.GetTakenOffers(parametersBll))
            {
                const bool isTaken = true;

                offers.Add(new OfferView
                {
                    Id          = offer.Id,
                    Model       = offer.Model,
                    Description = offer.Description,
                    Year        = offer.Year,
                    Image       = offer.Image,
                    Type        = offer.Type,
                    DailyCost   = offer.DailyCost,
                    IsTaken     = isTaken
                });
            }

            int totalItems = offers.Count;

            PagingInfoView pagingInfo = new PagingInfoView
            {
                CurrentPage  = 1,
                ItemsPerPage = PagerParameters.PageSize,
                TotalItems   = totalItems
            };

            OffersView offersView = new OffersView()
            {
                Offers     = offers,
                PagingInfo = pagingInfo
            };

            return(View(offersView));
        }
Exemplo n.º 3
0
        public ActionResult AllCustomers(ParametersView parameters)
        {
            ParametersBll parametersBll = new ParametersBll
            {
                Page     = parameters.Page,
                PageSize = PagerParameters.PageSize
            };


            List <CustomerBll> customersBll = _sharingService.GetAllCustomers();
            int totalItems = customersBll.Count;

            customersBll = _sharingService.GetCurrentPageCustomers(customersBll, parametersBll);

            List <CustomerView> customersView = new List <CustomerView>();

            foreach (var customer in customersBll)
            {
                customersView.Add(new CustomerView
                {
                    Id        = customer.Id,
                    Email     = customer.Email,
                    FirstName = customer.FirstName,
                    Surname   = customer.Surname
                });
            }

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

            CustomersView customers = new CustomersView
            {
                Customers  = customersView,
                PagingInfo = pagingInfo
            };

            return(View(customers));
        }
Exemplo n.º 4
0
        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));
        }