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(); } } }
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; } } }
/// <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; } } }
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(); }
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(); } } }