public List <UsuarioRoles> ReadByUsuario(int id_Usuario)
        {
            List <UsuarioRoles> result = default(List <UsuarioRoles>);
            var usuarioRolesDAC        = new UsuarioRolesDAC();
            List <UsuarioRoles> roles  = new List <UsuarioRoles>();

            result = usuarioRolesDAC.ReadByUsuario(id_Usuario);
            foreach (var item in result)
            {
                UsuarioRoles      roles1   = new UsuarioRoles();
                UsuariosComponent usuarios = new UsuariosComponent();

                RolesDAC rolesDAC = new RolesDAC();

                if (rolesDAC.VerificarSiEsUnPermiso(item.roles.Id) != null)
                {
                    roles1.Id = 1;
                    PermisoComponent permisoComponent = new PermisoComponent();
                    roles1.roles = permisoComponent.ReadBy(item.roles.Id);
                }
                else
                {
                    RolesComponent rolesComponent = new RolesComponent();
                    roles1.roles = rolesComponent.ReadBy(item.roles.Id);
                    roles1.Id    = 0;
                }
                roles1.usuarios = usuarios.ReadBy(item.usuarios.Id);



                roles.Add(roles1);
            }
            return(roles);
        }
        public Persona ReadBy(string id)
        {
            Persona    persona    = new Persona();
            PersonaDAC personaDAC = new PersonaDAC();

            persona = personaDAC.ReadBy(id);
            UsuariosComponent usuariosComponent = new UsuariosComponent();

            persona.usuarios = usuariosComponent.ReadBy(persona.usuarios.Id);
            return(persona);
        }
        public Persona ReadBy(int id)
        {
            Persona    persona    = new Persona();
            PersonaDAC personaDAC = new PersonaDAC();

            persona = personaDAC.ReadBy(id);
            UsuariosComponent usuariosComponent = new UsuariosComponent();


            return(persona);
        }
        public void VerificarIntentos(int id)
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            Usuarios          usuarioTabla      = new Usuarios();

            usuarioTabla = usuariosComponent.ReadBy(id);
            if (usuarioTabla.CantidadIntentos >= 4)
            {
                usuariosComponent.Bloquear(id);
            }
        }
        public bool VeriricarUserName(Usuarios usuarios)
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            Usuarios          usuarioTabla      = new Usuarios();

            usuarioTabla = usuariosComponent.ReadByEmail(usuarios.Email);
            if (usuarioTabla is null)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
        public bool VerificarBloqueado(int id)
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            Usuarios          usuarioTabla      = new Usuarios();

            usuarioTabla = usuariosComponent.ReadBy(id);
            if (usuarioTabla.Bloqueado)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
        public Persona Create(Persona entity)
        {
            if (Verificar(entity))
            {
                //agregar Usuario

                Usuarios          usuarios          = new Usuarios();
                UsuariosComponent usuariosComponent = new UsuariosComponent();
                usuarios          = entity.usuarios;
                usuarios.Email    = entity.email;
                usuarios.UserName = entity.email;
                usuariosComponent.Crear(usuarios);
                //Crear persona
                PersonaDAC personaDAC = new PersonaDAC();
                Persona    persona    = new Persona();
                entity.usuarios = usuariosComponent.ReadByEmail(entity.email);
                persona         = personaDAC.Create(entity);


                //Agrega tipo Persona
                TipoPersonaPersonaComponent tipoPersonaPersonaComponent = new TipoPersonaPersonaComponent();
                TipoPersonaPersona          tipoPersonaPersona          = new TipoPersonaPersona();
                tipoPersonaPersona.persona.Id     = entity.Id;
                tipoPersonaPersona.tipoPersona.Id = entity.tipoPersona.Id;
                tipoPersonaPersonaComponent.Create(tipoPersonaPersona);



                //Agrega Direccion
                DireccionComponent direccionComponent = new DireccionComponent();
                direccionComponent.Create(entity.Direccion);

                //Asiganar direccion al usuario
                DireccionPersona direccionPersona = new DireccionPersona();
                direccionPersona.direccion  = direccionComponent.ReadBy(entity.Direccion);
                direccionPersona.persona.Id = entity.Id;
                DireccionPersonaComponent direccion = new DireccionPersonaComponent();
                direccion.Create(direccionPersona);



                return(persona);
            }
            else
            {
                return(null);
            }
        }
        public bool VerificarContraseña(int id, Usuarios usuarios)
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            Usuarios          usuarioTabla      = new Usuarios();

            usuarioTabla = usuariosComponent.ReadBy(id);
            EncriptarSHA256 encriptarSHA256 = new EncriptarSHA256(usuarios.Password);
            string          pass            = encriptarSHA256.Hashear();

            if (usuarioTabla.Password == pass)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public List <Persona> Read()
        {
            PersonaDAC     personaDAC   = new PersonaDAC();
            List <Persona> listaPersona = new List <Persona>();
            List <Persona> result       = new List <Persona>();

            listaPersona = personaDAC.Read();
            foreach (Persona item in listaPersona)
            {
                UsuariosComponent usuariosComponent = new UsuariosComponent();
                Persona           persona           = new Persona();
                persona          = item;
                persona.usuarios = usuariosComponent.ReadBy(item.usuarios.Id);
                result.Add(persona);
            }



            return(result);
        }
