private bool Modificar(Pagos pagos) { bool paso = false; Contexto db = new Contexto(); ComprasControllers comprasControllers = new ComprasControllers(); try { var anterior = Buscar(pagos.PagoId); foreach (var item in anterior.PagosDetalles) { var compras = comprasControllers.Buscar(item.CompraId); compras.Balance += item.Pago; comprasControllers.Guardar(compras); } foreach (var item in pagos.PagosDetalles) { if (item.Id == 0) { db.Entry(item).State = EntityState.Added; } } foreach (var item in anterior.PagosDetalles) { if (!pagos.PagosDetalles.Any(A => A.Id == item.Id)) { db.Entry(item).State = EntityState.Deleted; } } db.Entry(pagos).State = EntityState.Modified; paso = db.SaveChanges() > 0; foreach (var item in pagos.PagosDetalles) { var compras = comprasControllers.Buscar(item.CompraId); compras.Balance -= item.Pago; if (compras.Balance < 0) { compras.Balance = 0; } comprasControllers.Guardar(compras); } } catch (Exception) { throw; } return(paso); }
private bool Insertar(Pagos pagos) { bool paso = false; Contexto db = new Contexto(); ComprasControllers comprasControllers = new ComprasControllers(); try { foreach (var item in pagos.PagosDetalles) { Compras compras = comprasControllers.Buscar(item.CompraId); compras.Balance -= item.Pago; if (compras.Balance < 0) { compras.Balance = 0; } comprasControllers.Guardar(compras); } db.Pagos.Add(pagos); paso = db.SaveChanges() > 0; } catch (Exception) { throw; } return(paso); }
public bool Eliminar(int id) { bool paso = false; Contexto db = new Contexto(); ComprasControllers comprasControllers = new ComprasControllers(); try { Pagos pagos = Buscar(id); if (pagos != null) { foreach (var item in pagos.PagosDetalles) { Compras compras = comprasControllers.Buscar(item.CompraId); compras.Balance += item.Pago; comprasControllers.Guardar(compras); } db.Entry(pagos).State = EntityState.Deleted; paso = db.SaveChanges() > 0; } } catch (Exception) { throw; } return(paso); }