Example #1
0
        public InnovativeProduct SaveProduct(InnovativeProduct prod)
        {
            InnovativeProduct returnProd = null;

            if (prod.InnovativeProductID == 0)
            {
                context.InnovativeProducts.Add(prod);
            }
            else
            {
                returnProd = context.InnovativeProducts.Where(p => p.InnovativeProductID == prod.InnovativeProductID).SingleOrDefault();
                if (returnProd != null)
                {
                    returnProd.Continuity           = prod.Continuity;
                    returnProd.DevelopmentStage     = prod.DevelopmentStage;
                    returnProd.MarketNoveltyDegree  = prod.MarketNoveltyDegree;
                    returnProd.MarketShare          = prod.MarketShare;
                    returnProd.NoveltyDegree        = prod.NoveltyDegree;
                    returnProd.Prevalence           = prod.Prevalence;
                    returnProd.ProductionCyclePlace = prod.ProductionCyclePlace;
                    returnProd.productName          = prod.productName;
                    returnProd.Description          = prod.Description;
                    returnProd.CreatorID            = returnProd.CreatorID ?? prod.CreatorID;
                }
            }
            context.SaveChanges();
            if (returnProd == null)
            {
                returnProd = context.InnovativeProducts.OrderByDescending(p => p.InnovativeProductID).First();
            }
            return(returnProd);
        }
        public IActionResult Edit(int id)
        {
            InnovativeProduct product = _productsRepository.InnovativeProducts
                                        .Where(p => p.InnovativeProductID == id)
                                        .FirstOrDefault();

            ViewBag.Title = $"Изменение продукта: {product.productName}";
            return(View(product));
        }
 public IActionResult Edit(InnovativeProduct product)
 {
     if (ModelState.IsValid)
     {
         product = _productsRepository.SaveProduct(product);
     }
     else
     {
         return(View(product));
     }
     return(RedirectToAction("Product", new { id = product.InnovativeProductID }));
 }
        public IActionResult DeleteProduct(int id)
        {
            InnovativeProduct product = _productRepository.DeleteProduct(id);

            if (product != null)
            {
                TempData["Message"] = $"Продукт '{product.productName}' успешно удален";
            }
            else
            {
                TempData["Danger"] = "При удалении продукта произошла ошибка.";
            }
            return(RedirectToAction(nameof(Products)));
        }
Example #5
0
        public InnovativeProduct DeleteProduct(int prodID)
        {
            InnovativeProduct product = context.InnovativeProducts.Where(p => p.InnovativeProductID == prodID).SingleOrDefault();

            if (product != null)
            {
                Certificate[] certificates = context.Certificates.Where(c => c.InnovativeProductID == prodID).ToArray();
                context.Certificates.RemoveRange(certificates);
                context.InnovativeProducts.Remove(product);
                context.SaveChanges();
            }

            return(product);
        }
        public async Task <IActionResult> Product(int id)
        {
            User user = null;
            InnovativeProduct product = _productsRepository.InnovativeProducts.Where(p => p.InnovativeProductID == id).SingleOrDefault();

            if (product != null)
            {
                user = await _userManager.FindByIdAsync(product.CreatorID);

                ViewBag.Title = $"Инновационный продукт: {product.productName}";
            }
            else
            {
                return(new NotFoundResult());
            }
            product.Certificates = _certificateRepository.Certificates.Where(c => c.InnovativeProductID == id).ToList();

            return(View(new ProductViewModel {
                Product = product,
                User = user,
                CanEdit = (product.CreatorID == await HttpContext.GetCurrentUserIdAsync(_userManager) || HttpContext.User.IsInRole("Admin"))
            }));
        }