Beispiel #1
0
        public ActionResult ReporteGastosGeneralesPrint(ReporteGastosGeneralesViewModel vVM)
        {
            vVM.FechaHasta = vVM.FechaHasta.AddDays(1);

            var MovimientosDeEfectivoDelPeriodo = _movimientosEfectivoServicios.GetAllBySucursalRangoFecha(sucID, vVM.FechaDesde, vVM.FechaHasta);
            var PagosDelPeriodo = _pagosServicios.GetAllBySucursalRangoFechas(sucID, vVM.FechaDesde, vVM.FechaHasta);

            //Por cada día instancio un detalleVM
            var dias = (vVM.FechaHasta - vVM.FechaDesde).Days;

            for (int i = 0; i < dias; i++)
            {
                ReporteGastosGeneralesDetalleViewModel detalleVM = new ReporteGastosGeneralesDetalleViewModel();
                detalleVM.Fecha = vVM.FechaDesde.AddDays(i);
                var MovimientosDeEfectivoDelDia = MovimientosDeEfectivoDelPeriodo.Where(x => x.Fecha.Date == detalleVM.Fecha.Date).ToList();
                var PagosDelDia = PagosDelPeriodo.Where(x => x.Venta.FechaVenta.Date == detalleVM.Fecha.Date).ToList();
                detalleVM.TotalGastos             = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Proveedores" || x.TipoMovimiento.Categoria.Nombre == "Varios" && x.TipoMovimiento.Suma == false).Sum(x => x.Monto);
                detalleVM.TotalSueldos            = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Sueldos").Sum(x => x.Monto);
                detalleVM.TotalVentasEfectivo     = PagosDelDia.Where(x => x.FormaDePago.Nombre == "Efectivo").Sum(x => x.Monto);
                detalleVM.TotalIngresosPorTarjeta = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Ingresos por Tarjeta").Sum(x => x.Monto);

                vVM.Detalle.Add(detalleVM);
            }

            vVM.FechaHasta = vVM.FechaHasta.AddDays(-1);
            var suc = _sucursalesServicios.GetOne(sucID);

            vVM.CabeceraReporte = suc.Nombre + " (Desde: " + vVM.FechaDesde.ToShortDateString() + " Hasta: " + vVM.FechaHasta.ToShortDateString() + ")";
            return(View(vVM));
        }
