private void btnNuevoRepostaje_Click(object sender, EventArgs e) { FormNuevoRepostaje frmNuevoRep = new FormNuevoRepostaje(); frmNuevoRep.ShowDialog(); Repostaje nuevoRep = new Repostaje(); if (frmNuevoRep.GetKmTotales() == 0) { return; } nuevoRep.Litros = frmNuevoRep.GetLitros(); nuevoRep.Precio = frmNuevoRep.GetPrecio(); nuevoRep.Importe = frmNuevoRep.GetImporte(); nuevoRep.KmTotales = frmNuevoRep.GetKmTotales(); nuevoRep.Lugar = frmNuevoRep.GetLugar(); nuevoRep.Fecha = frmNuevoRep.GetFecha(); // Añadir el nuevo Repostaje a la BD mTablaRepostajes.AddBDRepostaje(conn, nuevoRep); // Actualizar la lista de Repostajes y la pantalla Ppal LeerListaRepostajesBD(); ActualizarListaPpal2(); }
// Borrar Repostaje de la BD public int DelBDRepostaje(MySqlConnection conn, Repostaje repostaje) { try { conn.Open(); MySqlCommand instruccion = conn.CreateCommand(); instruccion.CommandText = "delete from Repostajes where kmTotales = '" + repostaje.KmTotales + "';"; instruccion.ExecuteReader(); conn.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } return(0); }
// Añadir Repostaje a la BD public int AddBDRepostaje(MySqlConnection conn, Repostaje nuevoRepostaje) { try { conn.Open(); MySqlCommand instruccion = conn.CreateCommand(); instruccion.CommandText = "insert into Repostajes(fecha, kmTotales, lugar, importe, litros, precio) values('" + nuevoRepostaje.Fecha.ToString("yyyy-MM-dd") + "','" + nuevoRepostaje.KmTotales + "','" + nuevoRepostaje.Lugar + "','" + nuevoRepostaje.Importe + "','" + nuevoRepostaje.Litros + "','" + nuevoRepostaje.Precio + "');"; instruccion.ExecuteReader(); conn.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } return(0); }
// Actualizar Repostaje en BD public int UpdBDRepostaje(MySqlConnection conn, int idViejoRepostaje, Repostaje nuevoRepostaje) { try { conn.Open(); MySqlCommand instruccion = conn.CreateCommand(); instruccion.CommandText = "update Repostajes set fecha = '" + nuevoRepostaje.Fecha.ToString("yyyy-MM-dd") + "', kmTotales = '" + nuevoRepostaje.KmTotales + "', lugar = '" + nuevoRepostaje.Lugar + "', importe = '" + nuevoRepostaje.Importe + "', litros = '" + nuevoRepostaje.Litros + "', precio = '" + nuevoRepostaje.Precio + "' where kmTotales = '" + idViejoRepostaje + "';"; instruccion.ExecuteReader(); conn.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } return(0); }
public FormNuevoRepostaje(Repostaje objRepostaje) { InitializeComponent(); editImporte.Text = objRepostaje.Importe.ToString(); dateTimePicker1.Value = objRepostaje.Fecha; editPrecio.Text = objRepostaje.Precio.ToString(); editLitros.Text = objRepostaje.Litros.ToString(); editKmTotales.Text = objRepostaje.KmTotales.ToString(); editLugar.Text = objRepostaje.Lugar; editKmParciales.Text = objRepostaje.KmParciales.ToString(); editImporte.Enabled = false; dateTimePicker1.Enabled = false; editPrecio.Enabled = false; editLitros.Enabled = false; editKmTotales.Enabled = false; editLugar.Enabled = false; btnEdit.Visible = true; editKmParciales.Enabled = false; btnBorrarRep.Enabled = false; }
/* FUNCIONES: * private List<Repostaje> LeerBDRepostajes(MySqlConnection conn) * private int UpdBDRepostaje(MySqlConnection conn, int idViejoRepostaje, Repostaje nuevoRepostaje) * private int AddBDRepostaje(MySqlConnection conn, Repostaje nuevoRepostaje) * private int DelBDRepostaje(MySqlConnection conn, Repostaje repostaje) */ // Leer tabla de repostajes public List <Repostaje> LeerBDRepostajes(MySqlConnection conn) { int kmRepostajeAnterior = 0; List <Repostaje> listaRepostajesBD = new List <Repostaje>(); try { //idGastoActual = 0; conn.Open(); // Se obtienen los registros en orden ascendente ordenados por KmTotales (que será el id), ya que // es la manera más fácil de calcular los KmParciales. // Una vez rellenada la lista (con los KmParciales calculados), se invierte el orden de la lista // ya que es mejor mostrarla de mayor a menor kilometraje. MySqlCommand instruccion = conn.CreateCommand(); instruccion.CommandText = "SELECT fecha, kmTotales, lugar, importe, litros, precio from Repostajes order by kmTotales"; MySqlDataReader reader = instruccion.ExecuteReader(); while (reader.Read()) { Repostaje obj = new Repostaje(); obj.Fecha = reader.GetDateTime("fecha"); obj.KmTotales = reader.GetInt32("kmTotales"); obj.Lugar = reader["lugar"].ToString(); obj.Importe = reader.GetFloat("importe"); obj.Litros = reader.GetFloat("litros"); obj.Precio = reader.GetFloat("precio"); obj.KmParciales = obj.KmTotales - kmRepostajeAnterior; kmRepostajeAnterior = obj.KmTotales; listaRepostajesBD.Add(obj); } conn.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } // Invertimos el orden de la lista para tener los elementos ordenados por km de mayor a menor listaRepostajesBD.Reverse(); return(listaRepostajesBD); }
private void listaPpal_MouseDoubleClick(object sender, MouseEventArgs e) { // Abrir la ventana del detalle del repostaje o mantenimiento if (String.Compare(listaPpal.SelectedItems[0].SubItems[0].Text, "Repost.") == 0) { foreach (Repostaje it in listaRep) { String tmp = listaPpal.SelectedItems[0].SubItems[2].Text; int a = String.Compare(it.KmTotales.ToString(), tmp); if (String.Compare(it.KmTotales.ToString(), tmp) == 0) { FormNuevoRepostaje frmNuevoRep = new FormNuevoRepostaje(it); frmNuevoRep.ShowDialog(); Repostaje nuevoRep = new Repostaje(); if (frmNuevoRep.GetKmTotales() == 0) { // Se ha cancelado la modificación (botón Cancelar) return; } else if (frmNuevoRep.GetKmTotales() == -1) { if (frmNuevoRep.GetBorrarRepostaje()) { // Hay que borrar el Repostaje de la BD mTablaRepostajes.DelBDRepostaje(conn, it); } } else { nuevoRep.Litros = frmNuevoRep.GetLitros(); nuevoRep.Precio = frmNuevoRep.GetPrecio(); nuevoRep.Importe = frmNuevoRep.GetImporte(); nuevoRep.KmTotales = frmNuevoRep.GetKmTotales(); nuevoRep.Lugar = frmNuevoRep.GetLugar(); nuevoRep.Fecha = frmNuevoRep.GetFecha(); // Añadir el nuevo Repostaje a la BD mTablaRepostajes.UpdBDRepostaje(conn, it.KmTotales, nuevoRep); } // Actualizar la lista de Repostajes y la pantalla Ppal LeerListaRepostajesBD(); ActualizarListaPpal2(); return; } } } else { foreach (Mantenimiento it in listaMant) { String tmp = listaPpal.SelectedItems[0].SubItems[2].Text; int a = String.Compare(it.KmTotales.ToString(), tmp); if (String.Compare(it.KmTotales.ToString(), tmp) == 0) { FormNuevoMantenimiento frmNuevoMant = new FormNuevoMantenimiento(it); frmNuevoMant.ShowDialog(); Mantenimiento nuevoMant = new Mantenimiento(); if (frmNuevoMant.GetKmTotales() == 0) { // Se ha cancelado la modificación (botón Cancelar) return; } else if (frmNuevoMant.GetKmTotales() == -1) { if (frmNuevoMant.GetBorrarMantenimiento()) { // Hay que borrar el Repostaje de la BD mTablaMantenimiento.DelBDMantenimiento(conn, it); } } else { nuevoMant.Reparacion = frmNuevoMant.GetReparacion(); nuevoMant.Taller = frmNuevoMant.GetTaller(); nuevoMant.Lugar = frmNuevoMant.GetLugar(); nuevoMant.KmTotales = frmNuevoMant.GetKmTotales(); nuevoMant.Importe = frmNuevoMant.GetImporte(); nuevoMant.Fecha = frmNuevoMant.GetFecha(); // Añadir el nuevo Mantenimiento a la BD mTablaMantenimiento.UpdBDMantenimiento(conn, it.KmTotales, nuevoMant); } // Actualizar la lista de Mantenimentos y la pantalla Ppal LeerListaMantenimientosBD(); ActualizarListaPpal2(); return; } } } }