Пример #1
0
        public static List <DetalleFacturacion> LeerFacturacion()
        {
            var reader = new StreamReader(File.OpenRead(@"BD\2_facturacion_comercial.csv"));
            List <DetalleFacturacion> list = new List <DetalleFacturacion>();

            var line = reader.ReadLine(); //Cabecera

            while (!reader.EndOfStream)
            {
                line = reader.ReadLine();
                var   values           = line.Split(',');
                int   numComercial     = int.Parse(values[0]);
                int   numEmpresa       = int.Parse(values[1]);
                int[] listaFacturacion = new int[12];

                for (int i = 2; i < 14; i++)
                {
                    listaFacturacion[i - 2] = int.Parse(values[i]);
                }

                DetalleFacturacion unDetalleFacturacion = new DetalleFacturacion(numComercial, numEmpresa, listaFacturacion);
                list.Add(unDetalleFacturacion);
            }
            return(list);
        }
Пример #2
0
        public ActionResult Facturacion(FacturacionVM f)
        {
            using (var dc = new DataContext())
            {
                var queryStock = dc.Stocks
                                 .Where(p => p.ProductoID
                                        .Equals(f.ProductoID))
                                 .Select(p => p.Existencia)
                                 .FirstOrDefault()
                                 .ToString();

                if (int.Parse(queryStock) < f.Cantidad)
                {
                    return(RedirectToAction("FacturacionError"));
                }
                else
                {
                    var queryStocks        = dc.Stocks.Where(st => st.ProductoID.Equals(f.ProductoID));
                    var queryNombreCliente = from c in dc.Clientes where c.ID.Equals(f.ClienteID) select c.Nombre;
                    var qNC = queryNombreCliente.FirstOrDefault().ToString();
                    var queryNombreProducto = from p in dc.Productos where p.ID.Equals(f.ProductoID) select p.Nombre;
                    var qNP = queryNombreProducto.FirstOrDefault().ToString();

                    var factura = new Facturacion()
                    {
                        ClienteID     = f.ClienteID,
                        NombreCliente = qNC,
                        Fecha         = DateTime.Now
                    };

                    var detalleFact = new DetalleFacturacion()
                    {
                        FacturacionID  = factura.ID,
                        ProductoID     = f.ProductoID,
                        NombreProducto = qNP,
                        Cantidad       = f.Cantidad,
                        Total          = Total(f.ClienteID, f.ProductoID, f.Cantidad),
                        Descuento      = Descuento(f.ProductoID, f.ClienteID, f.Cantidad)
                                         //Descuento = double.Parse(Descuento(f.ClienteID)),
                    };



                    foreach (var i in queryStocks)
                    {
                        i.Existencia -= f.Cantidad;
                    }

                    dc.Facturaciones.Add(factura);
                    dc.DetalleFacturaciones.Add(detalleFact);
                    dc.SaveChanges();
                    ViewBag.Clientes  = dc.Clientes.ToList();
                    ViewBag.Productos = dc.Productos.ToList();
                    var tablaFactura = dc.Facturaciones.ToList();
                    ViewBag.tablaFactura = tablaFactura;
                    return(View());
                }
            }
        }
Пример #3
0
        public int[] FacturacionPorEmpresa(int numComercial, int numEmpresa)
        {
            List <DetalleFacturacion> listaDetalles = LeerFacturacion();

            int[] facturacion = new int[12];

            for (int i = 0; i < listaDetalles.Count; i++)
            {
                DetalleFacturacion unDetalle = listaDetalles[i];
                if (unDetalle.NumComercial == numComercial)
                {
                    if (unDetalle.NumEmpresa == numEmpresa)
                    {
                        return(facturacion = unDetalle.Arrayfacturacion);
                    }
                }
            }
            return(facturacion);
        }