Пример #1
0
    def buscarUsuario(self, id_usuario=None, email=None):

        if ((not id_usuario and not email)
                or (id_usuario is None and email is None)):
            return [{}]

        query = "SELECT * FROM usuarios WHERE 1 = 1 "

        if id_usuario and isinstance(id_usuario, int) and id_usuario > 0:
            query += " AND id_usuario = %d" % id_usuario
        if email and len(email) > 10:
            query += " AND email = '%s'" % email

        self.conexao = Banco()
        cur = self.conexao.conectar()
        cur.execute(query)
        sql = cur.fetchall()
        cur.close()

        for a in sql:
            return self.criaUsuario(id_usuario=a['id_usuario'],
                                    id_tipo_usuario=a['id_tipo_usuario'],
                                    nome=a['nome'],
                                    ddd_telefone=a['ddd_telefone'],
                                    telefone=a['telefone'],
                                    ddd_celular=a['ddd_celular'],
                                    celular=a['celular'],
                                    email=a['email'],
                                    cep_atual=a['cep_atual'],
                                    latitude_atual=a['latitude_atual'],
                                    longitude_atual=a['logitude_atual'])
        else:
            return self.criaUsuario()
Пример #2
0
    def mapear(self):

        self.conexao = Banco().conectar()

        query = "UPDATE usuarios SET nome = %s " +\
            " AND ddd_telefone = %d" +\
            " AND telefone = %d" +\
            " AND ddd_celular = %d" +\
            " AND celular = %d" +\
            " AND email = %s" +\
            " AND cep_atual = %s" +\
            " AND latitude_atual = %f" +\
            " AND longitude_atual = %f"

        query % (self.getNome(), self.ddd_telefone, self.telefone,
                 self.ddd_celular, self.celular, self.email,
                 self.cep_atual and self.cep_atual or 'null',
                 self.latitude_atual and self.latitude_atual or 'null',
                 self.longitude_atual and self.longitude_atual or 'null')

        if self.getId() and self.getId() > 0:
            query += " WHERE id_usuario = %d"

        query % self.getId()

        self.conexao.execute(query)

        self.conexao.close()
Пример #3
0
    def buscarUsuarioCrendenciais(self, email, senha):

        query = (("""SELECT *
                FROM usuarios WHERE email = '%s'
                                    AND senha = '%s'""") % (email, senha))
        self.conexao = Banco()
        cur = self.conexao.conectar()
        cur.execute(query)
        sql = cur.fetchall()
        cur.close()

        for u in sql:
            return self.criaUsuario(id_usuario=a['id_usuario'],
                                    id_tipo_usuario=a['id_tipo_usuario'],
                                    nome=a['nome'],
                                    ddd_telefone=a['ddd_telefone'],
                                    telefone=a['telefone'],
                                    ddd_celular=a['ddd_celular'],
                                    celular=a['celular'],
                                    email=a['email'],
                                    cep_atual=a['cep_atual'],
                                    latitude_atual=a['latitude_atual'],
                                    longitude_atual=a['logitude_atual'])
        else:
            return self.criaUsuario()
Пример #4
0
class ServicosPersistencia(Servico):
    """
    Classe persistencia de servico que permite gerenciar objetos
    do tipo servico
    """

    def __init__(self):
        self.conexao = Banco().conectar()

    def buscaServico(self, id):

        query = 'SELECT * FROM  servicos WHERE 1=1 id_servico = %d' % (id)

        for s in self.conexao.execute(query):
            return Servico(id_servico=s.id_servico,
                           servico=s.servico,
                           descricao=s.descricao)

    def buscaListaServicos(self, lista):

        lista = []

        query = ('SELECT * FROM  servicos WHERE 1=1 id_servico IN (%s)') %\
            (','.join(str(x) for x in lista))

        for s in self.conexao.execute(query):
            lista.append(Servico(id_servico=s.id_servico,
                                 servico=s.servico,
                                 descricao=s.descricao))

        return lista
Пример #5
0
class ServicosPersistencia(Servico):
    """
    Classe persistencia de servico que permite gerenciar objetos
    do tipo servico
    """
    def __init__(self):
        self.conexao = Banco().conectar()

    def buscaServico(self, id):

        query = 'SELECT * FROM  servicos WHERE 1=1 id_servico = %d' % (id)

        for s in self.conexao.execute(query):
            return Servico(id_servico=s.id_servico,
                           servico=s.servico,
                           descricao=s.descricao)

    def buscaListaServicos(self, lista):

        lista = []

        query = ('SELECT * FROM  servicos WHERE 1=1 id_servico IN (%s)') %\
            (','.join(str(x) for x in lista))

        for s in self.conexao.execute(query):
            lista.append(
                Servico(id_servico=s.id_servico,
                        servico=s.servico,
                        descricao=s.descricao))

        return lista
