public async Task <IActionResult> Create([Bind("Id,Nombre,NumGuia,Patente,Transporte,Conductor,RutConductor,Fecha,Temperatura, NumSello,PesoGuia")] Cliente cliente) { if (ModelState.IsValid) { _context.Add(cliente); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(cliente)); }
public async Task <IActionResult> Create([Bind("Producto,TipoProducto,UnidadSoportante,CantidadUS,Envase,KgNeto,IdCliente")] Carga carga) { if (ModelState.IsValid) { _context.Add(carga); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "Clientes")); } return(View(carga)); }
public async Task <IActionResult> Create([Bind("IdCarga,Producto,Envase,CantidadEnvases,KgEnvase,FolioExterno")] DetalleCarga detalleCarga) { var carga = _context.Carga.Where(m => m.Id == detalleCarga.IdCarga).FirstOrDefault(); int cantidadUS = Convert.ToInt32(carga.CantidadUS); var detallesCarga = _context.DetalleCarga.Where(dc => dc.IdCarga == carga.Id).ToList(); int cantDetalle = detallesCarga.Capacity; if (cantidadUS > cantDetalle) { if (ModelState.IsValid) { _context.Add(detalleCarga); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "Clientes")); } } return(RedirectToAction("Index", "Clientes")); }
public async Task <IActionResult> Delete(int id) { var lote = await _context.LotesParaDespacho.SingleOrDefaultAsync(m => m.Id == id); _context.LotesParaDespacho.Remove(lote); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "LotesParaDespachos")); }
public async Task <IActionResult> AddProducto(int id, [Bind("Id,NumGuia,FolioExterno,FolioInterno,Nombre,Envase,CantidadEnvases")] Producto producto) { if (id != producto.Id) { return(NotFound()); } var prd = _context.ProductosParaDespacho.SingleOrDefault(m => m.IdProducto == id); if (prd == null) { if (ModelState.IsValid) { try { _context.Database.ExecuteSqlCommand("Insert into ProductosParaDespacho Values(@NumGuia, @FolioExterno, @FolioInterno, @Nombre, @Envase, @CantidadEnvases, @IdProducto)", new SqlParameter("NumGuia", producto.NumGuia), new SqlParameter("FolioExterno", producto.FolioExterno), new SqlParameter("FolioInterno", producto.FolioInterno), new SqlParameter("Nombre", producto.Nombre), new SqlParameter("Envase", producto.Envase), new SqlParameter("CantidadEnvases", producto.CantidadEnvases), new SqlParameter("IdProducto", producto.Id) ); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProductoExists(producto.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> AddCarga(int id, [Bind("Id,Producto,TipoProducto,UnidadSoportante,CantidadUS,Envase,KgNeto,IdCliente")] Carga carga) { if (id != carga.Id) { return(NotFound()); } var crg = _context.LotesParaDespacho.SingleOrDefault(m => m.IdCarga == id); if (crg == null) { if (ModelState.IsValid) { try { _context.Database.ExecuteSqlCommand("Insert into LotesParaDespacho Values (@Nombre, @TipoProducto, @Envase, @IdCarga)", new SqlParameter("Nombre", carga.Producto), new SqlParameter("TipoProducto", carga.TipoProducto), new SqlParameter("Envase", carga.Envase), new SqlParameter("IdCarga", carga.Id) ); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CargaExists(carga.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Create([Bind("Id, Nombre, Patente, FechaDespacho, Temperatura, NumSello, IdOrden")] ClienteDespacho cliente) { var orden = _context.AsocDespachoProductos.LastOrDefault(); bool isDespachoLotes = false; if (orden.TipoDespacho.ToString().Equals("Despacho Lotes")) { isDespachoLotes = true; } cliente.IdOrden = orden.NumOrden; if (ModelState.IsValid) { _context.ClienteDespachos.Add(cliente); await _context.SaveChangesAsync(); var despachos = from AsocDespachoProductos in _context.AsocDespachoProductos join ClienteDespacho in _context.ClienteDespachos on AsocDespachoProductos.NumOrden equals ClienteDespacho.IdOrden select new { NumGuia = AsocDespachoProductos.NumGuia, FolioInterno = AsocDespachoProductos.FolioInterno, FolioExterno = AsocDespachoProductos.FolioExterno, NumOrden = AsocDespachoProductos.NumOrden, Cliente = ClienteDespacho.Nombre, TipoDespacho = AsocDespachoProductos.TipoDespacho, Producto = AsocDespachoProductos.Producto, CantidadEnvases = AsocDespachoProductos.CantidadEnvases }; foreach (var despacho in despachos.ToList()) { int NumGuia = Convert.ToInt32(despacho.NumGuia); int FolioInterno = Convert.ToInt32(despacho.FolioInterno); int FolioExterno = Convert.ToInt32(despacho.FolioExterno); int NumOrden = Convert.ToInt32(despacho.NumOrden); string Cliente = Convert.ToString(despacho.Cliente); string TipoDespacho = Convert.ToString(despacho.TipoDespacho); string Producto = Convert.ToString(despacho.Producto); int CantidadEnvases = Convert.ToInt32(despacho.CantidadEnvases); _context.Database.ExecuteSqlCommand("INSERT INTO Despacho VALUES (@NumGuia, @FolioInterno, @FolioExterno, @NumOrden, @Cliente," + "@TipoDespacho, @Producto, @CantidadEnvases)", new SqlParameter("NumGuia", NumGuia), new SqlParameter("FolioInterno", FolioInterno), new SqlParameter("FolioExterno", FolioExterno), new SqlParameter("NumOrden", NumOrden), new SqlParameter("Cliente", Cliente), new SqlParameter("TipoDespacho", TipoDespacho), new SqlParameter("Producto", Producto), new SqlParameter("CantidadEnvases", CantidadEnvases) ); var detalle = _context.DetalleCarga.FirstOrDefault(m => m.Id == FolioInterno); int idCarga = Convert.ToInt32(detalle.IdCarga); await _context.SaveChangesAsync(); _context.Database.ExecuteSqlCommand("Delete from ProductosParaDespacho Where FolioInterno = @FolioInterno", new SqlParameter("FolioInterno", FolioInterno) ); _context.Database.ExecuteSqlCommand("Delete from Producto Where FolioInterno = @FolioInterno", new SqlParameter("FolioInterno", FolioInterno) ); _context.Database.ExecuteSqlCommand("Delete from DetalleCarga Where Id = @FolioInterno", new SqlParameter("FolioInterno", FolioInterno) ); var detalles = _context.DetalleCarga.Where(m => m.IdCarga == idCarga).ToList(); var carga = _context.Carga.FirstOrDefault(m => m.Id == idCarga); if (detalles.Count() == 0) { _context.Carga.Remove(carga); await _context.SaveChangesAsync(); } await _context.SaveChangesAsync(); } if (isDespachoLotes) { var lotes = _context.LotesParaDespacho.ToList(); foreach (var lote in lotes) { int idCarga = Convert.ToInt32(lote.IdCarga); _context.LotesParaDespacho.Remove(lote); await _context.SaveChangesAsync(); var carga = _context.Carga.SingleOrDefault(m => m.Id == idCarga); _context.Carga.Remove(carga); await _context.SaveChangesAsync(); } } var productos = _context.AsocDespachoProductos.ToList(); _context.AsocDespachoProductos.RemoveRange(productos); await _context.SaveChangesAsync(); var clientes = _context.ClienteDespachos.ToList(); _context.ClienteDespachos.RemoveRange(clientes); await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Index))); }