Ejemplo n.º 1
0
 /// <summary>
 /// Constructor estatico
 /// </summary>
 static Stock()
 {
     listaProductosSoftware = ManejoBaseDeDatos.ObtenerProductosSoftware();
     listaProductosHardware = ManejoBaseDeDatos.ObtenerProductosHardware();
     ventasRealizadas       = DeserealizarArchivoVentas();
     clientes = DeserealizarArchivoClientes();
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Inserta un producto a la base de datos
        /// </summary>
        /// <param name="productos"></param>
        /// <param name="auxProducto"></param>
        /// <returns></returns>
        public static bool operator +(List <Hardware> productos, Hardware auxProducto)
        {
            bool exito;

            if (productos != auxProducto)
            {
                ManejoBaseDeDatos.InsertarHardware(auxProducto);
                exito = true;
            }
            else
            {
                exito = false;
                throw new Exception();
            }

            return(exito);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Descuenta la cantidad del producto elegido, actualiza los items en la base de datos y
        /// agrega la venta a la lista de ventas
        /// </summary>
        /// <param name="ventaAConfirmar"></param>
        public static void ConfirmarCompra(Venta ventaAConfirmar)
        {
            if (ventaAConfirmar != null)
            {
                //Descuento 1 la cantidad a los productos elegidos
                foreach (Producto item in ventaAConfirmar.ListaProductos)
                {
                    if (item.GetType() == typeof(Software))
                    {
                        Stock.ListaProductosSoftware[Stock.GetIndiceProducto((Software)item)].Cantidad--;
                    }
                    else
                    {
                        Stock.ListaProductosHardware[Stock.GetIndiceProducto((Hardware)item)].Cantidad--;
                    }
                }

                //Actualizo la cantidad de cada producto en la Base de Datos

                foreach (Producto item in ventaAConfirmar.ListaProductos)
                {
                    if (item.GetType() == typeof(Software))
                    {
                        ManejoBaseDeDatos.ActualizarProductoVendido((Software)item);
                    }
                    else
                    {
                        ManejoBaseDeDatos.ActualizarProductoVendido((Hardware)item);
                    }
                }

                //Añado venta a la lista de ventas
                Stock.VentasRealizadas.Add(ventaAConfirmar);
            }
            else
            {
                throw new Exception("La venta que llego por parametro es nula");
            }
        }