Beispiel #2
0
        //[HttpPost]
        //public ActionResult ReporteGastosGeneralesPrint(ReporteGastosGeneralesViewModel vVM)
        //{
        //    var suc = _sucursalesServicios.GetOne(sucID);
        //    vVM.Sucursal = suc;
        //    vVM.CabeceraReporte = suc.Nombre + " (Desde: " + vVM.FechaDesde.ToShortDateString() + " Hasta: " + vVM.FechaHasta.ToShortDateString() + ")";
        //    var cierres = _cierresCajaServicios.GetAll().Where(a => a.FechaCierreCaja <= vVM.FechaHasta && a.FechaCierreCaja >= vVM.FechaDesde && a.SucursalID == sucID).ToList().GroupBy(b => b.FechaCierreCaja);
        //    foreach (var dia in cierres)
        //    {
        //        CierreCaja c = new CierreCaja();
        //        c.FechaCierreCaja = dia.FirstOrDefault().FechaCierreCaja;
        //        c.TotalProveedores = dia.Sum(a => a.TotalProveedores);
        //        c.TotalSueldos = dia.Sum(a => a.TotalSueldos);
        //        c.TotalVarios = dia.Sum(a => a.TotalVarios);
        //        c.TotalVentasEfectivo = dia.Sum(a => a.TotalVentasEfectivo);
        //        c.TotalVentasTarjetas = dia.Sum(a => a.TotalVentasTarjetas);
        //        vVM.Cierres.Add(c);
        //    }

        //    return View(vVM);
        //}

        //public ActionResult ReporteGastosGenerales()
        //{
        //    if (!ValidarUsuario(1, 2)) return RedirectToAction("ErrorPermisos", "Base");

        //    ReporteGastosGeneralesViewModel vVM = new ReporteGastosGeneralesViewModel();

        //    vVM.FechaDesde = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
        //    vVM.FechaHasta = vVM.FechaDesde.AddMonths(1).AddDays(-1);

        //    var cierres = _cierresCajaServicios.GetAll().Where(a => a.FechaCierreCaja <= vVM.FechaHasta && a.FechaCierreCaja >= vVM.FechaDesde && a.SucursalID == sucID).ToList().GroupBy(b=>b.FechaCierreCaja);
        //    var suc = _sucursalesServicios.GetOne(sucID);
        //    vVM.Sucursal = suc;
        //    vVM.CabeceraReporte = suc.Nombre + " (Desde: " + vVM.FechaDesde.ToShortDateString() + " Hasta: " + vVM.FechaHasta.ToShortDateString() + ")";
        //    foreach (var dia in cierres)
        //    {
        //        CierreCaja c = new CierreCaja();
        //        c.FechaCierreCaja = dia.FirstOrDefault().FechaCierreCaja;
        //        c.TotalProveedores = dia.Sum(a => a.TotalProveedores);
        //        c.TotalSueldos = dia.Sum(a => a.TotalSueldos);
        //        c.TotalVarios = dia.Sum(a => a.TotalVarios);
        //        c.TotalVentasEfectivo = dia.Sum(a => a.TotalVentasEfectivo);
        //        c.TotalVentasTarjetas = dia.Sum(a => a.TotalVentasTarjetas);
        //        vVM.Cierres.Add(c);
        //    }

        //    return View(vVM);
        //}

        public ActionResult ReporteGastosGenerales()
        {
            if (!ValidarUsuario(1, 2))
            {
                return(RedirectToAction("ErrorPermisos", "Base"));
            }

            ReporteGastosGeneralesViewModel vVM = new ReporteGastosGeneralesViewModel();

            vVM.FechaDesde = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
            vVM.FechaHasta = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day).AddDays(1);

            var MovimientosDeEfectivoDelPeriodo = _movimientosEfectivoServicios.GetAllBySucursalRangoFecha(sucID, vVM.FechaDesde, vVM.FechaHasta);
            var PagosDelPeriodo = _pagosServicios.GetAllBySucursalRangoFechas(sucID, vVM.FechaDesde, vVM.FechaHasta);

            //Por cada día instancio un detalleVM
            var dias = (vVM.FechaHasta - vVM.FechaDesde).Days;

            for (int i = 0; i < dias; i++)
            {
                ReporteGastosGeneralesDetalleViewModel detalleVM = new ReporteGastosGeneralesDetalleViewModel();
                detalleVM.Fecha = vVM.FechaDesde.AddDays(i);
                var MovimientosDeEfectivoDelDia = MovimientosDeEfectivoDelPeriodo.Where(x => x.Fecha.Date == detalleVM.Fecha.Date).ToList();
                var PagosDelDia = PagosDelPeriodo.Where(x => x.Venta.FechaVenta.Date == detalleVM.Fecha.Date).ToList();
                detalleVM.TotalGastos             = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Proveedores" || x.TipoMovimiento.Categoria.Nombre == "Varios" && x.TipoMovimiento.Suma == false).Sum(x => x.Monto);
                detalleVM.TotalSueldos            = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Sueldos").Sum(x => x.Monto);
                detalleVM.TotalVentasEfectivo     = PagosDelDia.Where(x => x.FormaDePago.Nombre == "Efectivo").Sum(x => x.Monto);
                detalleVM.TotalIngresosPorTarjeta = MovimientosDeEfectivoDelDia.Where(x => x.TipoMovimiento.Categoria.Nombre == "Ingresos por Tarjeta").Sum(x => x.Monto);

                vVM.Detalle.Add(detalleVM);
            }

            vVM.FechaHasta = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
            return(View(vVM));
        }