Пример #6
0
    def mapear(self):

        self.conexao = Banco().conectar()

        query = "UPDATE usuarios SET nome = %s " +\
            " AND ddd_telefone = %d" +\
            " AND telefone = %d" +\
            " AND ddd_celular = %d" +\
            " AND celular = %d" +\
            " AND email = %s" +\
            " AND cep_atual = %s" +\
            " AND latitude_atual = %f" +\
            " AND longitude_atual = %f"

        query % (self.getNome(),
                 self.ddd_telefone, self.telefone,
                 self.ddd_celular, self.celular,
                 self.email,
                 self.cep_atual and self.cep_atual or 'null',
                 self.latitude_atual and self.latitude_atual or 'null',
                 self.longitude_atual and self.longitude_atual or 'null')

        if self.getId() and self.getId() > 0:
            query += " WHERE id_usuario = %d"

        query % self.getId()

        self.conexao.execute(query)

        self.conexao.close()
Пример #7
0
class Usuario(object):
    """
    Classe abstrata de usuario
    """
    def __init__(self,
                 id_usuario=None,
                 id_tipo_usuario=None,
                 nome=None,
                 ddd_telefone=None,
                 telefone=None,
                 ddd_celular=None,
                 celular=None,
                 email=None,
                 cep_atual=None,
                 latitude_atual=None,
                 longitude_atual=None,
                 senha=None):
        self.id_usuario = id_usuario
        self.id_tipo_usuario = id_tipo_usuario
        self.nome = nome
        self.ddd_telefone = ddd_telefone
        self.telefone = telefone
        self.ddd_celular = ddd_celular
        self.celular = celular
        self.email = email
        self.cep_atual = cep_atual
        self.latitude_atual = latitude_atual
        self.longitude_atual = longitude_atual
        self.senha = senha

        self.pesquisaUsuarios = pesquisaUsuarios()

    def getId(self):
        return self.id_usuario

    def getNome(self):
        return self.nome

    def getIdTipo(self):
        return self.id_tipo_usuario

    def getCep(self):
        return self.cep_atual

    def getLatitude(self):
        return self.latitude_atual

    def getLongitude(self):
        return self.longitude_atual

    def setId(self, id):
        self.id_usuario = id

    def setNome(self, nome):
        self.nome = nome

    def setIdTipo(self, id):
        self.id_tipo_usuario = id

    def setCep(self, c):
        self.cep_atual = c

    def setLatitude(self, l):
        self.latitude_atual = l

    def setLongitude(self, l):
        self.longitude_atual = l

    def persiste(self, id_usuario, id_tipo_usuario, nome, ddd_telefone,
                 telefone, ddd_celular, celular, email, cep_atual,
                 latitude_atual, longitude_atual):

        self.setId(id_usuario)
        self.setNome(nome)
        self.id_tipo_usuario = id_tipo_usuario
        self.ddd_telefone = ddd_telefone
        self.telefone = telefone
        self.ddd_celular = ddd_celular
        self.celular = celular
        self.email = email
        self.cep_atual = cep_atual
        self.latitude_atual = latitude_atual
        self.longitude_atual = longitude_atual

    def getToString(self):
        return {
            'id_usuario': self.getId(),
            'id_tipo_usuario': self.id_tipo_usuario,
            'nome': self.getNome(),
            'ddd_telefone': self.ddd_telefone,
            'telefone': self.telefone,
            'ddd_celular': self.ddd_celular,
            'celular': self.celular,
            'email': self.email,
            'cep_atual': self.cep_atual,
            'latitude_atual': self.latitude_atual,
            'logitude_atual': self.longitude_atual
        }

    def inserir(self):

        return self.pesquisaUsuarios.inserir_usuario(
            self.getIdTipo(), self.getNome(), self.ddd_telefone, self.telefone,
            self.ddd_celular, self.celular, self.email, self.getCep(),
            self.getLatitude(), self.getLongitude(), self.senha)

    def mapear(self):

        self.conexao = Banco().conectar()

        query = "UPDATE usuarios SET nome = %s " +\
            " AND ddd_telefone = %d" +\
            " AND telefone = %d" +\
            " AND ddd_celular = %d" +\
            " AND celular = %d" +\
            " AND email = %s" +\
            " AND cep_atual = %s" +\
            " AND latitude_atual = %f" +\
            " AND longitude_atual = %f"

        query % (self.getNome(), self.ddd_telefone, self.telefone,
                 self.ddd_celular, self.celular, self.email,
                 self.cep_atual and self.cep_atual or 'null',
                 self.latitude_atual and self.latitude_atual or 'null',
                 self.longitude_atual and self.longitude_atual or 'null')

        if self.getId() and self.getId() > 0:
            query += " WHERE id_usuario = %d"

        query % self.getId()

        self.conexao.execute(query)

        self.conexao.close()
