public static bool GetList(Expression <Func <Factura, bool> > criterio, bool relaciones) { using (var db = new Repositorio <Factura>()) { if ((facturaReturnedList = db.GetList(criterio)) != null) { if (relaciones) { foreach (var factura in facturaReturnedList) { ClientesBLL.Buscar(x => x.ClienteId == factura.ClienteId, false); FormasDePagosBLL.Buscar(x => x.FormaDePagoId == factura.FormaDePagoId); factura.FormaDePago = FormasDePagosBLL.formaDePagoReturned; factura.Cliente = ClientesBLL.clienteReturned; factura.Productos.Count(); facturaReturned.Pagos.Count(); foreach (var producto in factura.Productos) { int id = producto.ProductoId; ProductosBLL.Buscar(x => x.ProductoId == id, true); producto.Producto = ProductosBLL.productoReturned; } } } return(true); } return(false); } }
public static void Modificar(Clientes cliente) { var db = new Parcial2Db(); db.Entry(cliente).State = EntityState.Modified; db.SaveChanges(); Lista = ClientesBLL.GetLista(); Lista = GetLista(); }
public static bool Modificar(Facturas Factura) { bool paso = false; Contexto contexto = new Contexto(); try { var factura = FacturasBLL.Buscar(Factura.FacturaId); if (factura != null) { foreach (var item in factura.Detalle) { contexto.Ropa.Find(item.RopaId).Inventario += item.Cantidad; if (!Factura.Detalle.ToList().Exists(v => v.Id == item.Id)) { item.Ropas = null; contexto.Entry(item).State = EntityState.Deleted; } } foreach (var item in Factura.Detalle) { contexto.Ropa.Find(item.RopaId).Inventario -= item.Cantidad; var estado = item.Id > 0 ? EntityState.Modified : EntityState.Added; contexto.Entry(item).State = estado; } Facturas Anterior = FacturasBLL.Buscar(Factura.FacturaId); //identificar la diferencia ya sea restada o sumada decimal diferencia; diferencia = Factura.Devuelta - Anterior.Devuelta; //aplicar diferencia al inventario Clientes Cliente = ClientesBLL.Buscar(Factura.ClienteId); Cliente.Devuelta += diferencia; ClientesBLL.Modificar(Cliente); contexto.Entry(Factura).State = EntityState.Modified; } if (contexto.SaveChanges() > 0) { paso = true; } contexto.Dispose(); } catch (Exception) { throw; } return(paso); }