예제 #1
0
        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();
        }
예제 #2
0
 // 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);
 }
예제 #3
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);
 }
예제 #4
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);
 }
예제 #5
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;
 }
예제 #6
0
        /* 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);
        }
예제 #7
0
        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;
                    }
                }
            }
        }