private static bool Insertar(Pagos entity) { Contexto db = new Contexto(); bool paso = false; try { foreach (var pago in entity.Detalle) { var compra = ComprasController.Buscar(pago.CompraId); compra.Balance -= pago.ValorPagado; ComprasController.Guardar(compra); } db.Pagos.Add(entity); paso = db.SaveChanges() > 0; } catch (Exception) { throw; } finally { db.Dispose(); } return(paso); }
public static bool Eliminar(int Id) { bool paso = false; Contexto db = new Contexto(); try { Pagos pago = Buscar(Id); if (pago != null) { foreach (var pagos in pago.Detalle) { var compra = ComprasController.Buscar(pagos.CompraId); compra.Balance += pagos.ValorPagado; ComprasController.Guardar(compra); } db.Entry(pago).State = EntityState.Deleted; paso = db.SaveChanges() > 0; } } catch (Exception) { throw; } finally { db.Dispose(); } return(paso); }
private static bool Modificar(Pagos entity) { Contexto db = new Contexto(); bool paso = false; try { var anterior = Buscar(entity.PagoId); foreach (var pago in entity.Detalle) { if (pago.PagoDetalleId == 0) { db.Entry(pago).State = EntityState.Added; var compra = ComprasController.Buscar(pago.CompraId); compra.Balance -= pago.ValorPagado; ComprasController.Guardar(compra); } } foreach (var pago in anterior.Detalle) { if (!entity.Detalle.Any(A => A.PagoDetalleId == pago.PagoDetalleId)) { db.Entry(pago).State = EntityState.Deleted; var compra = ComprasController.Buscar(pago.CompraId); compra.Balance += pago.ValorPagado; ComprasController.Guardar(compra); } } db.Entry(entity).State = EntityState.Modified; paso = db.SaveChanges() > 0; } catch (Exception) { throw; } finally { db.Dispose(); } return(paso); }