private async Task CargarDatosCajaAbiertaAsync() { Task <List <MovimientoMonto> > egresos = Task.Run(() => GastoService.Saldo(FechaApertura)); Task <List <MovimientoMonto> > ingresos = Task.Run(() => VentaService.Saldo(FechaApertura)); await Task.WhenAll(egresos, ingresos); List <Ingresos> ingresosModel = new List <Ingresos>(); ingresosModel.AddRange(ingresos.Result.Select(x => new Ingresos(x.Id, cierreCajaModel.Id, x.ModificaCaja, x.Concepto, x.Monto))); cierreCajaModel.AgregarIngresos(ingresosModel); List <Egresos> egresosModel = new List <Egresos>(); egresosModel.AddRange(egresos.Result.Select(x => new Egresos(x.Id, cierreCajaModel.Id, x.ModificaCaja, x.Concepto, x.Monto))); cierreCajaModel.AgregarEgresos(egresosModel); }
private static async Task CerrarCaja(CierreCaja cierreCaja) { Task <List <MovimientoMonto> > gastoSaldo = Task.Run(() => GastoService.Saldo(DateTime.Now)); Task <List <MovimientoMonto> > ventaSaldo = Task.Run(() => VentaService.Saldo(DateTime.Now)); await Task.WhenAll(gastoSaldo, ventaSaldo); List <Ingresos> ingresos = new List <Ingresos>(); ingresos.AddRange(ventaSaldo.Result.Select(x => new Ingresos(x.Id, cierreCaja.Id, x.ModificaCaja, x.Concepto, x.Monto))); cierreCaja.AgregarIngresos(ingresos); List <Egresos> egresos = new List <Egresos>(); egresos.AddRange(gastoSaldo.Result.Select(x => new Egresos(x.Id, cierreCaja.Id, x.ModificaCaja, x.Concepto, x.Monto))); cierreCaja.AgregarEgresos(egresos); decimal montoEnCaja = ingresos.Where(x => x.ModificaCaja).Sum(x => x.Monto); cierreCaja.Cerrar("Automático", montoEnCaja); }