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); }
public static byte Mentenimiento(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 empleado WHERE NIF = '{nif}' AND `Password` IS NOT NULL AND `Password` != ''").Count > 0) { return(0); //El empleado existe y es administrador (pedir la contraseña posteriormente). } else { return(3); //No es administrador, no tiene permisos. } } else if (BBDD.ConnectionWorking) { return(2); //El DNI no existe en el sistema. } else { return(4); //No hay conexión con la BBDD. } } return(1); //Letra incorrecta. }
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); }
public static bool CheckDataBasePassword(string nif, string password) { if (BBDD.Leer($"SELECT * FROM empleado WHERE NIF = '{nif}' AND `Password` = '{password}'").Count > 0) { return(true); } return(false); }
public static bool ShowListBoxInfo(string nif) { 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;"); if (BBDD.ConnectionWorking) { return(CargarDatosEmpleado(dataRows[0])); } return(false); }
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); } }
public static byte Presencia() { BBDD.Leer("SELECT empleado.NIF, Nombre, Apellido, Hora_Entrada FROM empleado INNER JOIN fichaje ON empleado.NIF=fichaje.NIF " + $"WHERE Ficha_Entrada=1 AND Ficha_Salida=0 AND Fecha = '{DateTime.Now.ToString("yyyy-MM-dd")}';"); if (BBDD.DataRows.Count > 0) { return(0); } else if (BBDD.ConnectionWorking) { return(1); } else { return(2); } }
public static byte Permanencia(string nif, DateTime fechaInicial, DateTime fechaFinal) { TimeSpan diferenciaTiempo; TimeSpan tiempoTotal = TimeSpan.Zero; if (Validar.ValidarLetra(nif)) { if (BBDD.Leer($"SELECT NIF from empleado WHERE NIF = '{nif}' AND Activo=1;").Count > 0) { if (BBDD.Leer($"SELECT Fecha, Hora_Entrada, Hora_Salida FROM fichaje WHERE NIF='{nif}' AND Ficha_Entrada=1 AND Ficha_Salida=1 " + $"AND Fecha BETWEEN '{fechaInicial.ToString("yyyy-MM-dd")}' AND '{fechaFinal.ToString("yyyy-MM-dd")}';").Count > 0) { ArrayList permanenciaTotal = new ArrayList(); foreach (var item in BBDD.DataRows) { diferenciaTiempo = TimeSpan.Parse(item[1].ToString()).Subtract(TimeSpan.Parse(item[2].ToString())); tiempoTotal += diferenciaTiempo; } permanenciaTotal.Add(tiempoTotal); BBDD.DataRows.Add(permanenciaTotal); return(0); //Se han recibido datos para mostrar en el formulario. } else { return(3); //No hay permanencia de ese empleado. } } else if (BBDD.ConnectionWorking) { return(2); //El DNI no existe en el sistema. } else { return(4); //No hay conexión con la Base de Datos. } } return(1); //Letra no correspondiente al DNI (DNI incorrecto). }