Example #10
0
        public bool VerificarDVV()
        {
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            DVVComponent      dVVComponent      = new DVVComponent();
            DVV dvvTabla = new DVV();

            dvvTabla = dVVComponent.ObtenerDVV("Usuario");
            string dvhTabla    = usuariosComponent.ListaDVH();
            DVV    dvvGenerado = new DVV();

            dvvGenerado = dVVComponent.GenerarDVV(dvhTabla, "Usuario");
            if (dvvTabla.dvv == dvvGenerado.dvv)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public bool VerificarDVH(int id, Usuarios usuarios)
        {
            UsuarioParcial usuariosFormateado = new UsuarioParcial();

            usuariosFormateado.Bloqueado = usuarios.Bloqueado;
            usuariosFormateado.Email     = usuarios.Email;
            usuariosFormateado.UserName  = usuarios.Email;
            usuariosFormateado.Password  = usuarios.Password;
            UsuariosComponent usuariosComponent = new UsuariosComponent();
            Usuarios          usuarioTabla      = new Usuarios();

            usuarioTabla = usuariosComponent.ReadBy(id);
            string dvhIngresado = DigitoVerificadorH.getDigitoEncriptado(usuariosFormateado);

            if (usuarioTabla.DVH.DVH == dvhIngresado)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public LoginError VerificarLogin(Usuarios usuarios)

        {
            BitacoraComponent bitacoraComponent = new BitacoraComponent();
            Bitacora          bitacora          = new Bitacora();

            bitacora.usuarios = usuarios;
            bool       userName   = VeriricarUserName(usuarios);
            LoginError loginError = new LoginError();

            if (userName)
            {
                UsuariosComponent usuariosComponent = new UsuariosComponent();
                Usuarios          usuarioTabla      = new Usuarios();


                usuarioTabla = usuariosComponent.ReadByEmail(usuarios.Email);
                bool password = VerificarContraseña(usuarioTabla.Id, usuarios);
                VerificarIntentos(usuarioTabla.Id);
                if (password)
                {
                    bool DVH = VerificarDVH(usuarioTabla.Id, usuarios);

                    if (DVH)
                    {
                        bool DVV = VerificarDVV();
                        if (DVV)
                        {
                            if (VerificarBloqueado(usuarioTabla.Id))
                            {
                                bitacora.eventoBitacora.Id = 5;
                                bitacoraComponent.Create(bitacora);
                                loginError.error = "";
                            }
                            else
                            {
                                loginError.error           = "La cuenta esta Bloqueada. Envie un email con el error a [email protected] ";
                                bitacora.eventoBitacora.Id = 1;
                                bitacoraComponent.Create(bitacora);
                            }
                        }
                        else
                        {
                            loginError.error           = "Error Interno, vualva a intentar";
                            bitacora.eventoBitacora.Id = 2;
                            bitacoraComponent.Create(bitacora);

                            BackupComponent backupComponent = new BackupComponent();
                            backupComponent.RestaurarBase();
                        }
                    }
                    else
                    {
                        loginError.error           = "Error Interno, vualva a intentar";
                        bitacora.eventoBitacora.Id = 3;
                        bitacoraComponent.Create(bitacora);
                        BackupComponent backupComponent = new BackupComponent();
                        backupComponent.RestaurarBase();
                    }
                }
                else
                {
                    loginError.error           = "Usuario o Contraseña Invalido";
                    bitacora.eventoBitacora.Id = 4;
                    bitacoraComponent.Create(bitacora);
                }
            }

            else
            {
                loginError.error = "Usuario o Contraseña Invalido";
            }

            return(loginError);
        }
Example #13
0
        public LoginError VerificarLogin(Usuarios usuarios)

        {
            BitacoraComponent bitacoraComponent = new BitacoraComponent();


            EventoBitacora eventoBitacora = new EventoBitacora();


            bool       userName   = VeriricarUserName(usuarios);
            LoginError loginError = new LoginError();

            if (userName)
            {
                UsuariosComponent usuariosComponent = new UsuariosComponent();
                Usuarios          usuarioTabla      = new Usuarios();


                usuarioTabla = usuariosComponent.ReadByEmail(usuarios.Email);
                SessionManager.instance.login(usuarioTabla);
                bool password = VerificarContraseña(usuarioTabla.Id, usuarios);

                bool intentos = VerificarIntentos(usuarioTabla.Id);
                bool DVH      = VerificarDVH(usuarioTabla.Id, usuarios);
                if (DVH)
                {
                    bool DVV = VerificarDVV();
                    if (DVV)
                    {
                        if (VerificarBloqueado(usuarioTabla.Id))
                        {
                            if (password)

                            {
                                eventoBitacora.Id = 3;
                                Bitacora bitacora = new Bitacora(usuarioTabla, eventoBitacora);
                                bitacoraComponent.Create(bitacora);
                                usuariosComponent.BorrarIntentos(usuarioTabla.Id);
                                loginError.error = "";
                            }
                            else
                            {
                                loginError.error  = "Usuario o Contraseña Invalido";
                                eventoBitacora.Id = 4;
                                Bitacora bitacora = new Bitacora(usuarioTabla, eventoBitacora);
                                usuariosComponent.UpdateIntentos(usuarioTabla.CantidadIntentos + 1, usuarioTabla.Id);
                                bitacoraComponent.Create(bitacora);
                            }
                        }
                        else
                        {
                            eventoBitacora.Id = 1;
                            Bitacora bitacora = new Bitacora(usuarioTabla, eventoBitacora);
                            loginError.error = "La cuenta esta Bloqueada ";

                            bitacoraComponent.Create(bitacora);
                        }
                    }
                    else
                    {
                        loginError.error  = "Error Interno, Por favor contacte al administrador";
                        eventoBitacora.Id = 7;
                        Bitacora bitacora = new Bitacora(usuarioTabla, eventoBitacora);
                        bitacoraComponent.Create(bitacora);
                    }
                }
                else
                {
                    loginError.error  = "Error Interno, Contacte al administrador";
                    eventoBitacora.Id = 5;
                    Bitacora bitacora = new Bitacora(usuarioTabla, eventoBitacora);
                    bitacoraComponent.Create(bitacora);
                }
            }

            else
            {
                loginError.error = "Usuario o Contraseña Invalido";
            }

            return(loginError);
        }