示例#1
0
        public FichaDeCosto(int menuId)
        {
            InitializeComponent();

            var db = new ErpContext();
            var _productoService = new ProductoService(db);
            var menu             = db.Set <Elaboracion>().Find(menuId);

            //compras
            nombreMenu.Text = menu.Nombre;

            var productosData = menu.Productos.Select(p => new
            {
                Producto = p.Producto.Nombre,
                p.Cantidad,
                UnidadDeMedida = p.UnidadDeMedida.Siglas,
                Costo          = p.Cantidad * _productoService.GetPrecioUnitarioDeProducto(p.ProductoId, p.UnidadDeMedidaId)
            });

            ProductosReport.DataSource = productosData;

            this.produtoCell.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.uMCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "UnidadDeMedida")
            });

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


            costoTotalCell.Text = String.Format("{0:C}", productosData.Sum(c => c.Costo));

            //ventas

            AgregosReport.DataSource = menu.Agregados;

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

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

            this.agregoUmCell.DataBindings.AddRange(new DevExpress.XtraReports.UI.XRBinding[] {
                new DevExpress.XtraReports.UI.XRBinding("Text", null, "UnidadDeMedida.Siglas")
            });
        }
示例#2
0
        public PartialViewResult FichaDeCostoResumen(int id)
        {
            var elab   = _elaboracionService.Elaboraciones().Include(e => e.Productos).SingleOrDefault(e => e.Id == id);
            var costos = new Dictionary <int, decimal>();

            foreach (var detalle in elab.Productos)
            {
                var costo = _productoService.GetPrecioUnitarioDeProducto(detalle.ProductoId, detalle.UnidadDeMedidaId);
                costos.Add(detalle.ProductoId, costo);
            }
            ViewBag.Costos = costos;
            return(PartialView("_TablaFichaDeCostoPartial", elab));
        }