Пример #1
0
    def FoolLoader(self, params):
        search = util.defaultv(params, "search", "")
        quantos = util.defaultv(params, "quantos", 50)

        #
        s = pyGestorModel.dbsession.getsession()
        dados = []
        info = {}

        q = s.query(contatos).order_by(contatos.nome).filter(contatos.exc != 1)

        search = util.asUnicode(search)

        if len(search) > 0:
            searchx = search.split(" ")
            for s in searchx:
                q = q.filter(contatos.nome.like("%" + s + "%"))

        q = q.limit(quantos)

        # nisk.util.dump(q)
        r = q.all()

        for a in r:
            dados.append({"tid": a.id, "id": a.id, "nome": a.nome, "t4a": a.t4a})
            # dados[a.tid] = {'tid': a.tid, 'dbid': a.id, 'nome': a.nome, 'pai': a.pai, 'level': a.nivel}

        return {"dados": dados}
Пример #2
0
    def FoolLoader(self, params):
        rtab = params['rtab']
        ltab = params['ltab']
        search =util.asUnicode( util.defaultv(params, 'search', ''))
        tree = util.defaultv(params, 'tree', None)
        quantos = util.defaultv(params, 'quantos', 50)

        import pyGestorModel
        from pyGestorModel.orm_listas import grupos, lists_a
        #
        s = pyGestorModel.dbsession.getsession()
        dados = []
        info = {}
        #
        ''''
        def my_import(name):
            mod = __import__(name)
            components = name.split('.')
            for comp in components[1:]:
                mod = getattr(mod, comp)
            return mod'''''
        #
        tabxs = None
        if rtab == 'lists_a':
            tabxs = lists_a
        elif rtab == 'grupos':
            tabxs = grupos
        else:
            return dados

        if tree:
            q = s.query(tabxs).filter(tabxs.tab == ltab, tabxs.nome.like('%' + search + '%'))
        else:
            q = s.query(tabxs).order_by(tabxs.nome).filter(tabxs.tab == ltab)
            if search:
                searchx = search.split(' ')
                for s in searchx:
                    q = q.filter(tabxs.nome.like('%' + s + '%'))
                    # q = q.filter(tabxs.nome.like('%' + search + '%'))

        q = q.limit(quantos)
        r = q.all()

        if tree:
            for a in r:
                dados.append({'tid': a.tid, 'id': a.id, 'nome': a.nome, 'pai': a.pai, 'level': a.nivel})
                # dados[a.tid] = {'tid': a.tid, 'dbid': a.id, 'nome': a.nome, 'pai': a.pai, 'level': a.nivel}
        else:
            for a in r:
                dados.append({'tid': a.tid, 'id': a.id, 'nome': a.nome, 'pai': a.tid, 'level': 0})

        return {'dados': dados}