예제 #1
0
        public List <BE.usuario> listarUsuariosFamilia(BE.familia f)
        {
            List <BE.usuario> usuariosFamilia = new List <BE.usuario>();
            DataTable         datos           = new DataTable();

            try
            {
                datos = SQLHelper.GetInstance().ObtenerDatos("select id_usuario from usuario_familia "
                                                             + "where id_familia = " + f.idFamilia);

                foreach (DataRow reg in datos.Rows)
                {
                    BE.usuario usuario = new BE.usuario();
                    usuario.IdUsuario = Convert.ToInt32(reg["id_usuario"]);

                    usuariosFamilia.Add(usuario);
                }
            }

            catch (Exception ex)
            {
                throw ex;
            }

            return(usuariosFamilia);
        }
예제 #2
0
        public List <int> obtenerPatentesFamilia(BE.usuario usuario)
        {
            List <int> patentes = new List <int>();
            DataTable  datos    = new DataTable();

            try
            {
                datos = SQLHelper.GetInstance().ObtenerDatos("SELECT pf.id_patente FROM Usuario_Familia uf " +
                                                             "inner join Patente_Familia pf on uf.id_familia = pf.id_familia " +
                                                             "WHERE id_usuario = " + usuario.IdUsuario);

                if (datos.Rows.Count > 0)
                {
                    foreach (DataRow reg in datos.Rows)
                    {
                        patentes.Add(Convert.ToInt32(reg["id_patente"]));
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(patentes);
        }
예제 #3
0
        private void Button1_Click(object sender, EventArgs e)
        {
            BE.usuario  nuevoUsuario  = new BE.usuario();
            BLL.usuario gestorUsuario = new BLL.usuario();

            if (!gestorUsuario.IsValidEmail(TextBox5.Text))
            {
                MessageBox.Show(etiquetas[16].etiqueta);
            }

            else if (gestorUsuario.validarCorreo(TextBox5.Text))
            {
                MessageBox.Show(etiquetas[17].etiqueta);
            }

            else if (gestorUsuario.validarUsuario(TextBox8.Text))
            {
                MessageBox.Show(etiquetas[18].etiqueta);
            }

            else if (validarNulos())
            {
                MessageBox.Show(etiquetas[19].etiqueta);
            }
            else
            {
                nuevoUsuario.uss       = encriptacion.Encrypt(TextBox8.Text);
                nuevoUsuario.nombre    = TextBox1.Text;
                nuevoUsuario.apellido  = TextBox2.Text;
                nuevoUsuario.direccion = TextBox3.Text;
                nuevoUsuario.documento = Convert.ToInt32(TextBox4.Text);
                nuevoUsuario.telefono  = Convert.ToInt32(TextBox6.Text);
                nuevoUsuario.IdEstado  = 1;
                nuevoUsuario.mail      = TextBox5.Text;

                nuevoUsuario = usuario.generarPassword(nuevoUsuario);

                try
                {
                    gestorUsuario.agregarUsuario(nuevoUsuario);
                    gestorDV.modificarVerificador(gestorDV.CacularDVV("Usuario"), "Usuario");

                    gestorBitacora.agregarBitacora(userLogin.IdUsuario, 1);
                    gestorDV.modificarVerificador(gestorDV.CacularDVV(gestorBitacora.listarTablaBitacora()), "bitacora");

                    MessageBox.Show(etiquetas[20].etiqueta);
                    this.Owner.Refresh();
                    this.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message.ToString());
                }
            }
        }
예제 #4
0
        public bool modificarFamilias(List <BE.familia> familias, BE.usuario usuario)
        {
            eliminarFamiliasUsuario(usuario);

            foreach (BE.familia f in familias)
            {
                familiaDAL.asignarFamiliaUsuario(f, usuario);
            }

            return(true);
        }
예제 #5
0
        public string obtenerVerificador(BE.usuario usuario)
        {
            string datos = null;

            try {
                datos = SQLHelper.GetInstance().EjecutarScalar("SELECT Digito_Verificador FROM Usuario WHERE id_usuario = '" + usuario.IdUsuario + "'");
            }
            catch (Exception ex) {
                throw ex;
            }

            return(datos);
        }
예제 #6
0
        public DataTable obtenerUsuario(BE.usuario usuario)
        {
            DataTable datos = new DataTable();

            try
            {
                datos = SQLHelper.GetInstance().ObtenerDatos("SELECT * FROM Usuario WHERE id_usuario = " + usuario.IdUsuario + ";");
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(datos);
        }
예제 #7
0
        public bool modificarPatentesNegadas(List <int> nuevasPatentes, BE.usuario usuario)
        {
            try {
                eliminarPatentesNegadasUsuario(usuario);

                foreach (int p in nuevasPatentes)
                {
                    BE.patente patente = new BE.patente();
                    patente.id_patente = p;
                    Patente.asignarPatenteNegadaUsuario(patente, usuario);
                }
            }
            catch (Exception ex) {
                throw ex;
            }

            return(true);
        }
예제 #8
0
        public bool agregarUsuario(BE.usuario usuario)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("INSERT INTO Usuario (usuario,contraseña,nombre,apellido,mail,documento,direccion,telefono,id_estado,digito_verificador) VALUES ('" + usuario.uss + "','" + usuario.pass + "','" + usuario.nombre + "','" + usuario.apellido + "','" + usuario.mail + "'," + usuario.documento + ",'" + usuario.direccion + "'," + usuario.telefono + "," + usuario.IdEstado + ",'" + usuario.digitoVerificador + "')", false);
            } catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #9
0
        public bool eliminarPatenteUsuario(BE.usuario usuario, BE.patente patente)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("DELETE FROM usuario_patente WHERE ID_USUARIO = " + usuario.IdUsuario + " AND ID_PATENTE = " + patente.id_patente, false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #10
0
        public bool eliminarPatentesNegadaUsuario(BE.usuario usuario)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("DELETE FROM usuario_patente_negada WHERE ID_USUARIO = " + usuario.IdUsuario, false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #11
0
        public bool eliminarFamiliasUsuario(BE.usuario usuario)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("DELETE FROM USUARIO_FAMILIA WHERE ID_USUARIO = " + usuario.IdUsuario, false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #12
0
        private void Button4_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show(etiquetas[9].etiqueta + " " + ComboBox1.SelectedItem + "?", etiquetas[8].etiqueta, MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                BE.usuario usuarioSel = new BE.usuario();
                usuarioSel = usuario.generarPassword(ComboBox1.SelectedItem.ToString());

                //modifico el usuario en la base de datos
                if (usuario.modificarUsuario(usuarioSel))
                {
                    //actualizo el digito verificador
                    gestorDV.modificarVerificador(gestorDV.CacularDVV(usuario.listarTablaUsuarios()), "Usuario");
                    MessageBox.Show(etiquetas[13].etiqueta);
                    this.Close();
                }
                else
                {
                    MessageBox.Show(etiquetas[12].etiqueta);
                }
            }
        }
예제 #13
0
        public bool asignarFamiliaUsuario(BE.familia familia, BE.usuario usuario)
        {
            int respuesta = 0;

            try
            {
                respuesta = SQLHelper.GetInstance().Ejecutar("INSERT INTO USUARIO_FAMILIA VALUES (" + usuario.IdUsuario + "," + familia.idFamilia + ")", false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #14
0
        public bool cambiarEstadoUsuario(BE.usuario usuario)
        {
            int respuesta = 0;

            try
            {
                respuesta = SQLHelper.GetInstance().Ejecutar("UPDATE USUARIO SET ID_ESTADO = " + usuario.IdEstado +
                                                             " WHERE ID_USUARIO = " + usuario.IdUsuario, false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #15
0
        public bool asignarPatenteNegadaUsuario(BE.patente patente, BE.usuario usuario)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("INSERT INTO usuario_patente_negada values (" + usuario.IdUsuario + "," + patente.id_patente + ")", false);
            }
            catch (Exception ex) {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }



            else
            {
                return(false);
            }
        }
예제 #16
0
        public bool modificarUsuario(BE.usuario usuario)
        {
            int respuesta = 0;

            try
            {
                respuesta = SQLHelper.GetInstance().Ejecutar("UPDATE Usuario SET usuario = '" + usuario.uss + "', contraseña =  '" + usuario.pass + "', nombre = '" + usuario.nombre + "', apellido = '" + usuario.apellido + "', mail = '" + usuario.mail + "', direccion = '" + usuario.direccion + "', telefono = " + usuario.telefono + ", id_estado = " + usuario.IdEstado + ", documento = " + usuario.documento + ", intentos_fallidos = " + usuario.intentosFallidos + ", digito_verificador = '" + usuario.digitoVerificador + "' WHERE id_usuario = " + usuario.IdUsuario, false);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #17
0
        public bool eliminarPatentesUsuario(BE.familia familia, BE.usuario us)
        {
            int respuesta = 0;

            try
            {
                respuesta = SQLHelper.GetInstance().Ejecutar("delete from usuario_patente "
                                                             + "where id_usuario = " + us.IdUsuario
                                                             + " and id_patente in (select id_patente from Patente_Familia where id_familia = " + familia.idFamilia + ")", false);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #18
0
        public bool asignarPatenteUsuario(BE.patente patente, BE.usuario usuario, string dv)
        {
            int respuesta = 0;

            try {
                respuesta = SQLHelper.GetInstance().Ejecutar("BEGIN IF NOT EXISTS(SELECT * FROM Usuario_Patente " +
                                                             "WHERE id_usuario = " + usuario.IdUsuario +
                                                             " AND id_patente = " + patente.id_patente + ") " +
                                                             "BEGIN INSERT INTO Usuario_Patente VALUES(" + usuario.IdUsuario + "," + patente.id_patente + ",'" + dv + "')" +
                                                             "END END", false);
            }
            catch (Exception ex) {
                throw ex;
            }
            if (respuesta > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #19
0
        public bool modificarPatentes(List <int> nuevasPatentes, BE.usuario usuario)
        {
            try
            {
                eliminarPatentesUsuario(usuario);

                foreach (int p in nuevasPatentes)
                {
                    BE.patente patente = new BE.patente();
                    patente.id_patente = p;
                    string dv = gestorSeguridad.ObtenerHash(p.ToString() + usuario.IdUsuario.ToString());
                    Patente.asignarPatenteUsuario(patente, usuario, dv);
                }

                gestorDV.modificarVerificador(gestorDV.CacularDVV(Patente.listarTablaUsuariosPatentes()), "Usuario_Patente");
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(true);
        }
예제 #20
0
        private void Button3_Click(object sender, EventArgs e)
        {
            foreach (BE.usuario uss in usuarios)
            {
                if (uss.uss == ComboBox1.SelectedItem.ToString())
                {
                    try {
                        BE.usuario usuarioDel = new BE.usuario();
                        bool       del        = false;
                        usuarioDel = usuario.obtenerUsuario(encriptacion.Encrypt(uss.uss));

                        foreach (var p in usuarioDel.patentes)
                        {
                            if (gestorPatente.validarZonaDeNadie(p, usuarioDel.IdUsuario))
                            {
                                del = true;
                            }
                        }

                        if (del)
                        {
                            MessageBox.Show(etiquetas[15].etiqueta);
                        }
                        else
                        {
                            usuario.eliminarUsuario(uss);
                            gestorDV.modificarVerificador(gestorDV.CacularDVV(usuario.listarTablaUsuarios()), "Usuario");
                            MessageBox.Show(etiquetas[11].etiqueta);
                            gestorBitacora.agregarBitacora(userLogin.IdUsuario, 1005);
                        }
                    } catch (Exception ex) {
                        MessageBox.Show(ex.Message.ToString());
                    }
                }
            }
            actualizarCombo();
        }
예제 #21
0
        public string obtenerHash(BE.usuario usuario)
        {
            string    concat = string.Empty;
            DataTable datos  = new DataTable();
            string    hash   = string.Empty;

            try {
                datos = SQLHelper.GetInstance().ObtenerDatos("SELECT usuario,contraseña,nombre,apellido,mail,direccion,telefono,id_estado, intentos_fallidos FROM Usuario WHERE id_usuario = '" + usuario.IdUsuario + "'");

                foreach (DataRow row in datos.Rows)
                {
                    foreach (DataColumn col in datos.Columns)
                    {
                        concat += row[col].ToString();
                    }
                }
            }

            catch (Exception ex) {
                throw ex;
            }

            return(concat);
        }
예제 #22
0
        public List <int> obtenerPatentesNegadas(BE.usuario usuario)
        {
            List <int> patentes = new List <int>();
            DataTable  datos    = new DataTable();

            try
            {
                datos = SQLHelper.GetInstance().ObtenerDatos("SELECT id_patente FROM Usuario_Patente_Negada WHERE id_usuario = " + usuario.IdUsuario + ";");

                if (datos.Rows.Count > 0)
                {
                    foreach (DataRow reg in datos.Rows)
                    {
                        patentes.Add(Convert.ToInt32(reg["id_patente"]));
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(patentes);
        }
예제 #23
0
        public List <int> obtenerFamilias(BE.usuario usuario)
        {
            DataTable  datos    = new DataTable();
            List <int> familias = new List <int>();

            try
            {
                datos = SQLHelper.GetInstance().ObtenerDatos("SELECT id_familia FROM Usuario_Familia WHERE id_usuario = " + usuario.IdUsuario + ";");

                if (datos.Rows.Count > 0)
                {
                    foreach (DataRow reg in datos.Rows)
                    {
                        familias.Add(Convert.ToInt32(reg["id_familia"]));
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(familias);
        }
예제 #24
0
파일: login.cs 프로젝트: ewest1988/UAI-TDD
        private void Button1_Click(object sender, EventArgs e)
        {
            var  digitos      = gestorDV.listarDigitos();
            bool esDigitoRoto = false;

            BE.usuario userLogin = new BE.usuario();
            userLogin.uss  = encriptacion.Encrypt(txtUser.Text);
            userLogin.pass = seguridad.ObtenerHash(txtPass.Text);

            try {
                bool login = new BLL.login().loginUser(userLogin);

                foreach (string digito in digitos)
                {
                    string hash_nuevo  = gestorDV.CacularDVV(digito);
                    string hash_actual = gestorDV.ObtenerDVV(digito);

                    if (hash_nuevo != hash_actual)
                    {
                        esDigitoRoto = true;
                    }
                }

                if (login == true)
                {
                    this.Hide();
                    var main = new main();
                    userLogin = usuario.obtenerUsuario(userLogin.uss);

                    if (userLogin.IdEstado == 1)
                    {
                        gestorBitacora.agregarBitacora(userLogin.IdUsuario, 5);

                        main.userLogin   = userLogin;
                        main.WindowState = FormWindowState.Maximized;

                        if (ComboBox1.SelectedItem.Equals("ES"))
                        {
                            mainIdioma.idLanguage = 1;
                        }
                        else
                        {
                            mainIdioma.idLanguage = 2;
                        }

                        mainIdioma.idMenu = 1;

                        List <BE.idioma> idiomas = new List <BE.idioma>();

                        idiomas = gestorIdioma.listarIdioma(mainIdioma);

                        int i = 0;

                        foreach (ToolStripMenuItem masterToolStripMenuItem in main.MenuStrip1.Items)
                        {
                            foreach (ToolStripMenuItem master in masterToolStripMenuItem.DropDownItems)
                            {
                                master.Text = idiomas[i].etiqueta;
                                i          += 1;
                            }
                        }
                        main.MenuStrip1.Items[0].Text = idiomas[11].etiqueta;
                        main.MenuStrip1.Items[1].Text = idiomas[12].etiqueta;

                        main.idioma = mainIdioma;
                        main.Show();
                    }

                    else
                    {
                        MessageBox.Show(etiquetas[6].etiqueta);
                        this.Show();
                    }

                    if (esDigitoRoto)
                    {
                        MessageBox.Show(etiquetas[5].etiqueta);
                    }
                }

                else
                {
                    if (usuario.actualizarIntentosFallidos(txtUser.Text) < 3)
                    {
                        MessageBox.Show(etiquetas[4].etiqueta);
                    }
                    else
                    {
                        MessageBox.Show(etiquetas[7].etiqueta);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
            }
        }
예제 #25
0
 public bool eliminarPatentesNegadasUsuario(BE.usuario usuario)
 {
     return(Patente.eliminarPatentesNegadaUsuario(usuario));
 }
예제 #26
0
 public bool eliminarFamiliasUsuario(BE.usuario usuario)
 {
     return(familiaDAL.eliminarFamiliasUsuario(usuario));
 }