Пример #1
0
        public ActionResult Add(Product model)
        {
            var validator = new ProductAddValidator(_productRepo).Validate(model);

            if (validator.IsValid)
            {
                _unitOfWork.GetRepo <Product>().Add(model);
                bool IsSuccess = _unitOfWork.Commit();
                ViewBag.IsSuccess = IsSuccess;
                ViewBag.Message   = IsSuccess ? "Başarılı" : "Tekrar deneyiniz.";
            }
            validator.Errors.ToList().ForEach(a =>
            {
                ModelState.AddModelError(a.PropertyName, a.ErrorMessage);
            });
            ViewBag.Categories = CategoryDrp;
            return(View());
        }
Пример #2
0
        public ActionResult Add(ProductViewModel model)
        {
            var validator = new ProductAddValidator(_unitOfWork).Validate(model.Product);

            if (validator.IsValid && model.PostedPictures[0] != null)
            {
                model.Product.CategoryId = model.Product.CategoryId != 0 ? model.Product.CategoryId : model.CatId;
                model.Product.SeoUrl     = _seoUrlMaker.MakeSlug(model.Product.Name);
                model.Product.CreateTime = DateTime.Now;
                if (model.Product.MarkAsNew)
                {
                    model.Product.MarkAsNewStartTime = DateTime.Now;
                    model.Product.MarkAsNewEndTime   = DateTime.Now.AddDays(7);
                }
                _unitOfWork.GetRepo <Product>().Add(model.Product);

                foreach (var picture in model.PostedPictures)
                {
                    var pictureModel = new Picture();
                    var picturePath  = _uploadService.Upload(picture, 277, 350);
                    pictureModel.SeoFileName    = _seoUrlMaker.MakeSlug(picture.FileName);
                    pictureModel.AltAttribute   = _seoUrlMaker.MakeSlug(picture.FileName);
                    pictureModel.TitleAttribute = _seoUrlMaker.MakeSlug(picture.FileName);
                    pictureModel.PicturePath    = picturePath;
                    _unitOfWork.GetRepo <Picture>().Add(pictureModel);
                    _unitOfWork.GetRepo <ProductPicture>().Add(new ProductPicture
                    {
                        Product = model.Product,
                        Picture = pictureModel
                    });
                }
            }
            var isSuccess = _unitOfWork.Commit();

            TempData["IsSuccess"] = isSuccess;
            validator.Errors.ToList().ForEach(a =>
            {
                ModelState.AddModelError("Product." + a.PropertyName, a.ErrorMessage);
            });
            TempData["ModelState"] = ModelState;
            TempData["Message"]    = isSuccess ? "Ürün ekleme işlemi başarılı bir şekilde gerçekleştirildi." : "Ürün ekleme işlemi gerçekleştirilemedi lütfen tekrar deneyiniz.";

            return(RedirectToAction("Add"));
        }
Пример #3
0
 public EfProductAddCommand(ShoeStoreContext context, ProductAddValidator validator, IMapper maper)
 {
     _context   = context;
     _validator = validator;
     _maper     = maper;
 }
 public EfAddProductCommand(ProductAddValidator validator, WatchShopContext context, IMapper mapper)
 {
     _validator = validator;
     _context   = context;
     _mapper    = mapper;
 }