Пример #8
0
class UsuariosPersistencia(object):
    """
    Classe persistencia de usuarios que permite gerenciar objetos
    do tipo usuario
    """
    def __init__(self):
        self.conexao = Banco().conectar()
        self.pesquisa = pesquisaUsuarios()

    def criaUsuario(self,
                    id_usuario=None,
                    id_tipo_usuario=None,
                    nome=None,
                    ddd_telefone=None,
                    telefone=None,
                    ddd_celular=None,
                    celular=None,
                    email=None,
                    cep_atual=None,
                    latitude_atual=None,
                    longitude_atual=None):

        if id_tipo_usuario is None or not id_tipo_usuario:
            return UsuariosPersistente(id_usuario=id_usuario,
                                       id_tipo_usuario=id_tipo_usuario,
                                       nome=nome,
                                       ddd_telefone=ddd_telefone,
                                       telefone=telefone,
                                       ddd_celular=ddd_celular,
                                       celular=celular,
                                       email=email,
                                       cep_atual=cep_atual,
                                       latitude_atual=latitude_atual,
                                       longitude_atual=longitude_atual)
        elif id_tipo_usuario == 1:
            return PrestadorPersistente(id_usuario=id_usuario,
                                        id_tipo_usuario=id_tipo_usuario,
                                        nome=nome,
                                        ddd_telefone=ddd_telefone,
                                        telefone=telefone,
                                        ddd_celular=ddd_celular,
                                        celular=celular,
                                        email=email,
                                        cep_atual=cep_atual,
                                        latitude_atual=latitude_atual,
                                        longitude_atual=longitude_atual)
        elif id_tipo_usuario == 2:
            return ClientePersistente(id_usuario=id_usuario,
                                      id_tipo_usuario=id_tipo_usuario,
                                      nome=nome,
                                      ddd_telefone=ddd_telefone,
                                      telefone=telefone,
                                      ddd_celular=ddd_celular,
                                      celular=celular,
                                      email=email,
                                      cep_atual=cep_atual,
                                      latitude_atual=latitude_atual,
                                      longitude_atual=longitude_atual)

    def buscarUsuarioCrendenciais(self, email, senha):

        query = (("""SELECT *
                FROM usuarios WHERE email = '%s'
                                    AND senha = '%s'""") % (email, senha))
        self.conexao = Banco()
        cur = self.conexao.conectar()
        cur.execute(query)
        sql = cur.fetchall()
        cur.close()

        for u in sql:
            return self.criaUsuario(id_usuario=a['id_usuario'],
                                    id_tipo_usuario=a['id_tipo_usuario'],
                                    nome=a['nome'],
                                    ddd_telefone=a['ddd_telefone'],
                                    telefone=a['telefone'],
                                    ddd_celular=a['ddd_celular'],
                                    celular=a['celular'],
                                    email=a['email'],
                                    cep_atual=a['cep_atual'],
                                    latitude_atual=a['latitude_atual'],
                                    longitude_atual=a['logitude_atual'])
        else:
            return self.criaUsuario()

    def buscarUsuario(self, id_usuario=None, email=None):

        if ((not id_usuario and not email)
                or (id_usuario is None and email is None)):
            return [{}]

        query = "SELECT * FROM usuarios WHERE 1 = 1 "

        if id_usuario and isinstance(id_usuario, int) and id_usuario > 0:
            query += " AND id_usuario = %d" % id_usuario
        if email and len(email) > 10:
            query += " AND email = '%s'" % email

        self.conexao = Banco()
        cur = self.conexao.conectar()
        cur.execute(query)
        sql = cur.fetchall()
        cur.close()

        for a in sql:
            return self.criaUsuario(id_usuario=a['id_usuario'],
                                    id_tipo_usuario=a['id_tipo_usuario'],
                                    nome=a['nome'],
                                    ddd_telefone=a['ddd_telefone'],
                                    telefone=a['telefone'],
                                    ddd_celular=a['ddd_celular'],
                                    celular=a['celular'],
                                    email=a['email'],
                                    cep_atual=a['cep_atual'],
                                    latitude_atual=a['latitude_atual'],
                                    longitude_atual=a['logitude_atual'])
        else:
            return self.criaUsuario()

    def buscaListaUsuarios(self, lista=None):

        lst = []

        if lista is None:
            for u in self.pesquisa.busca_usuarios_cep_desatualizado():
                u = dict(u)
                lst.append(
                    self.criaUsuario(id_usuario=u['id_usuario'],
                                     id_tipo_usuario=u['id_tipo_usuario'],
                                     nome=u['nome'],
                                     email=u['email'],
                                     cep_atual=u['cep_atual'],
                                     latitude_atual=u['latitude_atual'],
                                     longitude_atual=u['logitude_atual']))
        return lst
