コード例 #1
0
 /// <summary>
 /// DEVUELVE EL ADMINISTRATIVO CON EL SOLICITADO
 /// </summary>
 /// <param name="id"></param>
 /// <returns>ADMINISTRATIVO</returns>
 public async Task<Administrativo>getAdministrativo(string id)
 {
     Administrativo administrativo = null;
     if (id == null)
     {
         throw new MensajeException("Id de usuario inexistente");
     }
     else
     {
         administrativo = await DBRepositoryMongo<Administrativo>.GetItemAsync(id, "Administrativos");
         administrativo = administrativo.Desencriptar(administrativo);
         return administrativo;
     }
 }
コード例 #2
0
        /// <summary>
        /// devuelve el administrativo o el cliente si lo puede validar o si no devuelve null
        /// </summary>
        /// <param name="administrativo"></param>
        /// <param name="pass"></param>
        /// <returns>el administrativo o cliente con las credenciales solicitadas</returns>
        public async Task<Usuario> Login(string administrativo, string pass)
        {
            MensajeException mensajeError = new MensajeException("Usuario y/o contraseña incorrecta");
            Usuario salida = null;
            try
            {
                Administrativo user = await DBRepositoryMongo<Administrativo>.Login(Seguridad.Encriptar(administrativo), "Administrativos");
                if (user == null)
                {
                    Cliente cliente = await DBRepositoryMongo<Cliente>.Login(Seguridad.Encriptar(administrativo), "Clientes");
                    if (cliente != null)
                    {
                        cliente = cliente.Desencriptar(cliente);
                        if (cliente.Password == pass)
                        {
                            salida = cliente; 
                        }
                        else
                        {
                            throw mensajeError;
                        }
                    }
                    else
                    {
                        throw new MensajeException("Usuario incorrecto");
                    }
                }
                else
                {
                    user = user.Desencriptar(user);
                    if (user.Password == pass)
                    {
                        salida = user;
                    }
                    else
                    {
                        throw mensajeError;
                    }
                }
                return salida;

            }catch(MensajeException msg)
            {
                throw msg;
            }
        }