예제 #1
0
        public MaterialesUtilizados(PeriodoModel periodo)
        {
            InitializeComponent();

            var db = new PvraDataEntities();

            var materiales = from m in db.SalidaMateriales
                             where m.Fecha >= periodo.FechaInicio && m.Fecha <= periodo.FechaFin
                             group m by m.InvertarioMateriales.Material
                             into pGroup
                             select new
            {
                Material = pGroup.Key,
                Colores  = from c in pGroup
                           group c by c.InvertarioMateriales.Color into cGroup
                           select new
                {
                    Color    = cGroup.Key,
                    Cantidad = cGroup.Sum(u => u.Cantidad),
                    Importe  = cGroup.Sum(p => p.InvertarioMateriales.Precio * p.Cantidad)
                }
            };

            var result = new List <MaterialModel>();

            foreach (var p in materiales)
            {
                foreach (var c in p.Colores)
                {
                    result.Add(new MaterialModel()
                    {
                        Material = p.Material.DescripcionCompleta + " Color: " + c.Color.DescricionCompleta, Cantidad = c.Cantidad, Importe = c.Importe
                    });
                }
            }



            periodoLabel.Text = "Desde: " + periodo.FechaInicio.ToShortDateString() + " hasta: " +
                                periodo.FechaFin.ToShortDateString();

            DataSource = result;

            this.materiaPrimaCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Material")
            });

            this.cantidadCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Cantidad")
            });

            this.importeCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Importe")
            });

            totalCantidadCell.Text = result.Sum(i => i.Cantidad).ToString();
            totalImporteCell.Text  = result.Sum(i => i.Importe).ToString();
        }
예제 #2
0
        public SalarioPorTrabajador(PeriodoModel periodo)
        {
            InitializeComponent();
            var db = new PvraDataEntities();


            var trabajadores = from m in db.CostoProducciones
                               where m.Fecha >= periodo.FechaInicio && m.Fecha <= periodo.FechaFin
                               group m by m.Persona_Trabajador
                               into pGroup
                               select new
            {
                Trabajador = pGroup.Key,
                Trabajos   = from c in pGroup
                             group c by c.ConceptoCosto into cGroup
                             select new
                {
                    Trabajo = cGroup.Key,
                    Importe = cGroup.Sum(u => u.Importe)
                }
            };

            var result = new List <TrabajadorProveedorModel>();

            foreach (var p in trabajadores)
            {
                var lista = new List <TrabajoModel>();
                foreach (var m in p.Trabajos)
                {
                    lista.Add(new TrabajoModel()
                    {
                        Trabajo = m.Trabajo.Nombre, Importe = m.Importe
                    });
                }
                result.Add(new TrabajadorProveedorModel()
                {
                    Trabajador = p.Trabajador.NombreApellidos,
                    Trabajos   = lista
                });
            }



            periodoLabel.Text = "Desde: " + periodo.FechaInicio.ToShortDateString() + " hasta: " +
                                periodo.FechaFin.ToShortDateString();

            DataSource = result;

            xrSubreport1.ReportSource = new TrabajoSubReport();

            this.proveedorLabel.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Trabajador")
            });
        }
        public CostoDeProductosEnPeriodo(PeriodoModel periodo)
        {
            InitializeComponent();
            var db = new PvraDataEntities();

            var productos = from v in db.EntradaProductos
                            where v.Fecha >= periodo.FechaInicio && v.Fecha <= periodo.FechaFin
                            group v by v.Producto
                            into vGroup
                            select new
            {
                Producto = vGroup.Key,
                Colores  = from c in vGroup
                           group c by c.Color into cGroup
                           select new
                {
                    Color    = cGroup.Key,
                    Cantidad = cGroup.Sum(p => p.Cantidad),
                    Costo    = cGroup.Sum(p => p.Importe)
                }
            };


            var result = new List <CostoProductoModel>();

            foreach (var p in productos)
            {
                result.AddRange(p.Colores.Select(c => new CostoProductoModel()
                {
                    Producto = p.Producto.DescripcionCompleta + " Color: " + c.Color.DescricionCompleta, Cantidad = c.Cantidad, Costo = c.Costo
                }));
            }

            periodoLabel.Text = "Desde: " + periodo.FechaInicio.ToShortDateString() + " hasta: " +
                                periodo.FechaFin.ToShortDateString();

            DataSource = result.ToList();

            this.productoCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Producto")
            });

            this.cantidadCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Cantidad")
            });

            this.costoCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Costo")
            });

            totalCantidadCell.Text = result.Sum(p => p.Cantidad).ToString();
            totalCostoCell.Text    = result.Sum(p => p.Costo).ToString();
        }
