public List <UsuarioInformacion> getUsersInPersonal() { List <UsuarioInformacion> users = new List <UsuarioInformacion>(); try { NpgsqlConnection user = new NpgsqlConnection(conn); string selectUser = "******"; NpgsqlCommand command = new NpgsqlCommand(selectUser, user); user.Open(); command.Parameters.AddWithValue("@activo", false); NpgsqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { UsuarioInformacion u = new UsuarioInformacion(); u.Nombre = reader[1].ToString() + " " + reader[2].ToString(); u.NumeroCredencial = Int32.Parse(reader[0].ToString()); u.Permiso = Permiso.UsuarioNormal; users.Add(u); } return(users); } catch { return(null); } }
public UsuarioInformacion buscarUsuarioReloj(int idPersona) { UsuarioInformacion u = null; if (lstUser != null) { foreach (var item in lstUser) { if (item.NumeroCredencial == idPersona) { u = item; } } } return(u); }
public List <UsuarioInformacion> getUsers() { List <UsuarioInformacion> users = new List <UsuarioInformacion>(); try { NpgsqlConnection user = new NpgsqlConnection(conn); string selectUser = "******"; NpgsqlCommand command = new NpgsqlCommand(selectUser, user); user.Open(); command.Parameters.AddWithValue("@activo", true); NpgsqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { UsuarioInformacion u = new UsuarioInformacion(); u.Nombre = reader[1].ToString() + " " + reader[2].ToString(); u.NumeroCredencial = Int32.Parse(reader[0].ToString()); if (reader[3].ToString() == "UsuarioNormal") { u.Permiso = Permiso.UsuarioNormal; } else { if (reader[3].ToString() == "UsuarioEnrolador") { u.Permiso = Permiso.UsuarioEnrolador; } else { u.Permiso = Permiso.UsuarioAdministrador; } } users.Add(u); } return(users); } catch { return(null); } }
private void btn_sincronizar_Click(object sender, EventArgs e) { progressBar1.Visible = true; progressBar1.Value = 20; string[] allHuellas = new string[10]; Dictionary <int, string> huellas = new Dictionary <int, string>(); List <UserInfo> userInfos = new List <UserInfo>(); List <UsuarioInformacion> users = new List <UsuarioInformacion>(); //Actualiza eti_huella segun el estado de los trabajadores en la tabla personal data.UpdateEstadoPersonal(); //Obtener los usuarios en eti_huella users = data.getUsers(); int j = 0; try { this.Cursor = Cursors.WaitCursor; while (relojes[j, 0] != null) { if (!dispositivo.DispositivoConectar(relojes[j, 0], 1, false)) { MessageBox.Show("Error al conectarse al reloj " + relojes[j, 0], "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { //Buscar todos los usuarios del dispositivo if (dispositivo.UsuarioBuscarTodos(false)) { lstUser = dispositivo.ListaUsuarios; } //eliminar los churres del reloj EliminarUsuariosReloj(lstUser); foreach (var item in users) //recorrer lista de usuarios en BD { allHuellas = data.getHuellas(item.NumeroCredencial.ToString()); huellas = data.huellasSinEspacio(allHuellas); //agregar huellas a usuarios que estan en el reloj if (buscarUsuarioReloj(int.Parse(item.NumeroCredencial.ToString())) != null) { UsuarioInformacion usuario = buscarUsuarioReloj(int.Parse(item.NumeroCredencial.ToString())); List <UsuarioHuella> huellaslist = usuario.Huellas; foreach (var marcas in huellas) { bool enc = false; foreach (var h in huellaslist) { if (marcas.Value == h.B64Huella) { enc = true; } } if (!enc) { UsuarioHuella uh = new UsuarioHuella(); uh.B64Huella = marcas.Value; uh.IndexHuella = marcas.Key; huellaslist.Add(uh); } } } else { //insertar usuarios sin huellas en el reloj if (huellas.Count == 0) { dispositivo.UsuarioAgregar(Int32.Parse(item.NumeroCredencial.ToString()), item.Nombre, item.Permiso, 0, ""); } else { //insertar usuarios nuevos en el reloj foreach (var h in huellas) { dispositivo.UsuarioAgregar(Int32.Parse(item.NumeroCredencial.ToString()), item.Nombre, item.Permiso, h.Key, h.Value); } } } } } this.Cursor = Cursors.Default; progressBar1.Value += progreso; j++; dispositivo.DispositivoDesconectar(); } if (progressBar1.Value > 100) { progressBar1.Value = 100; } // MessageBox.Show("Proceso terminado"); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }