Esempio n. 1
0
        public static byte FicharEntrada(string nif)
        {             //Comprobar que la letra coincide con los números.
            if (Validar.ValidarLetra(nif))
            {         //Si el DNI es real, comprobar si existe en la BBDD.
                if (BBDD.Leer($"SELECT NIF from empleado WHERE NIF = '{nif}' AND Activo=1;").Count > 0)
                {     //Si existe, comprobar que no haya un Fichaje de Entrada por cerrar.
                    if (BBDD.Leer($"SELECT * FROM fichaje WHERE NIF = '{nif}' AND Ficha_Entrada = 1 AND Ficha_Salida = 0;").Count == 0)
                    { //Si no hay Fichajes de Entrada por cerrar, se inserta un nuevo Fichaje de Entrada.
                        if (BBDD.Escribir("INSERT INTO fichaje (NIF, Fecha, Hora_Entrada, Hora_Salida, Ficha_Entrada, Ficha_Salida) " +
                                          $"VALUES ('{nif}', '{DateTime.Now.ToString("yyyy-MM-dd")}', '{DateTime.Now.ToString("HH:mm:ss")}', NULL, 1, 0)"))
                        {   //Si se ha insertado correctamente se consultan los datos Empleado/Fichaje para mostarlos gráficamente.
                            List <ArrayList> dataRows = BBDD.Leer("SELECT empleado.NIF, Nombre, Apellido, Edad, Imagen, Hora_Entrada, Hora_Salida FROM empleado " +
                                                                  $"INNER JOIN fichaje ON empleado.NIF=fichaje.NIF WHERE empleado.NIF='{nif}' AND Ficha_Salida=0;");

                            CargarDatosEmpleado(dataRows[0]);
                            return(0);
                        }
                    }
                    return(3);
                }
                else if (BBDD.ConnectionWorking)
                {
                    return(2);
                }
                else
                {
                    return(4);
                }
            }
            return(1);
        }
Esempio n. 2
0
        public static byte FicharSalida(string nif)
        {
            if (Validar.ValidarLetra(nif))
            {
                if (BBDD.Leer($"SELECT NIF from empleado WHERE NIF = '{nif}' AND Activo=1;").Count > 0)
                {
                    if (BBDD.Leer("SELECT * FROM fichaje " +
                                  $"WHERE '{nif}' = NIF AND '{DateTime.Now.ToString("yyyy-MM-dd")}' = Fecha AND Ficha_Entrada = 1 AND Ficha_Salida = 0;").Count > 0)
                    {
                        if (BBDD.Escribir($"UPDATE fichaje SET Ficha_Salida = 1, Hora_Salida = '{DateTime.Now.ToString("HH:mm:ss")}' " +
                                          $"WHERE NIF = '{nif}' AND Ficha_Salida = 0;"))//
                        {
                            List <ArrayList> dataRows = BBDD.Leer("SELECT empleado.NIF, Nombre, Apellido, Edad, Imagen, Hora_Entrada, Hora_Salida FROM empleado " +
                                                                  $"INNER JOIN fichaje ON empleado.NIF=fichaje.NIF WHERE empleado.NIF='{nif}' AND Ficha_Salida=1 AND Fecha = '{DateTime.Now.ToString("yyyy-MM-dd")}' ORDER BY ID DESC;");

                            CargarDatosEmpleado(dataRows[0]);
                            return(0);
                        }
                        return(4);
                    }
                    return(3);
                }
                else if (BBDD.ConnectionWorking)
                {
                    return(2);
                }
                else
                {
                    return(4);
                }
            }
            return(1);
        }
Esempio n. 3
0
 public static bool CerrarFichajesAbiertos()
 {
     if (BBDD.Escribir($"UPDATE fichaje SET Ficha_Salida = 1, Hora_Salida = '23:59:59' " +
                       $"WHERE Fecha < '{DateTime.Now.ToString("yyyy-MM-dd")}' AND Ficha_Salida = 0;"))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }