public IActionResult Create(ArticuloVM dto) { ViewData["message"] = null; if (!ModelState.IsValid) { return(View(dto)); } Articulo articulo = new Articulo { Codigo = dto.Codigo, Descripcion = dto.Descripcion, Precio = dto.Precio, Costo = dto.Costo, Activo = dto.Activo }; bool result = artRepository.Create_Articulo(articulo); if (!result) { ViewData["message"] = "El código de articulo ya existe, Ingresar uno nuevo!!"; return(View(dto)); } return(RedirectToAction("Index", "Articulo")); }
public IActionResult Edit(ArticuloVM avm) { if (ModelState.IsValid) { string rutaPrincipal = _host.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articulo = _contenedorTrabajo.UTArticulo.Get(avm.Articulo.Id); if (archivos.Count() > 0) { // editamos archivo string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"articulosImagenes"); var extension = Path.GetExtension(archivos[0].FileName); using (var fileStrean = new FileStream(Path.Combine(subidas, nombreArchivo + extension), FileMode.Create)) { archivos[0].CopyTo(fileStrean); } avm.Articulo.UrlImagen = @"\articulosImagenes\" + nombreArchivo + extension; } else { avm.Articulo.UrlImagen = articulo.UrlImagen; } avm.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.UTArticulo.Update(avm.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View(avm)); }
public IActionResult Edit(ArticuloVM dto) { if (!ModelState.IsValid) { return(View(dto)); } Articulo articulo = artRepository.GetArticulo(dto.Id); articulo.Codigo = dto.Codigo; articulo.Descripcion = dto.Descripcion; articulo.Precio = dto.Precio; articulo.Costo = dto.Costo; articulo.Activo = dto.Activo; bool result = artRepository.Update_Articulo(articulo); if (!result) { ViewData["message"] = "El Código le pertenece a otro registro, Ingresar uno nuevo!!"; return(View(dto)); } return(RedirectToAction("Index", "Articulo")); }
public IActionResult Create(ArticuloVM artiVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; if (artiVM.Articulo.Id == 0) { //Nuevo articulo string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + extension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + extension; artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Add(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } artiVM.ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias(); return(View(artiVM)); }
public IActionResult Create(ArticuloVM artiVM) { if (ModelState.IsValid) //Si el Modelo Es valido { string rutaPrincipal = _hostingEnvironment.WebRootPath; // Para Acceder a la ruta principal que seria al wwwroot carpeta var archivos = HttpContext.Request.Form.Files; if (artiVM.Articulo.Id == 0) { //Nuevo Articulo string nombrearchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); //Ruta donde se van aguardar los archivos wwwroot carpeta imagen carpeta articulos var extension = Path.GetExtension(archivos[0].FileName); //extencion del Archivo using (var fileStreams = new FileStream(Path.Combine(subidas, nombrearchivo + extension), FileMode.Create)) //concatenamos la extencion **subida** { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombrearchivo + extension; artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Add(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } artiVM.ListaCategoria = _contenedorTrabajo.Categoria.GetListaCategorias(); return(View(artiVM)); }
public IActionResult Create(ArticuloVM artiVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; if (artiVM.Articulo.Id == 0) { //nuevo articulo string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + extension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + extension; artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Add(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } //El problema es que retorna la vista pero las categorias no existe y por eso me da fallo, explicado en el //54. Corrección de error campos vacios artiVM.ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias(); return(View(artiVM)); } // fin método Create(ArticuloVM artiVM
public async Task <IActionResult> Create(ArticuloVM articuloVm) { if (ModelState.IsValid) { string rutaPrincipal = _hostEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; if (articuloVm.Articulo.Id == 0) { //nuevo Articulo string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + extension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } articuloVm.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + extension; articuloVm.Articulo.FechaCreacion = DateTime.Now.ToString(); await this.serviceArticulo.Add(articuloVm.Articulo.Nombre, articuloVm.Articulo.FechaCreacion, articuloVm.Articulo.UrlImagen, articuloVm.Articulo.Descripcion, articuloVm.Articulo.CategoriaId, articuloVm.Articulo.Categoria); //_contenedorTrabajo.Articulo.Add(articuloVm.Articulo); //_contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } return(View()); }
public IActionResult Edit(ArticuloVM artiVM) { if (ModelState.IsValid) //Si el Modelo Es valido { string rutaPrincipal = _hostingEnvironment.WebRootPath; // Para Acceder a la ruta principal que seria al wwwroot carpeta var archivos = HttpContext.Request.Form.Files; var articuloDesdeDb = _contenedorTrabajo.Articulo.Get(artiVM.Articulo.Id); // Variable para acededer if (archivos.Count() > 0) { //Editar Imagenes string nombrearchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); //Ruta donde se van aguardar los archivos wwwroot carpeta imagen carpeta articulos var extension = Path.GetExtension(archivos[0].FileName); //extencion del Archivo var nuevaExtencion = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articuloDesdeDb.UrlImagen.TrimStart('\\')); if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } //Suvimos nuevamente el Archivo using (var fileStreams = new FileStream(Path.Combine(subidas, nombrearchivo + nuevaExtencion), FileMode.Create)) //concatenamos la nuevaextencion **subida** { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombrearchivo + nuevaExtencion;// le pasamos la nueva extencion artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.UpDate(artiVM.Articulo);// en el ArticuloRepositorio creamos el metodo de UpDate para actualizar _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { //Aquies Cuando la Imagen ya existe y no remplaza //Debe Conservar la que ya esta en la Base de Datos artiVM.Articulo.UrlImagen = articuloDesdeDb.UrlImagen; } _contenedorTrabajo.Articulo.UpDate(artiVM.Articulo); // en el ArticuloRepositorio creamos el metodo de UpDate para actualizar _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public IActionResult Create() { ArticuloVM articleVm = new ArticuloVM() { Articulo = new Models.Entities.Articulo(), Categorias = _unitOfWork.Categoria.GetListaCategorias() }; return(View(articleVm)); }
public IActionResult Create() { ArticuloVM artivm = new ArticuloVM() { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; return(View(artivm)); }
public IActionResult Create() { ArticuloVM avm = new ArticuloVM() { Articulo = new Modelos.Articulo(), Categorias = this._contenedorTrabajo.UTCategoria.GetListaCategorias() }; return(View(avm)); }
public IActionResult Create() { //Vio model nos combina la tabal articulo y la lista categori Creamis la carpeta ViewModels en Acceso Datos ArticuloVM artivm = new ArticuloVM() { Articulo = new Models.Articulo(), //Pasamos el Articulo de la Clase ArticuloVM carpera ViewModels ListaCategoria = _contenedorTrabajo.Categoria.GetListaCategorias() // Lista de Categoria }; return(View(artivm)); // retorno de la Variable }
public IActionResult Edit(ArticuloVM artiVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articuloDesdeDb = _contenedorTrabajo.Articulo.Get(artiVM.Articulo.Id); if (archivos.Count > 0) { // Editamos imagen string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articuloDesdeDb.UrlImagen.TrimStart('\\')); if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } // Subimos nuevamente el archivo using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + nuevaExtension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + nuevaExtension; artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { /* Aquí es cuando la imágen ya existe y no se reemplaza. */ /* Debe conservar ka qye ya esta en la base de datos. */ artiVM.Articulo.UrlImagen = articuloDesdeDb.UrlImagen; } _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public async Task <IActionResult> Edit(ArticuloVM articuloVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articuloDb = await this.serviceArticulo.FindArticulo(articuloVM.Articulo.Id); //_contenedorTrabajo.Articulo.get(articuloVM.Articulo.Id); if (archivos.Count() > 0) { //Editamos imagen string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articuloDb.UrlImagen.TrimStart('\\')); if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } //SUbimos nuevo using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + nuevaExtension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } articuloVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + nuevaExtension; articuloVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Update(articuloVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { //Aqui es cuando la imagen ya existe y no se remplaza , //se debe conservar la que ya esta en la BD articuloVM.Articulo.UrlImagen = articuloDb.UrlImagen; articuloVM.Articulo.FechaCreacion = articuloDb.FechaCreacion; } await this.serviceArticulo.Update(articuloVM.Articulo.Id, articuloVM.Articulo.Nombre, articuloVM.Articulo.FechaCreacion, articuloVM.Articulo.UrlImagen, articuloVM.Articulo.Descripcion, articuloVM.Articulo.CategoriaId, articuloVM.Articulo.Categoria); //_contenedorTrabajo.Articulo.Update(articuloVM.Articulo); //_contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public IActionResult Edit(ArticuloVM artiVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articuloDesdeDb = _contenedorTrabajo.Articulo.Get(artiVM.Articulo.Id); if (archivos.Count > 0) { //EDITAMOS IMAGEN string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName);//EXTENSION DEL ARCHIVO var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articuloDesdeDb.UrlImagen.TrimStart('\\')); if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } //SUBIMOS NUEVAMENTE EL ARCHIVO using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + nuevaExtension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + nuevaExtension; artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { //AQUI ES CUANDO LA IMAGEN YA EXISTE Y NO SE REEMPLAZA //DEBE CONSERVAR LA QUE YA ESTA EN LA DB artiVM.Articulo.UrlImagen = articuloDesdeDb.UrlImagen; } _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public IActionResult Edit(ArticuloVM articuloVM) { if (ModelState.IsValid) { string rutaPrincipal = _hostEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articuloDB = _unitOfWork.Articulo.Get(articuloVM.Articulo.Id); if (archivos.Count() > 0) { //Editar string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"images\articles"); var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImage = Path.Combine(rutaPrincipal, articuloDB.UrlImagen.TrimStart('\\')); var rutaImage2 = Path.Combine(rutaPrincipal, articuloDB.UrlImagen); if (System.IO.File.Exists(rutaImage)) { System.IO.File.Delete(rutaImage); } //subimos nuevamente using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + nuevaExtension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } articuloVM.Articulo.UrlImagen = @"\images\articles\" + nombreArchivo + nuevaExtension; articuloVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _unitOfWork.Articulo.Update(articuloVM.Articulo); _unitOfWork.Save(); return(RedirectToAction(nameof(Index))); } else { //se conserva la img articuloVM.Articulo.UrlImagen = articuloDB.UrlImagen; } _unitOfWork.Articulo.Update(articuloVM.Articulo); _unitOfWork.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public IActionResult Edit(ArticuloVM artiVM) { //hacer qyue cuando selecciones la imagen y le des a aceptar salga en algun sitio la imagen que has seleccionado, tal vez //eso se haria en Javascript. if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var articuloDesdeDb = _contenedorTrabajo.Articulo.Get(artiVM.Articulo.Id); if (archivos.Count() > 0) { //Editamos imagen string nombreArchivo = Guid.NewGuid().ToString(); var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); var extension = Path.GetExtension(archivos[0].FileName); var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articuloDesdeDb.UrlImagen.TrimStart('\\')); if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } //Subimos nuevamente el archivo using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + extension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } artiVM.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + extension; //aquí en realidad se toma la fecha de la misma manera pero es la de actualización de la imagen artiVM.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { //Aquí es cuando la imagen ya exuiste y no se remplaza //Debe conservar la que ya esta en la base de datos la misma cadena y la imagen no guardarse artiVM.Articulo.UrlImagen = articuloDesdeDb.UrlImagen; } _contenedorTrabajo.Articulo.Update(artiVM.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
public IActionResult Edit(int?id) { ArticuloVM artivm = new ArticuloVM() { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; if (id != null) { artivm.Articulo = _contenedorTrabajo.Articulo.GeT(id.GetValueOrDefault()); } return(View(artivm)); }
public IActionResult Edit(int?id) { ArticuloVM articleVm = new ArticuloVM() { Articulo = new Models.Entities.Articulo(), Categorias = _unitOfWork.Categoria.GetListaCategorias() }; if (id != null) { articleVm.Articulo = _unitOfWork.Articulo.Get(id.GetValueOrDefault()); } return(View(articleVm)); }
public async Task <IActionResult> Create() { List <Categoria> categorias = await this.serviceCategorias.GetCategoriasAsync(); var select = categorias.Select(i => new SelectListItem() { Text = i.Nombre, Value = i.Id.ToString() }); ArticuloVM articuloVM = new ArticuloVM() { Articulo = new Articulo(), ListaCategorias = select }; return(View(articuloVM)); }
public IActionResult Edit(int id) { ViewData["message"] = null; Articulo data = artRepository.GetArticulo(id); ArticuloVM dto = new ArticuloVM { Id = data.Id, Activo = data.Activo, Codigo = data.Codigo, Descripcion = data.Descripcion, Costo = data.Costo, Precio = data.Precio }; return(View(dto)); }
public IActionResult Edit(int?id) { ArticuloVM avm = new ArticuloVM() { Articulo = new Modelos.Articulo(), Categorias = this._contenedorTrabajo.UTCategoria.GetListaCategorias() }; if (id != null) { avm.Articulo = this._contenedorTrabajo.UTArticulo.Get(id.GetValueOrDefault()); return(View(avm)); } else { return(NotFound("Contenido no encontrado")); } }
public async Task <IActionResult> Edit(int?id) { List <Categoria> categorias = await this.serviceCategorias.GetCategoriasAsync(); var select = categorias.Select(i => new SelectListItem() { Text = i.Nombre, Value = i.Id.ToString() }); ArticuloVM articuloVM = new ArticuloVM() { Articulo = new Articulo(), ListaCategorias = select }; if (id != null) { articuloVM.Articulo = await this.serviceArticulo.FindArticulo(id.GetValueOrDefault()); //_contenedorTrabajo.Articulo.get(id.GetValueOrDefault()); } return(View(articuloVM)); }