Пример #9
0
 def __init__(self):
     self.conexao = Banco().conectar()
     self.pesquisa = pesquisaUsuarios()
Пример #10
0
 def __init__(self):
     self.conexao = Banco().conectar()
Пример #11
0
class Usuario(object):
    """
    Classe abstrata de usuario
    """

    def __init__(self, id_usuario=None, id_tipo_usuario=None,
                 nome=None, ddd_telefone=None, telefone=None,
                 ddd_celular=None, celular=None,
                 email=None, cep_atual=None,
                 latitude_atual=None, longitude_atual=None,
                 senha=None):
        self.id_usuario = id_usuario
        self.id_tipo_usuario = id_tipo_usuario
        self.nome = nome
        self.ddd_telefone = ddd_telefone
        self.telefone = telefone
        self.ddd_celular = ddd_celular
        self.celular = celular
        self.email = email
        self.cep_atual = cep_atual
        self.latitude_atual = latitude_atual
        self.longitude_atual = longitude_atual
        self.senha = senha

        self.pesquisaUsuarios = pesquisaUsuarios()

    def getId(self):
        return self.id_usuario

    def getNome(self):
        return self.nome

    def getIdTipo(self):
        return self.id_tipo_usuario

    def getCep(self):
        return self.cep_atual

    def getLatitude(self):
        return self.latitude_atual

    def getLongitude(self):
        return self.longitude_atual

    def setId(self, id):
        self.id_usuario = id

    def setNome(self, nome):
        self.nome = nome

    def setIdTipo(self, id):
        self.id_tipo_usuario = id

    def setCep(self, c):
        self.cep_atual = c

    def setLatitude(self, l):
        self.latitude_atual = l

    def setLongitude(self, l):
        self.longitude_atual = l

    def persiste(self, id_usuario, id_tipo_usuario,
                 nome, ddd_telefone, telefone,
                 ddd_celular, celular,
                 email, cep_atual,
                 latitude_atual, longitude_atual):

        self.setId(id_usuario)
        self.setNome(nome)
        self.id_tipo_usuario = id_tipo_usuario
        self.ddd_telefone = ddd_telefone
        self.telefone = telefone
        self.ddd_celular = ddd_celular
        self.celular = celular
        self.email = email
        self.cep_atual = cep_atual
        self.latitude_atual = latitude_atual
        self.longitude_atual = longitude_atual

    def getToString(self):
        return {'id_usuario': self.getId(),
                'id_tipo_usuario': self.id_tipo_usuario,
                'nome': self.getNome(),
                'ddd_telefone': self.ddd_telefone,
                'telefone': self.telefone,
                'ddd_celular': self.ddd_celular,
                'celular': self.celular,
                'email': self.email,
                'cep_atual': self.cep_atual,
                'latitude_atual': self.latitude_atual,
                'logitude_atual': self.longitude_atual}

    def inserir(self):

        return self.pesquisaUsuarios.inserir_usuario(
            self.getIdTipo(),
            self.getNome(),
            self.ddd_telefone,
            self.telefone,
            self.ddd_celular,
            self.celular,
            self.email,
            self.getCep(),
            self.getLatitude(),
            self.getLongitude(),
            self.senha)

    def mapear(self):

        self.conexao = Banco().conectar()

        query = "UPDATE usuarios SET nome = %s " +\
            " AND ddd_telefone = %d" +\
            " AND telefone = %d" +\
            " AND ddd_celular = %d" +\
            " AND celular = %d" +\
            " AND email = %s" +\
            " AND cep_atual = %s" +\
            " AND latitude_atual = %f" +\
            " AND longitude_atual = %f"

        query % (self.getNome(),
                 self.ddd_telefone, self.telefone,
                 self.ddd_celular, self.celular,
                 self.email,
                 self.cep_atual and self.cep_atual or 'null',
                 self.latitude_atual and self.latitude_atual or 'null',
                 self.longitude_atual and self.longitude_atual or 'null')

        if self.getId() and self.getId() > 0:
            query += " WHERE id_usuario = %d"

        query % self.getId()

        self.conexao.execute(query)

        self.conexao.close()
Пример #12
0
 def __init__(self):
     self.conexao = Banco().conectar()