コード例 #1
0
        public ProductViewModel AutoMappingProductViewModel(Product p)
        {
            ProductViewModel model = new ProductViewModel();
            var soc = new SpecialOfferController();
            var rec = new RevisionController();

            //Add all revisions to product via viewmodels
            model.RevisionsInProduct = new List <RevisionViewModel>();
            foreach (Revision r in rec.RetrieveAllRevisionsByProductId(p.RetrieveProductId()))
            {
                var mapperOne            = mapextension.RevisionToRevisionViewModel();
                RevisionViewModel rmodel = mapperOne.Map <RevisionViewModel>(r);
                model.RevisionsInProduct.Add(rmodel);
            }

            //Add all categories from product to model via viewmodels
            model.ProductCategories = new List <CategoryOverviewViewModel>();
            foreach (Category c in categoryRep.RetrieveCategoriesFromProduct(p))
            {
                var mapperTwo = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel cmodel = mapperTwo.Map <CategoryOverviewViewModel>(c);
                model.ProductCategories.Add(cmodel);
            }

            //Add all categories in system to model via viewmodels
            model.ListOfAllCategories = new List <CategoryOverviewViewModel>();
            foreach (Category c in categoryRep.RetrieveAllCategories())
            {
                var mapperThree = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel cmodelsystem = mapperThree.Map <CategoryOverviewViewModel>(c);
                model.ListOfAllCategories.Add(cmodelsystem);
            }

            return(model);
        }
コード例 #2
0
        /// <summary>
        ///     Return productoverview
        /// </summary>
        /// <returns>Actionresult productoverview</returns>
        public IActionResult Overview()
        {
            var model = new ProductCategoryViewModel();

            model.ListOfProducts   = new List <ProductViewModel>();
            model.ListOfCategories = new List <CategoryOverviewViewModel>();

            foreach (var singleProduct in productRep.RetrieveAllProducts())
            {
                singleProduct.ProductCategories = categoryRep.RetrieveCategoriesFromProduct(singleProduct);
                var mapperOne           = mapextension.ProductToProductviewmodel();
                ProductViewModel pmodel = mapperOne.Map <ProductViewModel>(singleProduct);
                pmodel.IsSpecialOffer = singleProduct.RetrieveSpecialOffer();

                pmodel.ProductCategories = new List <CategoryOverviewViewModel>();
                foreach (Category c in categoryRep.RetrieveCategoriesFromProduct(singleProduct))
                {
                    CategoryOverviewViewModel cmodel = new CategoryOverviewViewModel();
                    cmodel.CategoryId   = c.RetrieveCategoryId();
                    cmodel.CategoryName = c.RetrieveCategoryName();
                    pmodel.ProductCategories.Add(cmodel);
                }

                model.ListOfProducts.Add(pmodel);
            }
            foreach (Category c in categoryRep.RetrieveAllCategories())
            {
                var mapperTwo = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel cmodel = mapperTwo.Map <CategoryOverviewViewModel>(c);
                model.ListOfCategories.Add(cmodel);
            }

            return(View("Productoverview", model));
        }
コード例 #3
0
        /// <summary>
        ///     Return a single product
        /// </summary>
        /// <returns>Actionresult single product</returns>
        public IActionResult Single()
        {
            var model = new ProductViewModel();

            model.ListOfAllCategories = new List <CategoryOverviewViewModel>();
            foreach (Category c in categoryRep.RetrieveAllCategories())
            {
                var mapper = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel cmodel = mapper.Map <CategoryOverviewViewModel>(c);
                model.ListOfAllCategories.Add(cmodel);
            }

            return(View("SingleProduct", model));
        }
コード例 #4
0
        /// <summary>
        /// Returns the categoryoverview
        /// </summary>
        /// <returns>IActionresult</returns>
        public IActionResult Overview()
        {
            var model      = new CategoryViewModel();
            var categories = new List <CategoryOverviewViewModel>();

            foreach (Category c in categoryRep.RetrieveAllCategories())
            {
                //Set up automapping
                var mapper = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel m = mapper.Map <CategoryOverviewViewModel>(c);
                categories.Add(m);
            }

            model.AllCategoriesInSystem = categories;
            return(View("Categoryoverview", model));
        }
