public async Task <IActionResult> RegistrarInventario(EquipoInventario equipoInventario) { if (ModelState.IsValid) { Equipo equipo = new Equipo { nombre = equipoInventario.nombre, marca = equipoInventario.marca, idCategoria = equipoInventario.idCategoria, codigo = equipoInventario.codigo, descripcion = equipoInventario.descripcion, imagen = equipoInventario.imagen }; Inventario inventario = new Inventario { fechaEntrada = equipoInventario.fechaEntrada, SKU = equipoInventario.SKU, cantidadReal = equipoInventario.cantidadReal, cantidadMaxima = equipoInventario.cantidadMaxima, cantidadMinima = equipoInventario.cantidadMinima, precioUnit = equipoInventario.precioUnit }; _context.Equipo.Add(equipo); inventario.idEquipo = equipo.idEquipo; _context.Inventario.Add(inventario); await _context.SaveChangesAsync(); return(RedirectToAction("MenuInventario", "Inventario")); } ViewData["idCategoria"] = new SelectList(_context.Categoria, "IdCategoria", "nombre", equipoInventario.idCategoria); return(View(equipoInventario)); }
public async Task <IActionResult> RegistrarEquipoInventario(EquipoInventario equipoInventario) { if (CodigoExists(equipoInventario.codigo)) { ModelState.AddModelError(string.Empty, "El código ingresado ya se encuentra registrado."); ViewData["codVal"] = "is-invalid"; } if (NombreExists(equipoInventario.nombre) && MarcaExists(equipoInventario.marca)) { ModelState.AddModelError(string.Empty, "Los datos del equipo ingresado ya se encuentran registrados."); ViewData["nomVal"] = "is-invalid"; ViewData["marVal"] = "is-invalid"; } if (SKUExists(equipoInventario.SKU)) { ModelState.AddModelError(string.Empty, "El SKU ingresado ya existe, intente otro por favor."); ViewData["skuVal"] = "is-invalid"; } if (equipoInventario.cantidadMaxima < equipoInventario.cantidadMinima) { ModelState.AddModelError(string.Empty, "El inventario máximo es incorrecto."); ViewData["maxVal"] = "is-invalid"; } if (equipoInventario.cantidadMinima > equipoInventario.cantidadMaxima) { ModelState.AddModelError(string.Empty, "El inventario mínimo es incorrecto."); ViewData["minVal"] = "is-invalid"; } if (equipoInventario.cantidadReal < equipoInventario.cantidadMinima || !(equipoInventario.cantidadReal <= equipoInventario.cantidadMaxima)) { ModelState.AddModelError(string.Empty, "La cantidad está fuera de los rangos permitidos."); ViewData["cantVal"] = "is-invalid"; } if (equipoInventario.precioUnit <= 0) { ModelState.AddModelError(string.Empty, "El precio unitario no puede ser negativo."); ViewData["precioVal"] = "is-invalid"; } if (ModelState.IsValid) { Equipo equipo = new Equipo { nombre = equipoInventario.nombre, marca = equipoInventario.marca, idCategoria = equipoInventario.idCategoria, codigo = equipoInventario.codigo, descripcion = equipoInventario.descripcion, imagen = equipoInventario.imagen }; Inventario inventario = new Inventario { fechaEntrada = equipoInventario.fechaEntrada, SKU = equipoInventario.SKU, cantidadReal = equipoInventario.cantidadReal, cantidadMaxima = equipoInventario.cantidadMaxima, cantidadMinima = equipoInventario.cantidadMinima, precioUnit = equipoInventario.precioUnit }; _context.Equipo.Add(equipo); inventario.idEquipo = equipo.idEquipo; inventario.nombre = equipo.nombre; inventario.marca = equipo.marca; _context.Inventario.Add(inventario); await _context.SaveChangesAsync(); return(RedirectToAction("MenuInventario", "Inventario")); } ViewData["idCategoria"] = new SelectList(_context.Categoria, "IdCategoria", "nombre", equipoInventario.idCategoria); return(View(equipoInventario)); }