예제 #1
0
        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);
        }
예제 #2
0
        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);
        }
예제 #3
0
        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);
        }
        public static bool Modificar(Compras Compra)
        {
            Contexto Database = new Contexto();
            bool     paso     = false;

            try
            {
                var anterior = ComprasController.Buscar(Compra.CompraId);

                foreach (var item in Compra.ListaProductos)
                {
                    if (item.ID == 0)
                    {
                        Database.Entry(item).State = EntityState.Added;
                        var productos = ProductosController.Buscar(item.ProductoId);
                        productos.Cantidad += item.Cantidad;
                        ProductosController.Guardar(productos);
                    }
                }

                foreach (var item in anterior.ListaProductos)
                {
                    if (!Compra.ListaProductos.Any(Q => Q.ID == item.ID))
                    {
                        Database.Entry(item).State = EntityState.Deleted;
                        var productos = ProductosController.Buscar(item.ProductoId);
                        productos.Cantidad -= item.Cantidad;
                        ProductosController.Guardar(productos);
                    }
                }

                Database.Entry(Compra).State = EntityState.Modified;
                paso = Database.SaveChanges() > 0;
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                Database.Dispose();
            }

            return(paso);
        }