Пример #1
0
        /// <summary>
        /// Harcodea celulares y es usado por otro hilo
        /// </summary>
        /// <param name="f">fabrica en cuestion</param>
        public static void AgregarCelularesAProduccion(object f)
        {
            try
            {
                Fabrica      fabrica = (Fabrica)f;
                Dispositivos d1      = new Celular("Huawei 123123123", 234, 44444, Celular.EModeloCelulares.Huawei);
                Dispositivos d2      = new Celular("Nokia 22222", 224, 123123, Celular.EModeloCelulares.Nokia);
                Dispositivos d3      = new Celular("Samsung 2233", 1, 55555, Celular.EModeloCelulares.Samsung);

                if ((fabrica - d1) && (fabrica - d2) && (fabrica - d3))
                {
                    Console.WriteLine("Me encargo de eliminar si es que quedaron agregados de alguna ejecucion anterior");
                }

                if ((fabrica + d1) && (fabrica + d2) && (fabrica + d3))
                {
                    Thread.Sleep(2000);
                    Console.WriteLine($"Se Agrego 3 nuevos celulares a produccion desde el hilo {Thread.CurrentThread.Name}");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Пример #2
0
        /// <summary>
        /// Trae a todos los registros de la tabla
        /// </summary>
        /// <returns>retorna una lista con todos los datos leidos</returns>
        public static List <Dispositivos> LeerTodo()
        {
            List <Dispositivos> listaDispositivos = new List <Dispositivos>();

            try
            {
                DispositivoDAO.comando.CommandText = "SELECT * FROM Dispositivos";
                if (DispositivoDAO.conexion.State != ConnectionState.Open)
                {
                    DispositivoDAO.conexion.Open();
                }

                SqlDataReader reader = DispositivoDAO.comando.ExecuteReader();

                while (reader.Read())
                {
                    string tipo = reader["modelo"].ToString();
                    if (tipo == "HP" || tipo == "Thinkpad" || tipo == "Mac")
                    {
                        Notebook notebook = new Notebook();
                        Notebook.EModeloNotebook modelo;
                        Enum.TryParse(reader["modelo"].ToString(), out modelo);
                        notebook.Modelo   = modelo;
                        notebook.Cantidad = (int)reader["cantidad"];
                        notebook.Precio   = (double)reader["precio"];
                        notebook.Nombre   = reader["nombre"].ToString();

                        listaDispositivos.Add(notebook);
                    }
                    else
                    {
                        Celular celular = new Celular();
                        Celular.EModeloCelulares modelo;
                        Enum.TryParse(reader["modelo"].ToString(), out modelo);
                        celular.Modelo   = modelo;
                        celular.Cantidad = (int)reader["cantidad"];
                        celular.Precio   = (double)reader["precio"];
                        celular.Nombre   = reader["nombre"].ToString();

                        listaDispositivos.Add(celular);
                    }
                }
            }
            catch (Exception e)
            {
                throw new ArchivosException("Error al intentar leer de la base de datos", e);
            }
            finally
            {
                if (DispositivoDAO.conexion.State == ConnectionState.Open)
                {
                    DispositivoDAO.conexion.Close();
                }
            }
            return(listaDispositivos);
        }
Пример #3
0
        public static int CantidadCelularRepetido(List <Celular> listaCelulares, Celular celular)
        {
            int cantidad = 0;

            for (int i = 0; i < listaCelulares.Count; i++)
            {
                if (listaCelulares[i].IdProducto == celular.IdProducto)
                {
                    cantidad = cantidad + listaCelulares[i].Cantidad;
                    break;
                }
            }

            return(cantidad);
        }
Пример #4
0
        /// <summary>
        /// Inserta un nuevo registro en la tabla
        /// </summary>
        /// <param name="dispo">dispositivo a agregar</param>
        /// <returns>retorna true si lo pudo agregar, false caso contrario</returns>
        public static bool InsertarDispositivo(Dispositivos dispo)
        {
            bool   pudeInsertar = false;
            string sql          = "INSERT INTO Dispositivos (nombre,cantidad,precio,modelo) values(@nombre, @cantidad, @precio, @modelo)";

            DispositivoDAO.comando.CommandText = sql;
            DispositivoDAO.comando.Parameters.AddWithValue("@nombre", dispo.Nombre);
            DispositivoDAO.comando.Parameters.AddWithValue("@cantidad", dispo.Cantidad);
            DispositivoDAO.comando.Parameters.AddWithValue("@precio", dispo.Precio);
            if (dispo is Celular)
            {
                Celular celular = (Celular)dispo;
                DispositivoDAO.comando.Parameters.AddWithValue("@modelo", celular.Modelo);
            }

            if (dispo is Notebook)
            {
                Notebook notebook = (Notebook)dispo;
                DispositivoDAO.comando.Parameters.AddWithValue("@modelo", notebook.Modelo.ToString());
            }


            try
            {
                if (DispositivoDAO.conexion.State != ConnectionState.Open)
                {
                    DispositivoDAO.conexion.Open();
                }

                int filasAfectadas = DispositivoDAO.comando.ExecuteNonQuery();

                pudeInsertar = true;
            }
            catch (Exception e)
            {
                throw new ArchivosException("Falla al intentar conectar con la base de datos", e);
            }
            finally
            {
                DispositivoDAO.conexion.Close();
                DispositivoDAO.comando.Parameters.Clear();
            }
            return(pudeInsertar);
        }
Пример #5
0
        public void HarcodearProductos()
        {
            if (miEventoHarcodeo != null)
            {
                Dispositivos d1 = new Notebook("notebook1", 24, 44444, Notebook.EModeloNotebook.HP);
                Dispositivos d2 = new Notebook("notebook2", 32, 66666, Notebook.EModeloNotebook.Mac);
                Dispositivos d3 = new Notebook("notebook3", 64, 1111, Notebook.EModeloNotebook.Thinkpad);
                Dispositivos d4 = new Celular("Celular1", 234, 44444, Celular.EModeloCelulares.Huawei);
                Dispositivos d5 = new Celular("Celular2", 224, 123123, Celular.EModeloCelulares.Nokia);
                Dispositivos d6 = new Celular("Celular3", 1, 55555, Celular.EModeloCelulares.Samsung);

                this.ListaDispositivos.Add(d1);
                this.ListaDispositivos.Add(d2);
                this.ListaDispositivos.Add(d3);
                this.ListaDispositivos.Add(d4);
                this.ListaDispositivos.Add(d5);
                this.ListaDispositivos.Add(d6);
            }
        }
Пример #6
0
        public static void CelularRepetidoSuma(Celular celular)
        {
            int acumulador = 0;

            if (Negocio.ListaCelulares == celular)
            {
                int cantidadPrevia = CantidadCelularRepetido(Negocio.ListaCelulares, celular);
                acumulador = cantidadPrevia + celular.Cantidad;

                Negocio.ListaProductos.RemoveAll(c => c.Nombre == celular.Nombre);

                celular.Cantidad = acumulador;
                celular.Precio   = celular.Precio;

                Negocio.ListaProductos.Add(celular);
            }

            else
            {
                Negocio.ListaProductos.Add(celular);
            }
        }
Пример #7
0
        public List <Producto> LeerSQL()
        {
            //string connectionString = "Server=.;Database=Corsaro.Cristian.TPFinal;Trusted_Connection=True";
            //StringBuilder log = new StringBuilder();
            List <Producto> p = new List <Producto>();

            using (SqlConnection sqlConnection = new SqlConnection(connectionString))
            {
                string     command    = "SELECT * FROM dbo.productos";
                SqlCommand sqlCommand = new SqlCommand(command, sqlConnection);
                sqlConnection.Open();
                //sqlCommand.Parameters.Contains("tipo")
                SqlDataReader reader = sqlCommand.ExecuteReader();
                while (reader.Read())
                {
                    //if(!ReferenceEquals(reader,null))
                    if (reader.GetSqlInt32(7) == 1)
                    {
                        bool calidad;
                        if (reader.GetInt32(3) == 0)
                        {
                            calidad = false;
                        }
                        else
                        {
                            calidad = true;
                        }
                        Celular.SistemaOperativo sistemaOperativo;
                        if (reader.GetInt32(6) == 0)
                        {
                            sistemaOperativo = Celular.SistemaOperativo.Android;
                        }
                        else
                        {
                            sistemaOperativo = Celular.SistemaOperativo.IOS;
                        }
                        Celular c = new Celular(reader.GetInt32(0), reader.GetString(1), reader.GetDouble(2),
                                                sistemaOperativo, calidad);
                        p.Add(c);
                    }
                    else
                    {
                        bool calidad;
                        if (reader.GetInt32(3) == 0)
                        {
                            calidad = false;
                        }
                        else
                        {
                            calidad = true;
                        }
                        Computadora.TipoComputadora tipo;
                        if (reader.GetInt32(4) == 0)
                        {
                            tipo = Computadora.TipoComputadora.Escritorio;
                        }
                        else
                        {
                            tipo = Computadora.TipoComputadora.Notebook;
                        }
                        Computadora.ESistemaOperativo eSistema;
                        if (reader.GetInt32(5) == 0)
                        {
                            eSistema = Computadora.ESistemaOperativo.Windows;
                        }
                        else if (reader.GetInt32(5) == 1)
                        {
                            eSistema = Computadora.ESistemaOperativo.OSX;
                        }
                        else if (reader.GetInt32(5) == 2)
                        {
                            eSistema = Computadora.ESistemaOperativo.Linux;
                        }
                        else
                        {
                            eSistema = Computadora.ESistemaOperativo.SinSistemaOperativo;
                        }

                        Computadora c = new Computadora(reader.GetInt32(0), reader.GetString(1), reader.GetDouble(2),
                                                        tipo, eSistema, calidad);
                        p.Add(c);
                    }
                }
            }
            return(p);
        }