예제 #4
0
        public VentasPorTrabajador(PeriodoModel periodo)
        {
            InitializeComponent();
            var db = new PvraDataEntities();

            var productos = from s in db.Ventas
                            where s.Fecha >= periodo.FechaInicio && s.Fecha <= periodo.FechaFin
                            group s by s.Persona_Trabajador
                            into sGroup
                            select new
            {
                Trabajador = sGroup.Key,
                Cantidad   = sGroup.Sum(p => p.Cantidad),
                Costo      = sGroup.Sum(p => p.Importe)
            };


            DataSource = productos.ToList();

            periodoLabel.Text = "Desde: " + periodo.FechaInicio.ToShortDateString() + " hasta " + periodo.FechaFin.ToShortDateString();

            this.productoCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Trabajador.NombreApellidos")
            });

            this.cantidadCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Cantidad")
            });

            this.importeCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Costo")
            });

            totalCantidadCell.Text = productos.Sum(p => p.Cantidad).ToString();
            importeTotalCell.Text  = productos.Sum(p => p.Costo).ToString();
        }
예제 #5
0
        public MaterialesPorProveedor(PeriodoModel periodo)
        {
            InitializeComponent();
            var db = new PvraDataEntities();


            var materiales = from m in db.CompraMateriales
                             where m.Fecha >= periodo.FechaInicio && m.Fecha <= periodo.FechaFin
                             group m by m.Persona_Proveedor
                             into pGroup
                             select new
            {
                Proveedor  = pGroup.Key,
                Materiales = from mat in pGroup
                             group mat by mat.Material into mGroup
                             select new
                {
                    Material = mGroup.Key,
                    Colores  = from c in mGroup
                               group c by c.Color into cGroup
                               select new
                    {
                        Color    = cGroup.Key,
                        Cantidad = cGroup.Sum(u => u.Cantidad),
                        Importe  = cGroup.Sum(u => u.Importe)
                    }
                }
            };

            var result = new List <MaterialProveedorModel>();

            foreach (var p in materiales)
            {
                foreach (var m in p.Materiales)
                {
                    var lista = new List <MaterialModel>();
                    foreach (var c in m.Colores)
                    {
                        lista.Add(new MaterialModel()
                        {
                            Material = m.Material.DescripcionCompleta + " Color: " + c.Color.DescricionCompleta, Cantidad = c.Cantidad, Importe = c.Importe
                        });
                    }
                    result.Add(new MaterialProveedorModel()
                    {
                        Proveedor  = p.Proveedor.NombreApellidos,
                        Materiales = lista
                    });
                }
            }



            periodoLabel.Text = "Desde: " + periodo.FechaInicio.ToShortDateString() + " hasta: " +
                                periodo.FechaFin.ToShortDateString();

            DataSource = result;

            xrSubreport1.ReportSource = new MaterialesSubReport();

            this.proveedorLabel.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "Proveedor")
            });
        }
예제 #6
0
 public ActionResult CostoDeProductos(PeriodoModel periodo)
 {
     report = new CostoDeProductosEnPeriodo(periodo);
     return(View("Plantilla"));
 }
예제 #7
0
 public ActionResult ProductosVendidos(PeriodoModel periodo)
 {
     report = new ProductosVendidosEnPeriodo(periodo);
     return(View("Plantilla"));
 }
예제 #8
0
 public ActionResult TrabajadoresVentas(PeriodoModel periodo)
 {
     report = new VentasPorTrabajador(periodo);
     return(View("Plantilla"));
 }
예제 #9
0
 public ActionResult MaterialesUtilizados(PeriodoModel periodo)
 {
     report = new MaterialesUtilizados(periodo);
     return(View("Plantilla"));
 }
예제 #10
0
 public ActionResult MaterialesPorProveedor(PeriodoModel periodo)
 {
     report = new MaterialesPorProveedor(periodo);
     return(View("Plantilla"));
 }
예제 #11
0
 public ActionResult SalariosPagados(PeriodoModel periodo)
 {
     report = new SalarioPorTrabajador(periodo);
     return(View("Plantilla"));
 }
예제 #12
0
 public Periodos(string idConjunto)
 {
     InitializeComponent();
     this.idConjunto = idConjunto;
     BindingContext  = new PeriodoModel(idConjunto);
 }