def __encontrar_user(self, email, cnpj):
        conn = get_conexao()
        empresa = EmpresaDao(conn).obter_pelo_cnpj(cnpj)
        user = UsuarioDao(conn, empresa).obter_pelo_email(email)
        conn.close()

        return user
    def encontrar_user(self, email, empresa):
        conn = get_conexao()
        empresa = EmpresaDao(conn).obter_pelo_alias(empresa)
        user = UsuarioDao(conn, empresa).obter_pelo_email(email)
        conn.close()

        return user
    def accept_register(self):
        try:
            conn = get_conexao()

            id = self.request.json['id']

            usuario = RegisterDAO(conn, None).buscar_solicitacao(id)

            if (usuario.get_nome == ''):
                raise Exception(
                    "Nenhuma solicitação encontrada para o ID: '{}'.".format(
                        id))
            else:
                id_usuario = RegisterDAO(conn, None).aprovar_registro(usuario)
                RegisterDAO(conn, None).excluir_solicitacao(id)

            conn.close()

        except Exception as ex:
            return jsonify({'success': False, 'message': str(ex)}), 403
        else:
            return jsonify({
                'success': True,
                'id_usuario': id_usuario
            }), 200
    def __load_profile(self, email, cnpj):
        conn = get_conexao()

        empresa = EmpresaDao(conn).obter_pelo_cnpj(cnpj)
        user = UsuarioDao(conn, empresa).obter_pelo_email(email)
        profile = ProfileDao(conn, user).obter_profile()

        profile = {
            'nome': user.get_nome(),
            'quantidade_arquivos': profile.get_quantidade(),
            'tamanho_arquivos': '{:18.2f}'.format(profile.get_tamanho())
        }

        conn.close()

        return profile
Beispiel #5
0
    def categorias(self):
        try:
            conn = get_conexao()
            usuario = UsuarioLogado().identificar_usuario(request)
            categorias = CategoriaDao(conn, usuario).listar()

            lista = []

            for categoria in categorias:
                lista.append(self.__novo(categoria))

            conn.close()
        except Exception as ex:
            print(ex)
            return jsonify({'success': False, 'message': "Error listing"}), 404
        else:
            return jsonify({'success': True, 'categorias': lista}), 200
    def download(self, id):
        try:
            conn = get_conexao()
            user = UsuarioLogado().identificar_usuario_token(self.token)
            arquivo = ArquivoDao(conn, user).obter(id)

            filename = arquivo.get_arquivo()
            print(filename)
            uploads = os.path.join(current_app.root_path, UPLOAD_FOLDER)
            return send_from_directory(directory=uploads, filename=filename)

            conn.close()
        except Exception as ex:
            print(ex)
            return jsonify({'success': False, 'message': "File not found"}), 500
        else:
            return jsonify({'success': True, 'arquivo': item}), 200
    def pesquisa(self, texto):
        try:
            conn = get_conexao()
            user = UsuarioLogado().identificar_usuario(self.request)
            arquivos = ArquivoDao(conn, user).pesquisar(texto)

            lista = []

            for arquivo in arquivos:
                lista.append(self.__novo_item(arquivo))

            conn.close()
        except Exception as ex:
            print(ex)
            return jsonify({'success': False, 'message': "Error listing"}), 500
        else:
            return jsonify({'success': True, 'arquivos': lista}), 200
    def detalhes(self, id):
        try:
            conn = get_conexao()
            user = UsuarioLogado().identificar_usuario(self.request)
            arquivo = ArquivoDao(conn, user).obter(id)

            item = self.__novo_item(arquivo)

            conn.close()
        except Exception as ex:
            print(ex)
            return jsonify({
                'success': False,
                'message': "File not found"
            }), 500
        else:
            return jsonify({'success': True, 'arquivo': item}), 200
    def validar_email(self, token):
        try:
            email = self.s.loads(token, salt='email-confirm', max_age=3600)

            conn = get_conexao()
            confirmar = RegisterDAO(conn, None).confirmar_email(email)

        except SignatureExpired:
            return jsonify({
                'success':
                False,
                'message':
                "O email de confirmação expirou, solicite um novo cadastro."
            }), 500
        else:
            return jsonify({
                'success': True,
                'message': confirmar
            }), 200
        finally:
            conn.close()
    def register(self, app):
        try:
            email = self.request.json['email']
            password = self.request.json['senha']
            cnpj = self.request.json['cnpj']
            nome = self.request.json['nome']

            solicitacao = Solicitacao(0, email, cnpj, password, nome)

            conn = get_conexao()

            register = RegisterDAO(conn, solicitacao).verificar_solicitacao()

            if (register.get_id() != ''):
                raise Exception(
                    "Já existe uma solicitação para o email: '{}'".format(
                        register.get_email()))

            usuario_encontrado = RegisterDAO(
                conn, solicitacao).verificar_email_solicitado()

            if (usuario_encontrado > 0):
                raise Exception("Email solicitado já cadastrado.")

            register = RegisterDAO(conn, solicitacao).new()

            email = EnvioEmail(solicitacao.get_email(),
                               app).enviar_confirmacao()

        except Exception as ex:
            print(ex)
            return jsonify({'success': False, 'message': str(ex)}), 500
        else:
            return jsonify({
                'success': True,
                'id_solicitacao': register.get_id(),
                'email_confirmacao': email
            }), 200
        finally:
            conn.close()
    def __inserir(self, request):
        conn = get_conexao()

        usuario = UsuarioLogado().identificar_usuario(request)

        keys = request.form['chave'].split(";")

        categoria = request.form['categoria']
        categoria = CategoriaDao(conn, usuario).obter_pelo_id(categoria)

        file = request.files['arquivo']
        tipo = file.filename.rsplit('.', 1)[1]
        tamanho = os.path.getsize('{}/{}'.format(UPLOAD_FOLDER, file.filename))
        print(tamanho)
        tamanho = tamanho / 1024 / 1024

        arquivo = Arquivo(request.form['descricao'], categoria, keys, tipo, '',
                          usuario, file.filename, tamanho, 0)
        id = ArquivoDao(conn, usuario).adicionar(arquivo)
        conn.close()

        return id
    def all_registers(self):
        try:
            conn = get_conexao()

            user = UsuarioLogado().identificar_usuario(self.request)

            solicitacoes = RegisterDAO(conn, None).listar_confirmados(
                user.get_empresa())

            lista = []

            for solicitacao in solicitacoes:
                lista.append(self.__novo(solicitacao))

            conn.close()

        except Exception as ex:
            return jsonify({'success': False, 'message': str(ex)}), 500
        else:
            return jsonify({
                'success': True,
                'solicitacoes': lista
            }), 200