コード例 #5
0
        public CategoryViewModel AutoMappingToCategoryViewModel(Category selected, List <Category> listOfCategories)
        {
            //Set up automapping
            var mapperOne           = mapextension.CategoryToCategoryViewModel();
            CategoryViewModel model = mapperOne.Map <CategoryViewModel>(selected);

            var categories = new List <CategoryOverviewViewModel>();

            foreach (Category c in categoryRep.RetrieveAllCategories())
            {
                //Set up automapping
                var mapper = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel m = mapper.Map <CategoryOverviewViewModel>(c);
                categories.Add(m);
            }
            model.AllCategoriesInSystem = categories;
            return(model);
        }
コード例 #6
0
        public ActionResult Category(ProductsFilterParams filter)
        {
            if (filter == null)
            {
                filter = new ProductsFilterParams();
            }
            var result = new CategoryOverviewViewModel();

            var products = _productService.GetProducts(filter.SecondCategoryId);

            result.Manufacturers = products.Select(q => q.Manufacturer).Distinct().OrderBy(q => q.Name);
            products             = products.Sort(filter.SortOrder, filter.SortOptions, filter.SecondCategoryId, filter.ThirdCategoryId);

            result.Products        = products.ToPagedList(filter.Page, filter.PageSize);
            result.Filter          = filter;
            result.CurrentCategory = _productService.GetCategory(filter.SecondCategoryId);


            return(View(result));
        }
コード例 #7
0
        public HomeViewModel AutoMappingHomeViewModel()
        {
            var model = new HomeViewModel();

            model.ListOfProducts   = new List <ProductViewModel>();
            model.ListOfCategories = new List <CategoryOverviewViewModel>();

            //Setup automapping
            var mapperOne = mapextension.ProductToProductviewmodel();
            var mapperSO  = mapextension.SpecialOfferToProductviewmodel();

            //For every product in system
            foreach (var singleProduct in productRepo.RetrieveAllProducts())
            {
                singleProduct.ProductCategories = categoryRepo.RetrieveCategoriesFromProduct(singleProduct);
                ProductViewModel pmodel = new ProductViewModel();
                pmodel.IsSpecialOffer = singleProduct.RetrieveSpecialOffer();

                //Check if product is specialoffer
                if (singleProduct is SpecialOffer)
                {
                    pmodel = mapperSO.Map <ProductViewModel>(singleProduct);
                }
                else
                {
                    pmodel = mapperOne.Map <ProductViewModel>(singleProduct);
                }

                //Filling categories for specific product
                foreach (Category c in categoryRepo.RetrieveCategoriesFromProduct(singleProduct))
                {
                    //Set up automapping
                    var mapperTwo = mapextension.CategoryToCategoryOverviewViewModel();
                    CategoryOverviewViewModel m = mapperTwo.Map <CategoryOverviewViewModel>(c);
                    pmodel.ProductCategories.Add(m);
                }

                model.ListOfProducts.Add(pmodel);
            }

            foreach (Category c in categoryRepo.RetrieveAllCategories())
            {
                //Set up automapping
                var mapperTwo = mapextension.CategoryToCategoryOverviewViewModel();
                CategoryOverviewViewModel m = mapperTwo.Map <CategoryOverviewViewModel>(c);
                model.ListOfCategories.Add(m);
            }

            foreach (Post p in postRepo.RetrieveAllPosts())
            {
                //Set up automapping
                var           mapperThree = mapextension.PostToPostViewModel();
                PostViewModel pmodel      = mapperThree.Map <PostViewModel>(p);
                model.PostsInSystem.Add(pmodel);
            }

            //Get currently logged in user
            var loggedInUser = HttpContext.Session.GetObjectFromJson <UserViewModel>("ComplexObject");

            model.UserLoggedIn = loggedInUser;

            return(model);
        }