public async Task <IActionResult> Update(ArticuloViewModel model) { try { if (!ModelState.IsValid) { return(StatusCode(400, "Modelo no válido.")); } ArticuloEntity articuloEntity = await _contextInventario.Articulo.FindAsync(model.Sku_ID); if (articuloEntity == null) { return(StatusCode(404, "Artículo no encontrado.")); } articuloEntity.Sku_ID = model.Sku_ID; articuloEntity.Sku_NumeroSerie = model.Sku_NumeroSerie; articuloEntity.Sku_Descripcion = model.Sku_Descripcion; articuloEntity.Sku_Cantidad = model.Sku_Cantidad; articuloEntity.Sku_Cat_ID = model.Sku_Cat_ID; articuloEntity.Sku_Sub_Cat_ID = model.Sku_Sub_Cat_ID; articuloEntity.Sku_Latitud = model.Sku_Latitud; articuloEntity.Sku_Longitud = model.Sku_Longitud; _contextInventario.Articulo.Update(articuloEntity); await _contextInventario.SaveChangesAsync(); return(StatusCode(200)); } catch (Exception ex) { return(StatusCode(500, "Ocurrio un error al actualizar los datos del artículo. " + ex.Message)); } }
public async Task <IActionResult> Create(ArticuloViewModel model) { ArticuloEntity articuloEntity = new ArticuloEntity(); try { if (!ModelState.IsValid) { return(StatusCode(400, "Modelo no válido.")); } articuloEntity.Sku_NumeroSerie = model.Sku_NumeroSerie; articuloEntity.Sku_Codigo = model.Sku_Codigo; articuloEntity.Sku_Descripcion = model.Sku_Descripcion; articuloEntity.Sku_Cantidad = model.Sku_Cantidad; articuloEntity.Sku_Cat_ID = model.Sku_Cat_ID; articuloEntity.Sku_Sub_Cat_ID = model.Sku_Sub_Cat_ID; articuloEntity.Sku_Latitud = model.Sku_Latitud; articuloEntity.Sku_Longitud = model.Sku_Longitud; await _contextInventario.Articulo.AddRangeAsync(articuloEntity); await _contextInventario.SaveChangesAsync(); return(RedirectToAction("GetById", "Articulos", new { id = articuloEntity.Sku_ID })); } catch (Exception ex) { return(StatusCode(500, "Ocurrio un error al crear el artículo. " + ex.Message)); } finally { articuloEntity = null; model = null; } }
public ActionResult Editar(ArticuloViewModel model) { try { if (ModelState.IsValid) { using (EurekaLibreriaDBEntities db = new EurekaLibreriaDBEntities()) { var oArticulo = db.Articulos.Find(model.Id); oArticulo.Nombre = model.Nombre; oArticulo.Descripcion = model.Descripcion; oArticulo.Categoria = model.Categoria; oArticulo.Autor = model.Autor; oArticulo.TotalInventario = model.TotalInventario; oArticulo.Editorial = model.Editorial; oArticulo.Precio = model.Precio; db.Entry(oArticulo).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } return(Redirect("~/Articulo/")); } return(View(model)); } catch (Exception ex) { throw new Exception(ex.Message); } }
public ActionResult Create(ArticuloViewModel articulo) { articulo.TagsSeleccionados = articulo.TagsSeleccionados.Where(s => s.Eliminado == false).ToList(); if (ModelState.IsValid) { articulo = _articuloManager.Guardar(articulo); AddMessage("Articulo grabado correctamente", Infraestructura.Managers.Imp.MessageType.Normal); return(RedirectToAction("Edit", new { Area = "Repositorio", id = articulo.Id })); } AddMessage("Hubo un error al guardar", Infraestructura.Managers.Imp.MessageType.Error); _articuloManager.RellenarSeleccionables(articulo); articulo.Tags = articulo.TagsSeleccionados.Select(s => new utilidades.Entities.Repositorio.Tag() { Descripcion = s.Descripcion }).ToList(); return(View(articulo)); }
public IActionResult Agregar(ArticuloViewModel p_articuloVM) { try { //this._articuloService.AgregarArticulo(p_articuloDTO); if (!ModelState.IsValid) { return(View("error")); } else { var articuloDTO = this._mapper.Map <ArticuloViewModel, ArticuloDTO>(p_articuloVM); int result = this._articuloService.AgregarArticulo(articuloDTO); ViewBag.result = "Accion realizada con exito."; List <ArticuloViewModel> listArticuloViewModels = this._articuloService.getArticulos() .Select(x => this._mapper.Map <ArticuloDTO, ArticuloViewModel>(x)).ToList(); return(View("index", listArticuloViewModels)); } } catch (Exception ex) { ViewBag.error = ex.InnerException.Message; ViewData["accionCRUD"] = AccionesCRUD.AGREGAR; return(View("form", p_articuloVM)); } }
// GET: Articulo/Create public ActionResult Create() { ArticuloViewModel usuarioEN = new ArticuloViewModel(); return(View(usuarioEN)); }
public IActionResult Edit(ArticuloViewModel model) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; var oldModel = _contenedorTrabajo.Articulo.Get(model.Articulo.Id); if (archivos.Count > 0) { //Nuevo Artículo string nombreArchivo = Guid.NewGuid().ToString(); var extension = Path.GetExtension(archivos[0].FileName); var sUrl = Path.Combine(@"imagenes\articulos", nombreArchivo + extension); using (var fileStreams = new FileStream(Path.Combine(rutaPrincipal, sUrl), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } model.Articulo.UrlImagen = sUrl; } else { model.Articulo.UrlImagen = oldModel.UrlImagen; } model.Articulo.FechaCreacion = DateTime.Now; _contenedorTrabajo.Articulo.Update(model.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View(model)); }
public async Task <IHttpActionResult> Update(ArticuloViewModel model) { try { if (!ModelState.IsValid) { return(Content(HttpStatusCode.BadRequest, "Modelo no válido.")); } Articulo articuloEntity = await _InventarioContext.Articulo.FindAsync(model.Sku_ID); if (articuloEntity == null) { return(Content(HttpStatusCode.NotFound, "Articulo no encontrado.")); } articuloEntity.Sku_ID = model.Sku_ID; articuloEntity.Sku_NumeroSerie = model.Sku_NumeroSerie; articuloEntity.Sku_Descripcion = model.Sku_Descripcion; articuloEntity.Sku_Cantidad = model.Sku_Cantidad; articuloEntity.Sku_Cat_ID = model.Sku_Cat_ID; articuloEntity.Sku_Sub_Cat_ID = model.Sku_Sub_Cat_ID; articuloEntity.Sku_Latitud = model.Sku_Latitud; articuloEntity.Sku_Longitud = model.Sku_Longitud; await _InventarioContext.SaveChangesAsync(); return(Content(HttpStatusCode.OK, articuloEntity)); } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, ex)); } }
public async Task <IActionResult> Create(ArticuloViewModel view) { if (ModelState.IsValid) { var path = string.Empty; if (view.ImageFile != null && view.ImageFile.Length > 0) { var guid = Guid.NewGuid().ToString(); var file = $"{guid}.jpg"; path = Path.Combine( Directory.GetCurrentDirectory(), "wwwroot\\images\\Articulos", file); using (var stream = new FileStream(path, FileMode.Create)) { await view.ImageFile.CopyToAsync(stream); } path = $"~/images/Articulos/{file}"; } var product = this.ToProduct(view, path); // TODO: Pending to change to: this.User.Identity.Name product.User = await this.userHelper.GetUserByEmailAsync(this.User.Identity.Name); await this.productRepository.CreateAsync(product); return(RedirectToAction(nameof(Index))); } return(View(view)); }
public IActionResult Create(ArticuloViewModel articuloViewModel) { if (ModelState.IsValid) { #region SUBIR IMAGEN string rutaPrincipal = _hostingEnvironment.WebRootPath; // wwwroot var archivos = HttpContext.Request.Form.Files; if (articuloViewModel.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); } articuloViewModel.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + extension; articuloViewModel.Articulo.FechaCreacion = DateTime.Now.ToString(); #endregion //guardar _contenedorTrabajo.Articulo.Add(articuloViewModel.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } articuloViewModel.ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias(); return(View(articuloViewModel)); }
public IActionResult Modificar(ArticuloViewModel p_articuloVM) { try { if (!ModelState.IsValid) { return(View("error")); } else { ArticuloDTO articuloDTO = this._mapper.Map <ArticuloViewModel, ArticuloDTO>(p_articuloVM); int result = this._articuloService.ModificarArticulo(articuloDTO); ViewBag.result = "Accion realizada con exito."; List <ArticuloViewModel> listArticuloViewModels = this._articuloService.getArticulos() .Select(x => this._mapper.Map <ArticuloDTO, ArticuloViewModel>(x)).ToList(); return(View("index", listArticuloViewModels)); } } catch (Exception ex) { ViewBag.error = ex.InnerException.Message; ViewData["accionCRUD"] = AccionesCRUD.MODIFICAR; List <SelectListItem> modelos = this._modeloService.getModelos() .Select(x => new SelectListItem { Value = x.Id.ToString(), Text = $"{x.Codigo} - {x.Descripcion}" }).ToList(); List <SelectListItem> colores = this._colorService.getColores() .Select(x => new SelectListItem { Value = x.Id.ToString(), Text = $"{x.Codigo} - {x.Descripcion}" }).ToList(); List <SelectListItem> marcas = this._marcaService.getMarcas() .Select(x => new SelectListItem { Value = x.Id.ToString(), Text = $"{x.Codigo} - {x.Descripcion}" }).ToList(); List <SelectListItem> categorias = this._categoriaService.getCategorias() .Select(x => new SelectListItem { Value = x.Id.ToString(), Text = $"{x.Codigo} - {x.Descripcion}" }).ToList(); p_articuloVM.Modelos = modelos; p_articuloVM.Colores = colores; p_articuloVM.Marcas = marcas; p_articuloVM.Categorias = categorias; return(View("form", p_articuloVM)); } }
public async Task <IHttpActionResult> Create(ArticuloViewModel model) { Articulo ArticuloEntity = new Articulo(); try { if (!ModelState.IsValid) { return(Content(HttpStatusCode.BadRequest, "Modelo no válido.")); } ArticuloEntity.Sku_NumeroSerie = model.Sku_NumeroSerie; ArticuloEntity.Sku_Descripcion = model.Sku_Descripcion; ArticuloEntity.Sku_Cantidad = model.Sku_Cantidad; ArticuloEntity.Sku_Cat_ID = model.Sku_Cat_ID; ArticuloEntity.Sku_Sub_Cat_ID = model.Sku_Sub_Cat_ID; ArticuloEntity.Sku_Latitud = model.Sku_Latitud; ArticuloEntity.Sku_Longitud = model.Sku_Longitud; _InventarioContext.Articulo.Add(ArticuloEntity); await _InventarioContext.SaveChangesAsync(); return(Content(HttpStatusCode.Created, ArticuloEntity)); } catch (ApplicationException ex) { return(Content(HttpStatusCode.InternalServerError, ex)); } finally { ArticuloEntity = null; model = null; } }
// GET: Repositorio/Articulo/Create public ActionResult Create() { var vm = new ArticuloViewModel(); _articuloManager.RellenarSeleccionables(vm); return(View(vm)); }
// GET: Checkout public ActionResult Index() { CheckoutMpService checkout = new CheckoutMpService(); ArticuloViewModel miArticulo = new ArticuloViewModel(); miArticulo.InitPoint = checkout.CrearPreferencia(miArticulo)?.InitPoint; return(View(miArticulo)); }
public IActionResult Edit(ArticuloViewModel articuloViewModel) { if (ModelState.IsValid) { string rutaPrincipal = _hostingEnvironment.WebRootPath; var archivos = HttpContext.Request.Form.Files; //Obtenemos el objeto de Articulo por el id var articulosFromDb = _contenedorTrabajo.Articulo.Get(articuloViewModel.Articulo.Id); // verificamos si la imagen existe y se ha cambiado if (archivos.Count > 0) { // Editamos la imagen string nombreArchivo = Guid.NewGuid().ToString(); // ruta en donde se subiran los archivos, raiz wwwroot var subidas = Path.Combine(rutaPrincipal, @"imagenes\articulos"); // obtener la extension del archivo var extension = Path.GetExtension(archivos[0].FileName); var nuevaExtension = Path.GetExtension(archivos[0].FileName); var rutaImagen = Path.Combine(rutaPrincipal, articulosFromDb.UrlImagen.TrimStart('\\')); // validamos si la imagen que ingresa ya existe en la carpeta, entonces la borramos if (System.IO.File.Exists(rutaImagen)) { System.IO.File.Delete(rutaImagen); } // subir nuevamente el archivo using (var fileStreams = new FileStream(Path.Combine(subidas, nombreArchivo + nuevaExtension), FileMode.Create)) { archivos[0].CopyTo(fileStreams); } articuloViewModel.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + nuevaExtension; // asignamos la fecha actual del servidor articuloViewModel.Articulo.FechaCreacion = DateTime.Now.ToString(); _contenedorTrabajo.Articulo.Update(articuloViewModel.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { // Imagen ya existe pero NO se va ha reemplazar // conservar la imagen que ya esta en la BD articuloViewModel.Articulo.UrlImagen = articulosFromDb.UrlImagen; } _contenedorTrabajo.Articulo.Update(articuloViewModel.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } return(View()); }
private void SubirImagenes(ArticuloViewModel model) { if (model.ImagenPreguntaFile != null) { FileUploadHelper.SubirImagenArticulo(model.ImagenPreguntaFile, 1200, 370, Server.MapPath(Url.Content("~/Imagenes/")) + model.Articulo.ArticuloId + "_xl.jpg"); FileUploadHelper.SubirImagenArticulo(model.ImagenPreguntaFile, 800, 640, Server.MapPath(Url.Content("~/Imagenes/")) + model.Articulo.ArticuloId + "_l.jpg"); FileUploadHelper.SubirImagenArticulo(model.ImagenPreguntaFile, 370, 320, Server.MapPath(Url.Content("~/Imagenes/")) + model.Articulo.ArticuloId + "_m.jpg"); FileUploadHelper.SubirImagenArticulo(model.ImagenPreguntaFile, 100, 76, Server.MapPath(Url.Content("~/Imagenes/")) + model.Articulo.ArticuloId + "_s.jpg"); } }
public IActionResult Create() { var data = new ArticuloViewModel { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; return(View(data)); }
public IActionResult Compras() { CheckoutMpService checkout = new CheckoutMpService(); ArticuloViewModel articulo = new ArticuloViewModel() { }; articulo.Id = checkout.CrearPreferencia(articulo); return(View(articulo)); }
// GET: Articulo/Delete/5 public ActionResult Delete(int id) { ArticuloViewModel usu = null; SessionInitialize(); ArticuloEN usuEN = new ArticuloCAD(session).ReadOIDDefault(id); usu = new AssemblerArticulo().ConvertENToModelUI(usuEN); SessionClose(); return(View(usu)); }
public IActionResult Create() { //instaciamos el viewmodel para poder obtener la informacion de categoria ArticuloViewModel articuloViewModel = new ArticuloViewModel() { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; return(View(articuloViewModel)); }
public IActionResult Edit(ArticuloViewModel articuloViewModel) { if (ModelState.IsValid) { #region SUBIR IMAGEN string rutaPrincipal = _hostingEnvironment.WebRootPath; // wwwroot var archivos = HttpContext.Request.Form.Files; //obtener por su id el articulo var articuloDesdeDb = _contenedorTrabajo.Articulo.Get(articuloViewModel.Articulo.Id); if (archivos.Count() > 0) { //Editar 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('\\')); //Remplazar imagen 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); } articuloViewModel.Articulo.UrlImagen = @"\imagenes\articulos\" + nombreArchivo + nuevaExtension; articuloViewModel.Articulo.FechaCreacion = DateTime.Now.ToString(); #endregion //guardar _contenedorTrabajo.Articulo.Update(articuloViewModel.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } else { //cuando la imagen ya existe y no se reemplaza, debe conservar la que ya tiene articuloViewModel.Articulo.UrlImagen = articuloDesdeDb.UrlImagen; //guardar _contenedorTrabajo.Articulo.Update(articuloViewModel.Articulo); _contenedorTrabajo.Save(); return(RedirectToAction(nameof(Index))); } } return(View()); }
public ActionResult Delete(ArticuloViewModel articulo) { try { ArticuloCEN art = new ArticuloCEN(); art.Destroy(articulo.id); return(RedirectToAction("Index")); } catch { return(View()); } }
private void ActualizarCuerpo(ArticuloViewModel model) { model.Articulo.Cuerpo = FileUploadHelper.ActualizarImagenesCuerpo(model.Articulo.Cuerpo, model.Articulo.ArticuloId, "Imagenes/"); model.Articulo.CuerpoResumen = HtmlTextHelper.QuitarEtiquetas(model.Articulo.Cuerpo); if (model.Articulo.CuerpoResumen.Length > 100) { model.Articulo.CuerpoResumen = model.Articulo.CuerpoResumen.Substring(0, 100); } db.Entry(model.Articulo).State = EntityState.Modified; db.SaveChanges(); }
public ActionResult Edit(ArticuloViewModel articulo) { try { ArticuloCEN art = new ArticuloCEN(); art.Modify(articulo.id, articulo.Nombre, articulo.Stock, articulo.Precio, articulo.ValMedia, articulo.Descripcion, articulo.Imagen, articulo.Marca); return(RedirectToAction("Index")); } catch { return(View()); } }
public async Task <IActionResult> ModificarArticulo([FromBody] ArticuloViewModel datos) { try { var response = await _articulo.ModificarArticulo(datos); return(Ok(response)); } catch (Exception e) { return(BadRequest(e.Message)); } }
public ArticuloViewModel Modificar(ArticuloViewModel articulo) { Articulo art = ArticuloFromViewModel(articulo); var tags = art.Tags; art = _articuloService.Modificar(art, ContextoApp.Usuario.NombreUsuario); return(new ArticuloViewModel() { Id = art.Id }); }
public IActionResult Edit(int?id) { ArticuloViewModel articuloViewModel = new ArticuloViewModel() { Articulo = new Modelos.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; if (id != null) { articuloViewModel.Articulo = _contenedorTrabajo.Articulo.Get(id.GetValueOrDefault()); } return(View(articuloViewModel)); }
private Articulo ToProduct(ArticuloViewModel view, string path) { return(new Articulo { Id = view.Id, ImageUrl = path, Nombre = view.Nombre, TipoArticulo = view.TipoArticulo, InfoArticulo = view.InfoArticulo, Status = view.Status, Stock = view.Stock, User = view.User }); }
public IActionResult Edit(int?id) { //instaciamos el viewmodel para poder obtener la informacion de categoria ArticuloViewModel articuloViewModel = new ArticuloViewModel() { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; if (id != null) { articuloViewModel.Articulo = _contenedorTrabajo.Articulo.Get(id.GetValueOrDefault()); } return(View(articuloViewModel)); }
public IActionResult Edit(int?id) { var model = new ArticuloViewModel { Articulo = new Models.Articulo(), ListaCategorias = _contenedorTrabajo.Categoria.GetListaCategorias() }; if (id != null) { model.Articulo = _contenedorTrabajo.Articulo.Get(id.GetValueOrDefault()); return(View(model)); } return(NotFound()); }
// GET: Articulo/Delete/5 public ActionResult Delete(int? id) { //TODO: mostrar imagen miniatura if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Articulo articulo = db.Articulo.Find(id); if (articulo == null) { return HttpNotFound(); } var model = new ArticuloViewModel(); model.codigo = articulo.codigo; model.descripcion = articulo.descripcion; model.id = articulo.id; model.imagen = articulo.imagen; var precios = db.ArticuloPrecio.Where<ArticuloPrecio>(a => a.idArticulo == articulo.id).ToList(); var articuloPrecio = precios.OrderByDescending(p => p.timestamp).First(); model.precio = articuloPrecio.precio; model.moneda = articuloPrecio.moneda; return View(model); }
// GET: Articulo public ActionResult Index() { //TODO: mostrar imagen miniatura //TODO: Export a exel //TODO: Agregar stock por ubicacion o consolidado con un desplegable que muestre cantidad por ubicacion. List<ArticuloViewModel> models = new List<ArticuloViewModel>(); List<Articulo> articulos = db.Articulo.Where<Articulo>(a => a.activo == true).ToList(); foreach (var art in articulos) { var model = new ArticuloViewModel(); model.codigo = art.codigo; model.descripcion = art.descripcion; model.id = art.id; model.imagen = art.imagen; var precios = db.ArticuloPrecio.Where<ArticuloPrecio>(a => a.idArticulo == art.id).ToList(); var articuloPrecio = precios.OrderByDescending(p => p.timestamp).First(); model.precio = articuloPrecio.precio; model.moneda = articuloPrecio.moneda; models.Add(model); } return View(models); }