public ActionResult Create(ProductoEditViewModel productoVm) { if (!ModelState.IsValid) { productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); return(View(productoVm)); } var producto = Mapper.Map <ProductoEditViewModel, Producto>(productoVm); if (!_dbContext.Productos.Any(ct => ct.NombreProducto == producto.NombreProducto && ct.CategoriaId == producto.CategoriaId)) { using (var tran = _dbContext.Database.BeginTransaction()) { try { var folder = "~/Content/Images/Productos/"; var file = ""; _dbContext.Productos.Add(producto); _dbContext.SaveChanges(); if (productoVm.FotoFile != null) { file = $"{producto.ProductoId}.jpg"; var response = FileHelper.UploadPhoto(productoVm.FotoFile, folder, file); if (!response) { file = "SinImagenDisponible.jpg"; } } else { file = "SinImagenDisponible.jpg"; } producto.Foto = $"{folder}{file}"; _dbContext.Entry(producto).State = EntityState.Modified; _dbContext.SaveChanges(); tran.Commit(); TempData["Msg"] = "Registro agregado"; return(RedirectToAction("Index")); } catch (Exception e) { productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); ModelState.AddModelError(string.Empty, e.Message); return(View(productoVm)); } } } productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); ModelState.AddModelError(string.Empty, "Registro repetido..."); return(View(productoVm)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductoEditDto productoEditDto = _servicio.GetProductoPorId(id); ProductoEditViewModel productoVm = _mapper.Map <ProductoEditViewModel>(productoEditDto); productoVm.TipoProducto = _mapper .Map <List <TipoDeProductoListViewModel> >(_serviciosTipoProducto.GetLista()); productoVm.Marca = _mapper .Map <List <MarcaListViewModel> >(_servicioMarca.GetLista()); if (productoVm.Imagen == null) { productoVm.Imagen = $"ImagenNoDisponible.jpg"; } else { productoVm.Imagen = $"{productoVm.Imagen}"; } return(View(productoVm)); }
public ActionResult Edit(ProductoEditViewModel productoVm) { if (!ModelState.IsValid) { productoVm.Imagen = $"ImagenNoDisponible.jpg"; productoVm.TipoProducto = _mapper .Map <List <TipoDeProductoListViewModel> >(_serviciosTipoProducto.GetLista()); productoVm.Marca = _mapper .Map <List <MarcaListViewModel> >(_servicioMarca.GetLista()); return(View(productoVm)); } ProductoEditDto productoDto = _mapper.Map <ProductoEditDto>(productoVm); if (_servicio.Existe(productoDto)) { ModelState.AddModelError(string.Empty, @"Producto existente..."); productoVm.Imagen = $"ImagenNoDisponible.jpg"; productoVm.TipoProducto = _mapper .Map <List <TipoDeProductoListViewModel> >(_serviciosTipoProducto.GetLista()); productoVm.Marca = _mapper .Map <List <MarcaListViewModel> >(_servicioMarca.GetLista()); return(View(productoVm)); } try { if (productoVm.ImagenFile != null) { productoDto.Imagen = $"{productoVm.ImagenFile.FileName}"; } _servicio.Guardar(productoDto); if (productoVm.ImagenFile != null) { var file = $"{productoVm.ImagenFile.FileName}"; var response = FileHelper.UploadPhoto(productoVm.ImagenFile, folder, file); } TempData["Msg"] = "Producto editado..."; return(RedirectToAction("Index")); } catch (Exception e) { ModelState.AddModelError(string.Empty, e.Message); productoVm.Imagen = $"{folder}ImagenNoDisponible.jpg"; productoVm.TipoProducto = _mapper .Map <List <TipoDeProductoListViewModel> >(_serviciosTipoProducto.GetLista()); productoVm.Marca = _mapper .Map <List <MarcaListViewModel> >(_servicioMarca.GetLista()); return(View(productoVm)); } }
// GET: Productos/Create public ActionResult Create() { var productoVm = new ProductoEditViewModel { Categorias = CombosHelper.GetCategorias(), Proveedores = CombosHelper.GetProveedores() }; return(View(productoVm)); }
public ActionResult Create() { ProductoEditViewModel productoVm = new ProductoEditViewModel { Activo = true, Imagen = $"SinImagenDisponible.jpg", TipoProductos = _mapper .Map <List <TipoProductoListViewModel> >(_serviciosTipoProducto.GetLista()) }; return(View(productoVm)); }
public ActionResult Create() { ProductoEditViewModel productoVm = new ProductoEditViewModel { Imagen = $"ImagenNoDisponible.jpg", TipoProducto = _mapper .Map <List <TipoDeProductoListViewModel> >(_serviciosTipoProducto.GetLista()), Marca = _mapper .Map <List <MarcaListViewModel> >(_servicioMarca.GetLista()) }; return(View(productoVm)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var producto = _dbContext.Productos .SingleOrDefault(ct => ct.ProductoId == id); if (producto == null) { return(HttpNotFound()); } ProductoEditViewModel productoVm = Mapper .Map <Producto, ProductoEditViewModel>(producto); productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); return(View(productoVm)); }
public ActionResult Edit(ProductoEditViewModel productoVm) { if (!ModelState.IsValid) { return(View(productoVm)); } var producto = Mapper.Map <ProductoEditViewModel, Producto>(productoVm); productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); try { if (_dbContext.Productos.Any(ct => ct.NombreProducto == producto.NombreProducto && ct.ProductoId != producto.ProductoId)) { productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); ModelState.AddModelError(string.Empty, "Registro repetido"); return(View(productoVm)); } _dbContext.Entry(producto).State = EntityState.Modified; _dbContext.SaveChanges(); TempData["Msg"] = "Registro editado"; return(RedirectToAction("Index")); } catch (Exception e) { productoVm.Categorias = CombosHelper.GetCategorias(); productoVm.Proveedores = CombosHelper.GetProveedores(); ModelState.AddModelError(string.Empty, "Error inesperado al intentar editar un registro"); return(View(productoVm)); } }