public static void Guardar(Bajo b)
        {
            try
            {
                string     command    = "INSERT INTO Bajos VALUES(@numSerie, @marca, @modelo, @precio, @tipo)";
                SqlCommand sqlCommand = new SqlCommand(command, InstrumentoDAO.sqlConnection);
                sqlCommand.Parameters.AddWithValue("numSerie", b.NumSerie);
                sqlCommand.Parameters.AddWithValue("marca", b.Marca);
                sqlCommand.Parameters.AddWithValue("modelo", b.Modelo);;
                sqlCommand.Parameters.AddWithValue("precio", b.Precio);
                sqlCommand.Parameters.AddWithValue("tipo", b.Tipo.ToString());

                sqlConnection.Open();
                sqlCommand.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw (new InstrumentoRepetidoException("Ya existe un bajo con ese numero de serie", ex));
            }
            finally
            {
                if (sqlConnection != null && sqlConnection.State == System.Data.ConnectionState.Open)
                {
                    InstrumentoDAO.sqlConnection.Close();
                }
            }
        }
        /// <summary>
        /// Modifica el instrumento seleccionado con los valores ingresados, lo guarda en la DB
        /// y avisa al FormPrincipal.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnModificar_Click(object sender, EventArgs e)
        {
            if (this.ValidarDatos())
            {
                float precio = float.Parse(this.txtPrecio.Text);

                if (this.cmbInstrumento.SelectedIndex == 0)
                {
                    Guitarra.ETipoGuitarra tipo;
                    Enum.TryParse <Guitarra.ETipoGuitarra>(this.cmbTipo.SelectedValue.ToString(), out tipo);

                    Guitarra g = new Guitarra(this.txtSerie.Text, this.txtMarca.Text, this.txtModelo.Text, precio, tipo);
                    InstrumentoDAO.Modificar(g);
                    this.ModificacionInstrumentos.Invoke();
                    MessageBox.Show("Se modificó con exito");
                    this.Close();
                }
                else if (this.cmbInstrumento.SelectedIndex == 1)
                {
                    Bajo.ETipoBajo tipo;
                    Enum.TryParse <Bajo.ETipoBajo>(this.cmbTipo.SelectedValue.ToString(), out tipo);

                    Bajo b = new Bajo(this.txtSerie.Text, this.txtMarca.Text, this.txtModelo.Text, precio, tipo);
                    InstrumentoDAO.Modificar(b);
                    this.ModificacionInstrumentos();
                    MessageBox.Show("Se modificó con exito");
                    this.Close();
                }
            }
            else
            {
                MessageBox.Show("Los datos ingresados no son correctos");
            }
        }
        public static void Modificar(Bajo b)
        {
            try
            {
                string command = "UPDATE Bajos SET numSerie = @numSerie , marca = @marca , modelo = @modelo " +
                                 ", precio = @precio , tipo = @tipo WHERE numSerie = @numSerie";
                SqlCommand sqlCommand = new SqlCommand(command, InstrumentoDAO.sqlConnection);
                sqlCommand.Parameters.AddWithValue("numSerie", b.NumSerie);
                sqlCommand.Parameters.AddWithValue("marca", b.Marca);
                sqlCommand.Parameters.AddWithValue("modelo", b.Modelo);;
                sqlCommand.Parameters.AddWithValue("precio", b.Precio);
                sqlCommand.Parameters.AddWithValue("tipo", b.Tipo.ToString());

                sqlConnection.Open();
                sqlCommand.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw (new InstrumentoRepetidoException("Ya existe un bajo con ese numero de serie", ex));
            }
            finally
            {
                if (sqlConnection != null && sqlConnection.State == System.Data.ConnectionState.Open)
                {
                    InstrumentoDAO.sqlConnection.Close();
                }
            }
        }
Beispiel #4
0
 public FrmProbar(Instrumento instrumento)
 {
     InitializeComponent();
     if(instrumento is Bajo)
     {
         Bajo bajo = (Bajo)instrumento;
         switch (bajo.Tipo)
         {
             case Bajo.ETipoBajo.Activo:
                 this.player = new SoundPlayer("Sample4.wav");
                 break;
             case Bajo.ETipoBajo.Pasivo:
                 this.player = new SoundPlayer("Sample3.wav");
                 break;
         }
     }
     if (instrumento is Guitarra)
     {
         Guitarra guitarra = (Guitarra)instrumento;
         switch (guitarra.Tipo)
         {
             case Guitarra.ETipoGuitarra.Electrica:
                 this.player = new SoundPlayer("Sample.wav");                        
                 break;
             case Guitarra.ETipoGuitarra.Acustica:
                 this.player = new SoundPlayer("Sample2.wav");
                 break;
         }
     }
 }
