Example #1
0
        public IActionResult EditDeleteDetailField([Required] int ProductDetailFieldId)
        {
            if (!ModelState.IsValid)
            {
                return(new EmptyResult());
            }

            ProductDetailField productDetailField = _context.ProductDetailFields.FirstOrDefault(n => n.Id == ProductDetailFieldId);

            if (productDetailField == null)
            {
                return(new EmptyResult());
            }

            _context.ProductDetailFields.Remove(productDetailField);
            _context.SaveChanges();

            return(new OkResult());
        }
Example #2
0
        public IActionResult EditSave(EditSaveModel model)
        {
            if (ModelState.IsValid)
            {
                // Если картинка добавлена, то...
                if (model.FileImg != null)
                {
                    // Заливаем ее на сервер
                    model.FileImg.CopyTo(new FileStream($"{_hostEnv.WebRootPath}/images/Products/{model.FileImg.FileName}", FileMode.Create));

                    // Меняем на новый путь
                    model.Product.ImgPath = $"/images/Products/{model.FileImg.FileName}";
                }

                // Если добавлено хотя бы одно поле
                if (model.ProductDetailFieldId != null)
                {
                    int fieldsCount = model.ProductDetailFieldId.Count();

                    // Проходим каждое добавленное поле и его определение
                    for (int i = 0; i < fieldsCount; i++)
                    {
                        ProductDetailField productDetailField = _context.ProductDetailFields
                                                                .FirstOrDefault(n => n.Id == model.ProductDetailFieldId[i]);

                        // Если такое поле нашлось в бд
                        if (productDetailField != null)
                        {
                            // Сохраняем новое определение у поля в данном продукте
                            productDetailField.DefinitionId = model.DefinitionId[i];

                            _context.ProductDetailFields.Update(productDetailField);
                        }
                    }
                }

                _context.Products.Update(model.Product);
                _context.SaveChanges();
            }

            return(RedirectToAction("Edit", "Home", new { Id = model.Product.Id }));
        }