private void dgvEmpleados_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         if (BDatos.AbrirConexion())
         {
             int    n   = e.RowIndex;
             string nif = dgvEmpleados.Rows[n].Cells[1].Value.ToString();
             if (MessageBox.Show("Se va ha eliminar el EMPLEADO Y SUS FICHAJES de la base de datos con DNI " + nif + ".\n Estas Seguro?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
             {
                 Empleado elimin       = new Empleado();
                 int      numRegistros = elimin.BorrarEmpleado(conexion, nif);
                 MessageBox.Show(String.Format("Se ha borrado el empleado y sus fichajes"));
             }
         }
         else
         {
             MessageBox.Show("No se ha establecido la conexión", "Error");
         }
     }
     catch (MySqlException ex)
     {
         MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
     }
     finally
     {
         BDatos.CerrarConexion();
     }
 }
Пример #2
0
        private void btnConsultar_Click(object sender, EventArgs e)
        {
            if (!Validacion())
            {
                return;                // Si es false , la validacion no esta ok y corta;
            }
            try
            {
                if (BDatos.AbrirConexion())
                {
                    DateTime      fecha1 = dtpFecha1.Value;
                    DateTime      fecha2 = dtpFecha2.Value;
                    string        nif    = lblMostrarDni.Text;//como tengo los datos en el label, puedo pasarlos al metodo mostrarFichaje()
                    BindingSource lista  = LibreriaMetodos.MostrarFichaje(fecha1, fecha2, conexion, nif);
                    dgvPermanencia.DataSource = lista;
                }
                else
                {
                    MessageBox.Show("No se ha podido abrir la conexion.");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally  // en cualquier caso cierro la conexión (haya error o no)
            {
                BDatos.CerrarConexion();
            }

            lblMostrartiempo.Text = ObtenerTiempo().ToString(); //Actuliza el lbl cuando consultas
        }
 /// <summary>
 /// Funcion general para cargar los dos data greed view.
 /// </summary>
 private void CargarDGV()
 {
     try
     {
         if (BDatos.AbrirConexion())
         {
             BindingSource listaEmpleados = LibreriaMetodos.MostrarTodoEmpleado(conexion);
             dgvEmpleados.DataSource = listaEmpleados;
             BindingSource listaFichajes = LibreriaMetodos.MostrarFichaje(conexion);
             dgvFichajes.DataSource = listaFichajes;
         }
         else
         {
             MessageBox.Show("No se ha podido abrir la conexion.");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
     }
     finally  // en cualquier caso cierro la conexión (haya error o no)
     {
         BDatos.CerrarConexion();
     }
 }
Пример #4
0
        private void mantenimientoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (!Validacion())
            {
                return;
            }
            string nif = txtDni.Text.ToUpper();

            try
            {
                if (BDatos.AbrirConexion())
                {
                    if (!LibreriaMetodos.ComprobarLetra(nif))
                    {
                        MessageBox.Show("NIF incorrecto"); return;
                    }

                    if (!LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        MessageBox.Show("El empleado no existe"); return;
                    }

                    if (!LibreriaMetodos.ComprobarAdmin(nif, conexion))
                    {
                        MessageBox.Show("El empleado no es administrador"); return;
                    }
                    //Si el empleado es adminitrador , instancia el from para que introduzca la contraseña
                    FrmContraseñaMantenimiento mantenimiento = new FrmContraseñaMantenimiento();
                    mantenimiento.ShowDialog();
                    string contraseña = mantenimiento.Contraseña;
                    if (!mantenimiento.Ok)
                    {
                        return;                        //La validacion del formulario de la contraseña no esta correcta y corta.
                    }
                    //Si la contraseña es correcta abre el formulario de mantenimiento
                    if (LibreriaMetodos.ComprobarPassword(contraseña, conexion))
                    {
                        FormMantenimiento manteni = new FormMantenimiento();
                        manteni.ShowDialog();
                    }
                    else
                    {
                        MessageBox.Show("Contraseña Erronea");
                    }
                }
                else
                {
                    MessageBox.Show("No se ha establecido la conexión", "Error");
                };
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
Пример #5
0
        private void btnSalida_Click(object sender, EventArgs e)
        {
            if (!Validacion())
            {
                return;
            }
            string nif = txtDni.Text.ToUpper();

            try
            {
                if (BDatos.AbrirConexion())
                {
                    if (!LibreriaMetodos.ComprobarLetra(nif))
                    {
                        MessageBox.Show("NIF incorrecto"); return;
                    }

                    if (!LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        MessageBox.Show("El empleado no existe"); return;
                    }

                    //Comprueba si el empleado ha fichado previamente
                    if (LibreriaMetodos.ComprobarFichaje(nif, conexion))
                    {
                        //MessageBox.Show("Si que hay fichaje previo");//Comprobacion
                    }
                    else
                    {
                        MessageBox.Show("El empleado no ha fichado"); return;
                    }

                    //Si hay fichaje previo, lo finaliza
                    Fichaje fichaje = new Fichaje();
                    if (fichaje.DarSalida(conexion, nif))
                    {
                        MessageBox.Show(String.Format("Salida del empleado a fecha {0}", DateTime.Now));
                    }
                    else
                    {
                        return;
                    }
                }
                else
                {
                    MessageBox.Show("No se ha establecido la conexión", "Error");
                }
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
Пример #6
0
        private void lblEntrada_Click(object sender, EventArgs e)
        {
            //Comprueba si el txt box del dni esta vacio
            if (!Validacion())
            {
                return;                //Si el valodado da false no sigue la ejecuion
            }
            string nif = txtDni.Text.ToUpper();

            try
            {
                //Abre la conexion
                if (BDatos.AbrirConexion())
                {
                    //Comprueba si la letra del DNI es correcta
                    if (!LibreriaMetodos.ComprobarLetra(nif))
                    {
                        MessageBox.Show("NIF incorrecto"); return;
                    }

                    //Comprueba si el empleado existe
                    if (!LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        MessageBox.Show("El empleado no existe"); return;
                    }

                    //Comprueba el fichaje
                    if (LibreriaMetodos.ComprobarFichaje(nif, conexion))
                    {
                        MessageBox.Show("El empleado ya ha fichado");
                        return;
                    }
                    else
                    {
                        //Si el empleado no ha fichado, le da de alta en fichaje
                        Fichaje fichaje = new Fichaje(nif, DateTime.Now, DateTime.MinValue, false);
                        if (fichaje.DarAlta(conexion))
                        {
                            MessageBox.Show(String.Format("Entrada del empleado a fecha {0}", DateTime.Now));
                        }
                    }
                }
                else
                {
                    MessageBox.Show("No se ha establecido la conexión", "Error");
                }
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
        private void btnAgregarEmpleado_Click(object sender, EventArgs e)
        {
            //abre y obtiene los datos del formulario , FormDatos
            FormDatos formDatos = new FormDatos();

            formDatos.ShowDialog();

            string nif           = formDatos.Nif;
            string nombre        = formDatos.Nombre;
            string apellidos     = formDatos.Apellidos;
            bool   alta          = formDatos.Alta;
            bool   administrador = formDatos.Administrador;
            string contraseña    = formDatos.Contraseña;
            bool   ok            = formDatos.Ok; //validación para evitar traer campos vacios

            try
            {
                if (BDatos.AbrirConexion())
                {
                    if (!ok)
                    {
                        return;      //Si ok es false no hace nada, porque la validacion del form de datos no es correcta
                    }
                    Empleado empleado = new Empleado(alta, nif, nombre, apellidos, administrador, contraseña);

                    //Comprueba si el empleado existe
                    if (LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        MessageBox.Show("El empleado ya existe");
                    }
                    else
                    {
                        empleado.AgregarEmpleado(conexion);
                        MessageBox.Show("Empleado agregado");
                    }
                }
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
Пример #8
0
 private void btnPresencia_Click(object sender, EventArgs e)
 {
     try
     {
         if (BDatos.AbrirConexion())
         {
             FormPresencia presencia = new FormPresencia();
             presencia.ShowDialog();
         }
     }catch (MySqlException ex)
     {
         MessageBox.Show(ex.Message);
     }
     finally
     {
         BDatos.CerrarConexion();
     }
 }
        private void btnEliminarEmpleado_Click(object sender, EventArgs e)
        {
            FormEliminarEmpleado eliminar = new FormEliminarEmpleado();

            eliminar.ShowDialog();
            if (!eliminar.Ok)
            {
                return;
            }

            string nif = eliminar.Nif;

            try
            {
                if (BDatos.AbrirConexion())
                {
                    if (!LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        MessageBox.Show("El empleado no existe"); return;
                    }
                    //Pregunta si realmente quiere eliminar el empleado
                    if (MessageBox.Show("Estas seguro que quieres eliminar este empleado?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        //Pasa a false el atributo alta.
                        Empleado elimin = new Empleado();
                        elimin.EliminarEmpleado(conexion, nif);
                        MessageBox.Show(String.Format("Se ha eliminado el empleado con NIF: {0}", nif));
                    }
                }
                else
                {
                    MessageBox.Show("No se ha establecido la conexión", "Error");
                }
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
Пример #10
0
        private void btnPermanencia_Click(object sender, EventArgs e)
        {
            if (!Validacion())
            {
                return;
            }
            string nif = txtDni.Text.ToUpper();

            try
            {
                if (BDatos.AbrirConexion())
                {
                    if (!LibreriaMetodos.ComprobarLetra(nif))
                    {
                        MessageBox.Show("NIF incorrecto"); return;
                    }

                    if (LibreriaMetodos.ComprobarEmpleado(nif, conexion))
                    {
                        FrmPermanencia permanencia = new FrmPermanencia(nif);// Si todo es ok abre el formulario
                        permanencia.ShowDialog();
                    }
                    else
                    {
                        MessageBox.Show("No existe el empleado"); return;
                    }
                }
                else
                {
                    MessageBox.Show("No se ha establecido la conexión", "Error");
                }
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
            }
            finally
            {
                BDatos.CerrarConexion();
            }
        }
Пример #11
0
 private void FormPresencia_Load(object sender, EventArgs e)
 {
     try
     {
         if (BDatos.AbrirConexion())
         {
             BindingSource lista = LibreriaMetodos.MostrarEmpleado(conexion);
             dgvListado.DataSource = lista;
         }
         else
         {
             MessageBox.Show("No se ha podido abrir la conexion.");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message + "\n" + ex.StackTrace);
     }
     finally  // en cualquier caso cierro la conexión (haya error o no)
     {
         BDatos.CerrarConexion();
     }
 }