Beispiel #5
0
        /// <summary>
        /// Funcion para cargar la lista de la clase Carrito usando los datos de cada fila para cada tipo de instrumento, para luego usar en cuando guardo la factura en txt o para serializar
        /// </summary>

        private void CargarCarrito()
        {
            Instrumento i = default;

            this.carrito = new Carrito();

            try
            {
                foreach (DataRow fila in this.dt.Rows) // Recorro todos las filas, pasandole los valores a cada instrumento
                {
                    if (fila["tipo"].ToString() == "Guitarra Electrica")
                    {
                        i = new Guitarra(int.Parse(fila["id"].ToString()),
                                         fila["tipo"].ToString(),
                                         fila["marca"].ToString(),
                                         fila["modelo"].ToString(),
                                         fila["estado"].ToString(),
                                         float.Parse(fila["precio"].ToString()));
                    }
                    else if (fila["tipo"].ToString() == "Bajo")
                    {
                        i = new Bajo(int.Parse(fila["id"].ToString()),
                                     fila["tipo"].ToString(),
                                     fila["marca"].ToString(),
                                     fila["modelo"].ToString(),
                                     fila["estado"].ToString(),
                                     float.Parse(fila["precio"].ToString()));
                    }

                    else if (fila["tipo"].ToString() == "Bateria")
                    {
                        i = new Bajo(int.Parse(fila["id"].ToString()),
                                     fila["tipo"].ToString(),
                                     fila["marca"].ToString(),
                                     fila["modelo"].ToString(),
                                     fila["estado"].ToString(),
                                     float.Parse(fila["precio"].ToString()));
                    }

                    else if (fila["tipo"].ToString() == "Violin")
                    {
                        i = new Bajo(int.Parse(fila["id"].ToString()),
                                     fila["tipo"].ToString(),
                                     fila["marca"].ToString(),
                                     fila["modelo"].ToString(),
                                     fila["estado"].ToString(),
                                     float.Parse(fila["precio"].ToString()));
                    }


                    this.carrito += i; // agrego cada instrumento a la lista de la Clase Carrito con el operador +=
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }
        }
        static void Main(string[] args)
        {
            Carrito carritoUno = new Carrito(2);

            Guitarra g1   = new Guitarra(1, "Guitarra", "Gibson", "Les Paul", "usado", 10000);
            Violin   v1   = new Violin(2, "Violin", "Stradivarius", "pepito", "usado", 10000);
            Bajo     b1   = new Bajo(3, "Bajo", "Fender", "precision Bass", "nuevo", 10000);
            Bateria  bat1 = new Bateria(4, "Bateria", "Tama", "Sx", "nuevo", 10000);



            carritoUno += g1; //agrego productos al carrito
            carritoUno += v1;
            carritoUno += b1;
            carritoUno += bat1;


            Console.WriteLine(carritoUno.ToString());    //Pruebo el ToString
            carritoUno.GananciasSobreFacturacion(25000); // Pruebo el Metodo de Extension, para calcular la ganancia real, al que le paso los costos por parametro



            Console.WriteLine("--------------------------------------------------------");
            Console.WriteLine("--------------------------------------------------------");
            Console.WriteLine("Presione Tecla Para Continuar!!!!!\n\n");

            Console.ReadKey();
            Console.Clear();


            try //Prueba de Archivos TXT/Xml... Guardar y Leer
            {
                Console.WriteLine("Chequeo guardar y abrir archivos.");

                if (Carrito.GuardarXml(carritoUno))
                {
                    Console.WriteLine("SERIALIZACION EXITOSA!!!");
                }


                if (Carrito.Guardar(carritoUno))
                {
                    Console.WriteLine("Archivo guardado con exito!!\n\n");
                }



                Console.WriteLine("LECTURA ARCHIVO EN FORMATO TXT");
                Console.WriteLine(Carrito.Leer());
            }
            catch (ArchivosException ex)
            {
                Console.WriteLine(ex.Message);
            }


            Console.ReadLine();
        }
        public void ProbarDeserializacionVentasIncorrecta()
        {
            Bajo          b = new Bajo("test", "test", "test", 0, Bajo.ETipoBajo.Activo);
            TiendaMusical t = new TiendaMusical();
            List <Venta>  listaDeserializada;

            bool agrega = t + b;

            t.Vender(b, "VentaTest.xml");
            listaDeserializada = t.RecuperarVenta("Rutaincorrecta.xml");
        }
 /// <summary>
 /// Guarda el alta de un nuevo instrumento en la base de datos, validando los datos
 /// y arrojando error de encontrarse repetido o haber algún dato erroneo.
 /// Dispara un evento que avisa de la modificación al form principal.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnAlta_Click(object sender, EventArgs e)
 {
     if (this.ValidarDatos())
     {
         //Leo los datos del instrumento
         float precio = float.Parse(this.txtPrecio.Text);
         if (this.cmbInstrumento.SelectedIndex == 0)
         {
             Guitarra.ETipoGuitarra tipo;
             Enum.TryParse <Guitarra.ETipoGuitarra>(this.cmbTipo.SelectedValue.ToString(), out tipo);
             try
             {
                 //Guardo la guitarra en la base y disparo el evento.
                 Guitarra g = new Guitarra(this.txtSerie.Text, this.txtMarca.Text, this.txtModelo.Text, precio, tipo);
                 InstrumentoDAO.Guardar(g);
                 this.ModificacionInstrumentos.Invoke();
                 MessageBox.Show("Se dio el alta con exito");
                 this.Close();
             }
             catch (InstrumentoRepetidoException ex)
             {
                 MessageBox.Show(ex.Message);
             }
         }
         else if (this.cmbInstrumento.SelectedIndex == 1)
         {
             Bajo.ETipoBajo tipo;
             Enum.TryParse <Bajo.ETipoBajo>(this.cmbTipo.SelectedValue.ToString(), out tipo);
             try
             {
                 //Guardo el Bajo en la base y disparo el evento.
                 Bajo b = new Bajo(this.txtSerie.Text, this.txtMarca.Text, this.txtModelo.Text, precio, tipo);
                 InstrumentoDAO.Guardar(b);
                 this.ModificacionInstrumentos.Invoke();
                 MessageBox.Show("Se dio el alta con exito");
                 this.Close();
             }
             catch (InstrumentoRepetidoException ex)
             {
                 MessageBox.Show(ex.Message);
             }
         }
     }
     else //si la validacion falla
     {
         MessageBox.Show("Los datos ingresados no son correctos");
     }
 }
        /// <summary>
        /// Actualiza por pantalla los datos del instrumento seleccionado de la lista.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void listInstrumentos_SelectedIndexChanged(object sender, EventArgs e)
        {
            Instrumento seleccion = (Instrumento)this.listInstrumentos.SelectedItem;

            this.txtMarca.Text  = seleccion.Marca;
            this.txtModelo.Text = seleccion.Modelo;
            this.txtPrecio.Text = seleccion.Precio.ToString();
            this.txtSerie.Text  = seleccion.NumSerie;
            //Selecciona el tipo según el tipo de instrumento.
            if (seleccion is Guitarra)
            {
                Guitarra seleccionGuitarra = (Guitarra)seleccion;
                this.cmbInstrumento.SelectedIndex = 0;
                this.cmbTipo.DataSource           = Enum.GetValues(typeof(Guitarra.ETipoGuitarra));
                switch (seleccionGuitarra.Tipo)
                {
                case Guitarra.ETipoGuitarra.Electrica:
                    this.cmbTipo.SelectedIndex = 0;
                    break;

                case Guitarra.ETipoGuitarra.Acustica:
                    this.cmbTipo.SelectedIndex = 1;
                    break;
                }
            }
            else
            {
                Bajo seleccionBajo = (Bajo)seleccion;
                this.cmbInstrumento.SelectedIndex = 1;
                this.cmbTipo.DataSource           = Enum.GetValues(typeof(Bajo.ETipoBajo));
                switch (seleccionBajo.Tipo)
                {
                case Bajo.ETipoBajo.Activo:
                    this.cmbTipo.SelectedIndex = 0;
                    break;

                case Bajo.ETipoBajo.Pasivo:
                    this.cmbTipo.SelectedIndex = 1;
                    break;
                }
            }
        }
Beispiel #10
0
        static void Main(string[] args)
        {
            Guitarra g1 = new Guitarra("F123ASD3415", "Fender", "Telecaster Custom", 150000, Guitarra.ETipoGuitarra.Electrica);
            Guitarra g2 = new Guitarra("QWEaz321654", "Schecter", "Hellraiser", 650000, Guitarra.ETipoGuitarra.Electrica);
            Guitarra g3 = new Guitarra("12345aASJQ415", "Taylor", "GS Mini", 80000, Guitarra.ETipoGuitarra.Acustica);
            Bajo     b1 = new Bajo("3216ASQwq65", "Fender", "Jazz Bass", 200000, Bajo.ETipoBajo.Pasivo);
            Bajo     b2 = new Bajo("aSFKQOPWFAs", "Ernie Ball", "MusicMan", 300000, Bajo.ETipoBajo.Pasivo);

            InstrumentoDAO.Guardar(g1);
            InstrumentoDAO.Guardar(g2);
            InstrumentoDAO.Guardar(g3);
            InstrumentoDAO.Guardar(b1);
            InstrumentoDAO.Guardar(b2);

            Console.WriteLine(g1.ToString());
            Console.WriteLine(g2.ToString());
            Console.WriteLine(b1.ToString());
            Console.WriteLine(b2.ToString());

            TiendaMusical t = new TiendaMusical();

            t.Instrumentos = InstrumentoDAO.LeerInstrumentos();
            foreach (Instrumento instrumento in t.Instrumentos)
            {
                Console.WriteLine(instrumento.ToString());
            }


            g3.Marca = "Anderson";
            InstrumentoDAO.Modificar(g3);

            Bajo b3 = new Bajo("aSFKQOPWFAs", "cambiado", "cambiado", 50, Bajo.ETipoBajo.Activo);

            InstrumentoDAO.Modificar(b3);


            Console.ReadKey();
        }
Beispiel #11
0
        static void Main(string[] args)
        {
            Guitarra g1 = new Guitarra("G12305423", "Gibson", "Les Paul", 300000, Guitarra.ETipoGuitarra.Electrica);
            Guitarra g2 = new Guitarra("A12124828", "Fender", "Stratocaster", 850000, Guitarra.ETipoGuitarra.Electrica);
            Guitarra g3 = new Guitarra("ISSJQ415", "Ibanez", "EC100", 70000, Guitarra.ETipoGuitarra.Acustica);
            Bajo     b1 = new Bajo("F29331991", "Fender", "P-Bass", 200000, Bajo.ETipoBajo.Pasivo);
            Bajo     b2 = new Bajo("X01238412", "Gibson", "Hummingbird", 300000, Bajo.ETipoBajo.Activo);

            InstrumentoDAO.Guardar(g1);
            InstrumentoDAO.Guardar(g2);
            InstrumentoDAO.Guardar(g3);
            InstrumentoDAO.Guardar(b1);
            InstrumentoDAO.Guardar(b2);

            Console.WriteLine(g1.ToString());
            Console.WriteLine(g2.ToString());
            Console.WriteLine(b1.ToString());
            Console.WriteLine(b2.ToString());

            TiendaMusical t = new TiendaMusical();

            t.Instrumentos = InstrumentoDAO.LeerInstrumentos();
            foreach (Instrumento instrumento in t.Instrumentos)
            {
                Console.WriteLine(instrumento.ToString());
            }


            g3.Marca = "Anderson";
            InstrumentoDAO.Modificar(g3);

            Bajo b3 = new Bajo("aSFKQOPWFAs", "cambiado", "cambiado", 50, Bajo.ETipoBajo.Activo);

            InstrumentoDAO.Modificar(b3);


            Console.ReadKey();
        }
        public static List <Instrumento> LeerInstrumentos()
        {
            try
            {
                string command = "SELECT * FROM Guitarras";

                InstrumentoDAO.sqlConnection.Open();
                SqlCommand    sqlCommand = new SqlCommand(command, InstrumentoDAO.sqlConnection);
                SqlDataReader reader     = sqlCommand.ExecuteReader();

                List <Instrumento> instrumentos = new List <Instrumento>();
                while (reader.Read())
                {
                    string numSerie = (string)reader["numSerie"];
                    string marca    = (string)reader["marca"];
                    string modelo   = (string)reader["modelo"];
                    string tipo     = (string)reader["tipo"];
                    float  precio   = (float)Convert.ToDouble(reader["precio"]);

                    Guitarra.ETipoGuitarra eTipo;
                    if (tipo == "Electrica")
                    {
                        eTipo = Guitarra.ETipoGuitarra.Electrica;
                    }
                    else
                    {
                        eTipo = Guitarra.ETipoGuitarra.Acustica;
                    }

                    Guitarra g = new Guitarra(numSerie, marca, modelo, precio, eTipo);
                    instrumentos.Add(g);
                }
                reader.Close();

                command    = "SELECT * FROM Bajos";
                sqlCommand = new SqlCommand(command, InstrumentoDAO.sqlConnection);
                reader     = sqlCommand.ExecuteReader();

                while (reader.Read())
                {
                    string numSerie = (string)reader["numSerie"];
                    string marca    = (string)reader["marca"];
                    string modelo   = (string)reader["modelo"];
                    string tipo     = (string)reader["tipo"];
                    float  precio   = (float)Convert.ToDouble(reader["precio"]);

                    Bajo.ETipoBajo eTipo;
                    if (tipo == "Pasivo")
                    {
                        eTipo = Bajo.ETipoBajo.Pasivo;
                    }
                    else
                    {
                        eTipo = Bajo.ETipoBajo.Activo;
                    }

                    Bajo b = new Bajo(numSerie, marca, modelo, precio, eTipo);
                    instrumentos.Add(b);
                }

                return(instrumentos);
            }
            catch (Exception ex)
            {
                throw new DatabaseException("Error al leer la lista de instrumentos", ex);
            }
            finally
            {
                if (InstrumentoDAO.sqlConnection != null && InstrumentoDAO.sqlConnection.State == System.Data.ConnectionState.Open)
                {
                    InstrumentoDAO.sqlConnection.Close();
                }
            }
        }