mirror of https://github.com/interlegis/sapl.git
Marcio Mazza
7 years ago
162 changed files with 5881 additions and 3190 deletions
@ -0,0 +1,26 @@ |
|||||
|
#!/bin/bash |
||||
|
|
||||
|
# TODO: Após migrar para Django 1.10 usar |
||||
|
# |
||||
|
# ./manage.py makemigrations --check --dry-run |
||||
|
# |
||||
|
# ATENÇÃO: a chamada atual termina com exit 1 se NÃO HÁ migração a ser aplicada |
||||
|
# ou seja, termina com "erro" se está tudo bem! |
||||
|
# A chamada do django 1.10 INVERTE ISSO. |
||||
|
# |
||||
|
# https://docs.djangoproject.com/en/1.10/ref/django-admin/#cmdoption-makemigrations-check |
||||
|
|
||||
|
python manage.py makemigrations --dry-run --exit |
||||
|
|
||||
|
MIGRATIONS=$? |
||||
|
|
||||
|
NC='\033[0m' |
||||
|
|
||||
|
if [ $MIGRATIONS -eq 0 ]; then |
||||
|
RED='\033[0;31m' |
||||
|
echo |
||||
|
echo -e "${RED}ALGUMAS ALTERAÇÕES EXIGEM MIGRAÇÃO.${NC}" |
||||
|
echo -e "${RED}RODE 'python manage.py makemigrations' ANTES DE SUBMETER SEU CÓDIGO...${NC}" |
||||
|
echo |
||||
|
exit 1 |
||||
|
fi |
@ -0,0 +1,20 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-08-14 14:09 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations, models |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('base', '0007_auto_20170808_0850'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterField( |
||||
|
model_name='appconfig', |
||||
|
name='sequencia_numeracao', |
||||
|
field=models.CharField(choices=[('A', 'Sequencial por ano'), ('L', 'Sequencial por legislatura'), ('U', 'Sequencial único')], default='A', max_length=1, verbose_name='Sequência de numeração'), |
||||
|
), |
||||
|
] |
@ -0,0 +1,20 @@ |
|||||
|
from django.utils.translation import ugettext_lazy as _ |
||||
|
|
||||
|
from sapl.base.forms import CasaLegislativaForm |
||||
|
|
||||
|
|
||||
|
def test_valida_campos_obrigatorios_casa_legislativa_form(): |
||||
|
form = CasaLegislativaForm(data={}) |
||||
|
|
||||
|
assert not form.is_valid() |
||||
|
|
||||
|
errors = form.errors |
||||
|
|
||||
|
assert errors['nome'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['sigla'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['endereco'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['cep'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['municipio'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['uf'] == [_('Este campo é obrigatório.')] |
||||
|
|
||||
|
assert len(errors) == 6 |
@ -0,0 +1,21 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-08-25 11:08 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations, models |
||||
|
import django.db.models.deletion |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('compilacao', '0001_initial'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterField( |
||||
|
model_name='tipotextoarticulado', |
||||
|
name='content_type', |
||||
|
field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.SET_NULL, to='contenttypes.ContentType', verbose_name='Modelo Integrado'), |
||||
|
), |
||||
|
] |
@ -0,0 +1,33 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-08-25 11:36 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations, models |
||||
|
import django.db.models.deletion |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('compilacao', '0002_auto_20170825_1108'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterField( |
||||
|
model_name='tipotextoarticulado', |
||||
|
name='content_type', |
||||
|
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='contenttypes.ContentType', verbose_name='Modelo Integrado'), |
||||
|
), |
||||
|
migrations.AlterField( |
||||
|
model_name='tipotextoarticulado', |
||||
|
name='participacao_social', |
||||
|
field=models.BooleanField(choices=[(True, 'Sim'), (False, 'Não')], default=False, verbose_name='Participação Social'), |
||||
|
preserve_default=False, |
||||
|
), |
||||
|
migrations.AlterField( |
||||
|
model_name='tipotextoarticulado', |
||||
|
name='publicacao_func', |
||||
|
field=models.BooleanField(choices=[(True, 'Sim'), (False, 'Não')], default=False, verbose_name='Histórico de Publicação'), |
||||
|
preserve_default=False, |
||||
|
), |
||||
|
] |
@ -0,0 +1,76 @@ |
|||||
|
import pytest |
||||
|
from django.utils.translation import ugettext as _ |
||||
|
from model_mommy import mommy |
||||
|
|
||||
|
from sapl.compilacao import forms |
||||
|
from sapl.compilacao.models import PerfilEstruturalTextoArticulado, TipoNota |
||||
|
from sapl.compilacao.views import choice_models_in_extenal_views |
||||
|
|
||||
|
|
||||
|
def test_valida_campos_obrigatorios_tipo_texto_articulado_form(): |
||||
|
form = forms.TipoTaForm(data={}) |
||||
|
|
||||
|
assert not form.is_valid() |
||||
|
|
||||
|
errors = form.errors |
||||
|
|
||||
|
assert errors['sigla'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['descricao'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['participacao_social'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['publicacao_func'] == [_('Este campo é obrigatório.')] |
||||
|
|
||||
|
assert len(errors) == 4 |
||||
|
|
||||
|
|
||||
|
_content_types = choice_models_in_extenal_views() |
||||
|
|
||||
|
|
||||
|
@pytest.mark.parametrize('content_type', _content_types) |
||||
|
@pytest.mark.django_db(transaction=False) |
||||
|
def test_tipo_texto_articulado_form_valid(content_type): |
||||
|
perfil = mommy.make(PerfilEstruturalTextoArticulado) |
||||
|
|
||||
|
form = forms.TipoTaForm(data={'sigla': 'si', |
||||
|
'descricao': 'teste', |
||||
|
'content_type': content_type[0], |
||||
|
'participacao_social': True, |
||||
|
'publicacao_func': True, |
||||
|
'perfis': [perfil.pk, ] |
||||
|
}) |
||||
|
|
||||
|
assert form.is_valid(), form.errors |
||||
|
|
||||
|
|
||||
|
def test_valida_campos_obrigatorios_nota_form(): |
||||
|
form = forms.NotaForm(data={}) |
||||
|
|
||||
|
assert not form.is_valid() |
||||
|
|
||||
|
errors = form.errors |
||||
|
|
||||
|
assert errors['texto'] == [_('Este campo é obrigatório')] |
||||
|
assert errors['publicidade'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['tipo'] == [_('Este campo é obrigatório.')] |
||||
|
assert errors['publicacao'] == [_('Este campo é obrigatório')] |
||||
|
assert errors['efetividade'] == [_('Este campo é obrigatório')] |
||||
|
assert errors['dispositivo'] == [_('Este campo é obrigatório.')] |
||||
|
|
||||
|
assert len(errors) == 6 |
||||
|
|
||||
|
|
||||
|
@pytest.mark.django_db(transaction=False) |
||||
|
def test_nota_form_invalido(): |
||||
|
tipo = mommy.make(TipoNota) |
||||
|
|
||||
|
form = forms.NotaForm(data={'titulo': 'titulo', |
||||
|
'texto': 'teste', |
||||
|
'url_externa': 'www.test.com', |
||||
|
'publicidade': 'publicidade', |
||||
|
'tipo': str(tipo.pk), |
||||
|
'publicacao': '10/05/2017', |
||||
|
'efetividade': '10/05/2017', |
||||
|
'dispositivo': 'dispositivo', |
||||
|
'pk': 'pk' |
||||
|
}) |
||||
|
|
||||
|
assert not form.is_valid() |
@ -0,0 +1,43 @@ |
|||||
|
from datetime import date |
||||
|
from functools import wraps |
||||
|
|
||||
|
from django.utils.translation import ugettext_lazy as _ |
||||
|
|
||||
|
|
||||
|
def vigencia_atual(decorated_method): |
||||
|
""" |
||||
|
concatena a string ' (Atual)' caso a model instancia estiver |
||||
|
em vigência na data atual do servidor |
||||
|
|
||||
|
Premissas: |
||||
|
* A classe precisa conter os atributos 'data_inicio' e 'data_fim'. |
||||
|
* 'data_inicio' e 'data_fim' precisam ser do tipo models.DateField |
||||
|
""" |
||||
|
@wraps(decorated_method) |
||||
|
def display_atual(self): |
||||
|
string_displayed = decorated_method(self) |
||||
|
|
||||
|
if hasattr(self, 'data_inicio') and hasattr(self, 'data_fim'): |
||||
|
today = date.today() |
||||
|
e_atual = self.data_inicio <= today <= self.data_fim |
||||
|
string_displayed = "{} {}".format( |
||||
|
string_displayed, "(Atual)" if e_atual else "") |
||||
|
else: |
||||
|
instancia_sem_atributo = "{} [{}, {}].".format( |
||||
|
'Instância não possui os atributos', |
||||
|
'data_inicio', |
||||
|
'data_fim') |
||||
|
|
||||
|
mensagem_decorator = "Decorator @{} foi desabilitado.".format( |
||||
|
vigencia_atual.__name__() |
||||
|
) |
||||
|
print(_('{} {}'.format( |
||||
|
_(instancia_sem_atributo), |
||||
|
_(mensagem_decorator) |
||||
|
) |
||||
|
) |
||||
|
) |
||||
|
|
||||
|
return string_displayed |
||||
|
|
||||
|
return display_atual |
@ -0,0 +1,361 @@ |
|||||
|
[{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 1, |
||||
|
"fields": { |
||||
|
"sigla": "ADIAVOTAC", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Adiada discussão e votação." |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 2, |
||||
|
"fields": { |
||||
|
"sigla": "AGAUTOGR", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Aguardando assinatura do autógrafo" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 3, |
||||
|
"fields": { |
||||
|
"sigla": "AGMENSVET", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Aguardando assinatura da mensagem sobre o veto" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 4, |
||||
|
"fields": { |
||||
|
"sigla": "AGORDIA", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Aguardando a inclusão na ordem do dia" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 5, |
||||
|
"fields": { |
||||
|
"sigla": "AGPARECER", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Aguardando emissão de parecer da comissão" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 6, |
||||
|
"fields": { |
||||
|
"sigla": "AGPROMLEI", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Aguardando promulgação da lei" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 7, |
||||
|
"fields": { |
||||
|
"sigla": "AGPROMNOR", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Aguardando promulgação da norma jurídica" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 8, |
||||
|
"fields": { |
||||
|
"sigla": "AGPROMVET", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Aguardando promulgação de lei com veto rejeitado" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 9, |
||||
|
"fields": { |
||||
|
"sigla": "AGSANCAO", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Aguardando sanção governamental" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 10, |
||||
|
"fields": { |
||||
|
"sigla": "ANEXADA", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição anexada à outra análoga ou conexa mais antiga" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 11, |
||||
|
"fields": { |
||||
|
"sigla": "APRESENT", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição apresentada em Plenário" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 12, |
||||
|
"fields": { |
||||
|
"sigla": "APROV1TUR", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição aprovada em 1º turno" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 13, |
||||
|
"fields": { |
||||
|
"sigla": "APROVADA", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição aprovada" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 14, |
||||
|
"fields": { |
||||
|
"sigla": "ARQUIVADA", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição arquivada" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 15, |
||||
|
"fields": { |
||||
|
"sigla": "AUTUAPAUTA", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição autuada e cumprindo prazo de pauta" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 16, |
||||
|
"fields": { |
||||
|
"sigla": "DESARQUIV", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição desarquivada pelo Autor" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 17, |
||||
|
"fields": { |
||||
|
"sigla": "DISTRCOMIS", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição distribuída às comissões" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 18, |
||||
|
"fields": { |
||||
|
"sigla": "INCLORDIA", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição inclusa na Ordem do Dia" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 19, |
||||
|
"fields": { |
||||
|
"sigla": "LEIPROMUL", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição transformada em lei por promulgação" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 20, |
||||
|
"fields": { |
||||
|
"sigla": "LEIVETPAR", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Transformada em lei com veto parcial" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 21, |
||||
|
"fields": { |
||||
|
"sigla": "MANUTVETO", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Parecer pela manutenção do veto" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 22, |
||||
|
"fields": { |
||||
|
"sigla": "NORMPROMUL", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Norma promulgada" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 23, |
||||
|
"fields": { |
||||
|
"sigla": "PARECCONTR", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Parecer contrário da comissão de mérito" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 24, |
||||
|
"fields": { |
||||
|
"sigla": "PARECERFAV", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Parecer favorável da comissão" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 25, |
||||
|
"fields": { |
||||
|
"sigla": "PARECPLEN", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Parecer em Plenário pelas comissões pertinentes" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 26, |
||||
|
"fields": { |
||||
|
"sigla": "PAREUCONJ", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Parecer em reunião conjunta das Comissões pertinentes" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 27, |
||||
|
"fields": { |
||||
|
"sigla": "PREJUD", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição prejudicada" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 28, |
||||
|
"fields": { |
||||
|
"sigla": "PROMULVETO", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Veto total ou parcial promulgado" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 29, |
||||
|
"fields": { |
||||
|
"sigla": "REJEITADA", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição rejeitada pelo Plenário" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 30, |
||||
|
"fields": { |
||||
|
"sigla": "REJEIVETO", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Parecer pela rejeição do veto" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 31, |
||||
|
"fields": { |
||||
|
"sigla": "RETAUTOR", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição retirada pelo autor" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 32, |
||||
|
"fields": { |
||||
|
"sigla": "RETORDIA", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição retirada da Ordem do Dia" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 33, |
||||
|
"fields": { |
||||
|
"sigla": "TRANSFLEI", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Proposição transformada em lei" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 34, |
||||
|
"fields": { |
||||
|
"sigla": "VETODISTR", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Veto distribuído para emissão de parecer" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 35, |
||||
|
"fields": { |
||||
|
"sigla": "VETOLIDO", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Veto sobre a proposição lido em sessão plenária" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 36, |
||||
|
"fields": { |
||||
|
"sigla": "VETOMANT", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Veto sobre a proposição mantido" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 37, |
||||
|
"fields": { |
||||
|
"sigla": "VETOORDIA", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Veto incluso na ordem do dia" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 38, |
||||
|
"fields": { |
||||
|
"sigla": "VETOPAUTA", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Veto autuado e incluso em pauta" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 39, |
||||
|
"fields": { |
||||
|
"sigla": "VETOREJEI", |
||||
|
"indicador": "F", |
||||
|
"descricao": "Veto sobre a proposição rejeitado" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "materia.StatusTramitacao", |
||||
|
"pk": 40, |
||||
|
"fields": { |
||||
|
"sigla": "VETOTOTAL", |
||||
|
"indicador": "R", |
||||
|
"descricao": "Proposição com veto tota" |
||||
|
} |
||||
|
} |
||||
|
] |
@ -0,0 +1,19 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.3 on 2017-08-29 13:21 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('materia', '0011_auto_20170808_1034'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='materialegislativa', |
||||
|
options={'permissions': (('can_access_impressos', 'Can access impressos'),), 'verbose_name': 'Matéria Legislativa', 'verbose_name_plural': 'Matérias Legislativas'}, |
||||
|
), |
||||
|
] |
@ -0,0 +1,44 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
from __future__ import unicode_literals |
||||
|
from django.db import migrations |
||||
|
import json |
||||
|
import os |
||||
|
|
||||
|
|
||||
|
from django.core.management import call_command |
||||
|
|
||||
|
|
||||
|
|
||||
|
def gera_status_tramitacao(apps, schema_editor): |
||||
|
StatusTramitacao = apps.get_model("materia", "StatusTramitacao") |
||||
|
db_alias = schema_editor.connection.alias |
||||
|
status_tramitacoes = StatusTramitacao.objects.all().exists() |
||||
|
|
||||
|
if status_tramitacoes: |
||||
|
# Caso haja algum StatusTramitacao cadastrado na base de dados, |
||||
|
# a migração não deve ser carregada para evitar duplicações de dados. |
||||
|
print("Carga de {} não efetuada. Já Existem {} cadastrados...".format( |
||||
|
StatusTramitacao._meta.verbose_name, |
||||
|
StatusTramitacao._meta.verbose_name_plural |
||||
|
) |
||||
|
) |
||||
|
else: |
||||
|
fixture_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '../fixtures')) |
||||
|
# pega status_tramitacoes listados em fixtures/pre_popula_status_tramitacao.json |
||||
|
fixture_filename = 'pre_popula_status_tramitacao.json' |
||||
|
fixture_file = os.path.join(fixture_dir, fixture_filename) |
||||
|
call_command('loaddata', fixture_file) |
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
# A dependencia real desse script é o arquivo 0001_initial.py, mas |
||||
|
# isso gera um erro (Conflicting migrations detected; multiple leaf |
||||
|
# nodes in the migration graph). para não ocasionar problemas de migração, |
||||
|
# vamos manter a ordem padrão do django. |
||||
|
('materia', '0012_auto_20170829_1321'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.RunPython(gera_status_tramitacao), |
||||
|
] |
@ -0,0 +1,19 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.7 on 2017-09-05 08:18 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('materia', '0013_adiciona_status_tramitacao'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='unidadetramitacao', |
||||
|
options={'ordering': ['orgao', 'comissao', 'parlamentar'], 'verbose_name': 'Unidade de Tramitação', 'verbose_name_plural': 'Unidades de Tramitação'}, |
||||
|
), |
||||
|
] |
@ -0,0 +1,37 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-09-08 10:24 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
from sapl.materia.models import TipoProposicao |
||||
|
|
||||
|
|
||||
|
class AlterUniqueTogetherFixConstraintInexistente( |
||||
|
migrations.AlterUniqueTogether): |
||||
|
|
||||
|
def database_forwards(self, |
||||
|
app_label, schema_editor, from_state, to_state): |
||||
|
constraint_names = schema_editor._constraint_names( |
||||
|
TipoProposicao, ['content_type_id', 'object_id'], unique=True) |
||||
|
if constraint_names: |
||||
|
# por alguma razão a constraint não existe em alguns bancos |
||||
|
# se ela existir continua a exetução normal |
||||
|
super(AlterUniqueTogetherFixConstraintInexistente, |
||||
|
self).database_forwards( |
||||
|
app_label, schema_editor, from_state, to_state |
||||
|
) |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('materia', '0014_auto_20170905_0818'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
AlterUniqueTogetherFixConstraintInexistente( |
||||
|
name='tipoproposicao', |
||||
|
unique_together=set([]), |
||||
|
), |
||||
|
] |
@ -0,0 +1,16 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-09-08 11:57 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('materia', '0015_auto_20170908_1024'), |
||||
|
('materia', '0013_auto_20170816_1136'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
] |
@ -1,8 +1,3 @@ |
|||||
from django.db.models.signals import post_delete, post_save |
|
||||
|
|
||||
import django.dispatch |
import django.dispatch |
||||
|
|
||||
from .models import DocumentoAcessorio, MateriaLegislativa |
|
||||
|
|
||||
|
|
||||
tramitacao_signal = django.dispatch.Signal(providing_args=['post', 'request']) |
tramitacao_signal = django.dispatch.Signal(providing_args=['post', 'request']) |
||||
|
@ -0,0 +1,24 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.7 on 2017-09-04 17:08 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations, models |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('norma', '0006_normajuridica_data_ultima_atualizacao'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='assuntonorma', |
||||
|
options={'ordering': ['assunto'], 'verbose_name': 'Assunto de Norma Jurídica', 'verbose_name_plural': 'Assuntos de Normas Jurídicas'}, |
||||
|
), |
||||
|
migrations.AlterField( |
||||
|
model_name='normajuridica', |
||||
|
name='esfera_federacao', |
||||
|
field=models.CharField(choices=[('M', 'Municipal'), ('E', 'Estadual'), ('F', 'Federal')], max_length=1, verbose_name='Esfera Federação'), |
||||
|
), |
||||
|
] |
@ -1,3 +0,0 @@ |
|||||
from django.db.models.signals import post_delete, post_save |
|
||||
|
|
||||
from .models import NormaJuridica |
|
@ -0,0 +1,37 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"model": "parlamentares.CargoMesa", |
||||
|
"pk": 1, |
||||
|
"fields": { |
||||
|
"descricao": "Presidente", |
||||
|
"unico": true |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.CargoMesa", |
||||
|
"pk": 2, |
||||
|
"fields": { |
||||
|
"descricao": "Vice-Presidente", |
||||
|
"unico": true |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.CargoMesa", |
||||
|
"pk": 3, |
||||
|
"fields": { |
||||
|
"descricao": "Primeiro-Secretário", |
||||
|
"unico": true |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.CargoMesa", |
||||
|
"pk": 4, |
||||
|
"fields": { |
||||
|
"descricao": "Segundo-Secretário", |
||||
|
"unico": true |
||||
|
} |
||||
|
} |
||||
|
] |
||||
|
|
||||
|
|
||||
|
|
@ -0,0 +1,282 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 1, |
||||
|
"fields": { |
||||
|
"sigla": "PMDB", |
||||
|
"nome": "PARTIDO DO MOVIMENTO DEMOCRÁTICO BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 2, |
||||
|
"fields": { |
||||
|
"sigla": "PTB", |
||||
|
"nome": "PARTIDO TRABALHISTA BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 3, |
||||
|
"fields": { |
||||
|
"sigla": "PDT", |
||||
|
"nome": "PARTIDO DEMOCRÁTICO TRABALHISTA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 4, |
||||
|
"fields": { |
||||
|
"sigla": "PT", |
||||
|
"nome": "PARTIDO DOS TRABALHADORES" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 5, |
||||
|
"fields": { |
||||
|
"sigla": "DEM", |
||||
|
"nome": "DEMOCRATAS" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 6, |
||||
|
"fields": { |
||||
|
"sigla": "PCdoB", |
||||
|
"nome": "PARTIDO COMUNISTA DO BRASIL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 7, |
||||
|
"fields": { |
||||
|
"sigla": "PSB", |
||||
|
"nome": "PARTIDO SOCIALISTA BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 8, |
||||
|
"fields": { |
||||
|
"sigla": "PSDB", |
||||
|
"nome": "PARTIDO DA SOCIAL DEMOCRACIA BRASILEIRA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 9, |
||||
|
"fields": { |
||||
|
"sigla": "PTC", |
||||
|
"nome": "PARTIDO TRABALHISTA CRISTÃO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 10, |
||||
|
"fields": { |
||||
|
"sigla": "PSC", |
||||
|
"nome": "PARTIDO SOCIAL CRISTÃO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 11, |
||||
|
"fields": { |
||||
|
"sigla": "PMN", |
||||
|
"nome": "PARTIDO DA MOBILIZAÇÃO NACIONAL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 12, |
||||
|
"fields": { |
||||
|
"sigla": "PRP", |
||||
|
"nome": "PARTIDO REPUBLICANO PROGRESSISTA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 13, |
||||
|
"fields": { |
||||
|
"sigla": "PPS", |
||||
|
"nome": "PARTIDO POPULAR SOCIALISTA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 14, |
||||
|
"fields": { |
||||
|
"sigla": "PV", |
||||
|
"nome": "PARTIDO VERDE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 15, |
||||
|
"fields": { |
||||
|
"sigla": "PTdoB", |
||||
|
"nome": "PARTIDO TRABALHISTA DO BRASIL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 16, |
||||
|
"fields": { |
||||
|
"sigla": "PP", |
||||
|
"nome": "PARTIDO PROGRESSISTA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 17, |
||||
|
"fields": { |
||||
|
"sigla": "PSTU", |
||||
|
"nome": "PARTIDO SOCIALISTA DOS TRABALHADORES UNIFICADO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 18, |
||||
|
"fields": { |
||||
|
"sigla": "PCB", |
||||
|
"nome": "PARTIDO COMUNISTA BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 19, |
||||
|
"fields": { |
||||
|
"sigla": "PRTB", |
||||
|
"nome": "PARTIDO RENOVADOR TRABALHISTA BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 20, |
||||
|
"fields": { |
||||
|
"sigla": "PHS", |
||||
|
"nome": "PARTIDO HUMANISTA DA SOLIDARIEDADE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 21, |
||||
|
"fields": { |
||||
|
"sigla": "PSDC", |
||||
|
"nome": "PARTIDO SOCIAL DEMOCRATA CRISTÃO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 22, |
||||
|
"fields": { |
||||
|
"sigla": "PCO", |
||||
|
"nome": "PARTIDO DA CAUSA OPERÁRIA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 23, |
||||
|
"fields": { |
||||
|
"sigla": "PODE", |
||||
|
"nome": "PODEMOS" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 24, |
||||
|
"fields": { |
||||
|
"sigla": "PSL", |
||||
|
"nome": "PARTIDO SOCIAL LIBERAL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 25, |
||||
|
"fields": { |
||||
|
"sigla": "PRB", |
||||
|
"nome": "PARTIDO REPUBLICANO BRASILEIRO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 26, |
||||
|
"fields": { |
||||
|
"sigla": "PSOL", |
||||
|
"nome": "PARTIDO SOCIALISMO E LIBERDADE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 27, |
||||
|
"fields": { |
||||
|
"sigla": "PR", |
||||
|
"nome": "PARTIDO DA REPÚBLICA" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 28, |
||||
|
"fields": { |
||||
|
"sigla": "PSD", |
||||
|
"nome": "PARTIDO SOCIAL DEMOCRÁTICO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 29, |
||||
|
"fields": { |
||||
|
"sigla": "PPL", |
||||
|
"nome": "PARTIDO PÁTRIA LIVRE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 30, |
||||
|
"fields": { |
||||
|
"sigla": "PEN", |
||||
|
"nome": "PARTIDO ECOLÓGICO NACIONAL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 31, |
||||
|
"fields": { |
||||
|
"sigla": "PROS", |
||||
|
"nome": "PARTIDO REPUBLICANO DA ORDEM SOCIAL" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 32, |
||||
|
"fields": { |
||||
|
"sigla": "SD", |
||||
|
"nome": "SOLIDARIEDADE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 33, |
||||
|
"fields": { |
||||
|
"sigla": "NOVO", |
||||
|
"nome": "PARTIDO NOVO" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 34, |
||||
|
"fields": { |
||||
|
"sigla": "REDE", |
||||
|
"nome": "REDE SUSTENTABILIDADE" |
||||
|
} |
||||
|
}, |
||||
|
{ |
||||
|
"model": "parlamentares.Partido", |
||||
|
"pk": 35, |
||||
|
"fields": { |
||||
|
"sigla": "PMB", |
||||
|
"nome": "PARTIDO DA MULHER BRASILEIRA" |
||||
|
} |
||||
|
} |
||||
|
] |
@ -0,0 +1,19 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.11 on 2017-08-14 16:15 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('parlamentares', '0004_auto_20170711_1305'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='frente', |
||||
|
options={'verbose_name': 'Frente Parlamentar', 'verbose_name_plural': 'Frentes Parlamentares'}, |
||||
|
), |
||||
|
] |
@ -0,0 +1,19 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-08-31 14:00 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('parlamentares', '0005_auto_20170814_1615'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='votante', |
||||
|
options={'permissions': (('can_vote', 'Can Vote'),), 'verbose_name': 'Usuário Votante', 'verbose_name_plural': 'Usuários Votantes'}, |
||||
|
), |
||||
|
] |
@ -0,0 +1,40 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
from __future__ import unicode_literals |
||||
|
from django.db import migrations |
||||
|
import json |
||||
|
import os |
||||
|
|
||||
|
|
||||
|
from django.core.management import call_command |
||||
|
|
||||
|
|
||||
|
|
||||
|
def gera_partidos_tse(apps, schema_editor): |
||||
|
Partido = apps.get_model("parlamentares", "Partido") |
||||
|
db_alias = schema_editor.connection.alias |
||||
|
partidos = Partido.objects.all().exists() |
||||
|
|
||||
|
if partidos: |
||||
|
# Caso haja algum partido cadastrado na base de dados, |
||||
|
# a migração não deve ser carregada para evitar duplicações de dados. |
||||
|
print("Carga de Partido não efetuada. Já Existem partidos cadastrados...") |
||||
|
else: |
||||
|
fixture_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '../fixtures')) |
||||
|
# pega partidos listados em fixtures/pre_popula_partidos.json |
||||
|
fixture_filename = 'pre_popula_partidos.json' |
||||
|
fixture_file = os.path.join(fixture_dir, fixture_filename) |
||||
|
call_command('loaddata', fixture_file) |
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
# A dependencia real desse script é o arquivo 0001_initial.py, mas |
||||
|
# isso gera um erro (Conflicting migrations detected; multiple leaf |
||||
|
# nodes in the migration graph). para não ocasionar problemas de migração, |
||||
|
# vamos manter a ordem padrão do django. |
||||
|
('parlamentares', '0006_auto_20170831_1400'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.RunPython(gera_partidos_tse), |
||||
|
] |
@ -0,0 +1,41 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
from __future__ import unicode_literals |
||||
|
from django.db import migrations |
||||
|
import json |
||||
|
import os |
||||
|
|
||||
|
|
||||
|
from django.core.management import call_command |
||||
|
|
||||
|
|
||||
|
|
||||
|
def gera_cargos_mesa(apps, schema_editor): |
||||
|
CargoMesa = apps.get_model("parlamentares", "CargoMesa") |
||||
|
db_alias = schema_editor.connection.alias |
||||
|
cargos_mesa = CargoMesa.objects.all().exists() |
||||
|
|
||||
|
if cargos_mesa: |
||||
|
# Caso haja algum CargoMesa cadastrado na base de dados, |
||||
|
# a migração não deve ser carregada para evitar duplicações de dados. |
||||
|
print("Carga de {} não efetuada. Já Existem {} cadastrados...".format( |
||||
|
CargoMesa._meta.verbose_name, CargoMesa._meta.verbose_name_plural)) |
||||
|
else: |
||||
|
fixture_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '../fixtures')) |
||||
|
# pega partidos listados em fixtures/pre_popula_partidos.json |
||||
|
fixture_filename = 'pre_popula_cargosmesa.json' |
||||
|
fixture_file = os.path.join(fixture_dir, fixture_filename) |
||||
|
call_command('loaddata', fixture_file) |
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
# A dependencia real desse script é o arquivo 0001_initial.py, mas |
||||
|
# isso gera um erro (Conflicting migrations detected; multiple leaf |
||||
|
# nodes in the migration graph). para não ocasionar problemas de migração, |
||||
|
# vamos manter a ordem padrão do django. |
||||
|
('parlamentares', '0007_adiciona_partidos'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.RunPython(gera_cargos_mesa), |
||||
|
] |
@ -0,0 +1,27 @@ |
|||||
|
# -*- coding: utf-8 -*- |
||||
|
# Generated by Django 1.9.13 on 2017-09-05 16:17 |
||||
|
from __future__ import unicode_literals |
||||
|
|
||||
|
from django.db import migrations |
||||
|
|
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
dependencies = [ |
||||
|
('parlamentares', '0008_adiciona_cargos_mesa'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.AlterModelOptions( |
||||
|
name='situacaomilitar', |
||||
|
options={'ordering': ['descricao'], 'verbose_name': 'Tipo Situação Militar', 'verbose_name_plural': 'Tipos Situações Militares'}, |
||||
|
), |
||||
|
migrations.AlterModelOptions( |
||||
|
name='tipoafastamento', |
||||
|
options={'ordering': ['descricao'], 'verbose_name': 'Tipo de Afastamento', 'verbose_name_plural': 'Tipos de Afastamento'}, |
||||
|
), |
||||
|
migrations.AlterModelOptions( |
||||
|
name='tipodependente', |
||||
|
options={'ordering': ['descricao'], 'verbose_name': 'Tipo de Dependente', 'verbose_name_plural': 'Tipos de Dependente'}, |
||||
|
), |
||||
|
] |
@ -1,138 +1,149 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
||||
|
|
||||
protocolos=[] |
protocolos = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
||||
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST['txt_ano_protocolo'], |
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST[ |
||||
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST['rad_tip_processo'], |
'txt_ano_protocolo'], |
||||
tip_materia=REQUEST['lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST[ |
||||
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST['txa_txt_interessado'], |
'rad_tip_processo'], |
||||
|
tip_materia=REQUEST[ |
||||
|
'lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
||||
|
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST[ |
||||
|
'txa_txt_interessado'], |
||||
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
||||
dic={} |
dic = {} |
||||
|
|
||||
dic['titulo']=str(protocolo.cod_protocolo) |
dic['titulo'] = str(protocolo.cod_protocolo) |
||||
|
|
||||
dic['ano']=str(protocolo.ano_protocolo) |
dic['ano'] = str(protocolo.ano_protocolo) |
||||
|
|
||||
dic['data']=context.pysc.iso_to_port_pysc(protocolo.dat_protocolo)+' - '+protocolo.hor_protocolo |
dic['data'] = context.pysc.iso_to_port_pysc( |
||||
|
protocolo.dat_protocolo) + ' - ' + protocolo.hor_protocolo |
||||
|
|
||||
dic['txt_assunto']=protocolo.txt_assunto_ementa |
dic['txt_assunto'] = protocolo.txt_assunto_ementa |
||||
|
|
||||
dic['txt_interessado']=protocolo.txt_interessado |
dic['txt_interessado'] = protocolo.txt_interessado |
||||
|
|
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
if protocolo.cod_autor!=None: |
if protocolo.cod_autor != None: |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
else: |
else: |
||||
dic['nom_autor']=protocolo.txt_interessado |
dic['nom_autor'] = protocolo.txt_interessado |
||||
|
|
||||
dic['natureza']='' |
dic['natureza'] = '' |
||||
if protocolo.tip_processo==0: |
if protocolo.tip_processo == 0: |
||||
dic['natureza']='Administrativo' |
dic['natureza'] = 'Administrativo' |
||||
if protocolo.tip_processo==1: |
if protocolo.tip_processo == 1: |
||||
dic['natureza']='Legislativo' |
dic['natureza'] = 'Legislativo' |
||||
|
|
||||
dic['ident_processo']=protocolo.des_tipo_materia or protocolo.des_tipo_documento |
dic['ident_processo'] = protocolo.des_tipo_materia or protocolo.des_tipo_documento |
||||
|
|
||||
dic['sgl_processo']=protocolo.sgl_tipo_materia or protocolo.sgl_tipo_documento |
dic['sgl_processo'] = protocolo.sgl_tipo_materia or protocolo.sgl_tipo_documento |
||||
|
|
||||
dic['num_materia']='' |
dic['num_materia'] = '' |
||||
for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo): |
for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo, ano_ident_basica=protocolo.ano_protocolo): |
||||
dic['num_materia']=str(materia.num_ident_basica)+'/'+ str(materia.ano_ident_basica) |
dic['num_materia'] = str(materia.num_ident_basica) + \ |
||||
|
'/' + str(materia.ano_ident_basica) |
||||
|
|
||||
dic['num_documento']='' |
dic['num_documento'] = '' |
||||
for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo): |
for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo): |
||||
dic['num_documento']=str(documento.num_documento)+'/'+ str(documento.ano_documento) |
dic['num_documento'] = str( |
||||
|
documento.num_documento) + '/' + str(documento.ano_documento) |
||||
|
|
||||
dic['num_processo']=dic['num_materia'] or dic['num_documento'] |
dic['num_processo'] = dic['num_materia'] or dic['num_documento'] |
||||
|
|
||||
dic['numeracao']='' |
dic['numeracao'] = '' |
||||
for materia_num in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo): |
for materia_num in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo, ano_ident_basica=protocolo.ano_protocolo): |
||||
for numera in context.zsql.numeracao_obter_zsql(cod_materia=materia_num.cod_materia,ind_excluido=0): |
for numera in context.zsql.numeracao_obter_zsql(cod_materia=materia_num.cod_materia, ind_excluido=0): |
||||
dic['numeracao']='PROCESSO N° ' +str(numera.num_materia)+'/'+ str(numera.ano_materia) |
dic['numeracao'] = 'PROCESSO N° ' + \ |
||||
|
str(numera.num_materia) + '/' + str(numera.ano_materia) |
||||
|
|
||||
dic['anulado']='' |
dic['anulado'] = '' |
||||
if protocolo.ind_anulado==1: |
if protocolo.ind_anulado == 1: |
||||
dic['anulado']='Nulo' |
dic['anulado'] = 'Nulo' |
||||
|
|
||||
protocolos.append(dic) |
protocolos.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_num_protocolo |
filtro['numero'] = REQUEST.txt_num_protocolo |
||||
filtro['ano']=REQUEST.txt_ano_protocolo |
filtro['ano'] = REQUEST.txt_ano_protocolo |
||||
filtro['tipo_protocolo']=REQUEST.rad_tip_protocolo |
filtro['tipo_protocolo'] = REQUEST.rad_tip_protocolo |
||||
filtro['tipo_processo']=REQUEST.rad_tip_processo |
filtro['tipo_processo'] = REQUEST.rad_tip_processo |
||||
filtro['assunto']=REQUEST.txt_assunto |
filtro['assunto'] = REQUEST.txt_assunto |
||||
filtro['autor']=REQUEST.hdn_cod_autor |
filtro['autor'] = REQUEST.hdn_cod_autor |
||||
filtro['interessado']=REQUEST.txa_txt_interessado |
filtro['interessado'] = REQUEST.txa_txt_interessado |
||||
|
|
||||
sessao=session.id |
sessao = session.id |
||||
caminho = context.pdf_capa_processo_gerar(sessao,imagem,data,protocolos,cabecalho,rodape,filtro) |
caminho = context.pdf_capa_processo_gerar( |
||||
if caminho=='aviso': |
sessao, imagem, data, protocolos, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,124 +1,135 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar os documentos e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar os documentos e gerar os dados |
||||
|
|
||||
documentos=[] |
documentos = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for documento in context.zsql.documento_administrativo_pesquisar_zsql(tip_documento=REQUEST['lst_tip_documento'], |
for documento in context.zsql.documento_administrativo_pesquisar_zsql(tip_documento=REQUEST['lst_tip_documento'], |
||||
num_documento=REQUEST['txt_num_documento'], ano_documento=REQUEST['txt_ano_documento'], |
num_documento=REQUEST['txt_num_documento'], ano_documento=REQUEST[ |
||||
num_protocolo=REQUEST['txt_num_protocolo'], ind_tramitacao=REQUEST['rad_tramitando'], |
'txt_ano_documento'], |
||||
des_assunto=REQUEST['txa_txt_assunto'], cod_status=REQUEST['lst_status'], |
num_protocolo=REQUEST[ |
||||
txt_interessado=REQUEST['txa_txt_interessado'], dat_apres1=REQUEST['dt_apres1'], |
'txt_num_protocolo'], ind_tramitacao=REQUEST['rad_tramitando'], |
||||
|
des_assunto=REQUEST[ |
||||
|
'txa_txt_assunto'], cod_status=REQUEST['lst_status'], |
||||
|
txt_interessado=REQUEST[ |
||||
|
'txa_txt_interessado'], dat_apres1=REQUEST['dt_apres1'], |
||||
dat_apres2=REQUEST['dt_apres2'], rd_ordem=REQUEST['rd_ordenacao']): |
dat_apres2=REQUEST['dt_apres2'], rd_ordem=REQUEST['rd_ordenacao']): |
||||
dic={} |
dic = {} |
||||
|
|
||||
dic['titulo']=documento.sgl_tipo_documento+" "+str(documento.num_documento)+" "+str(documento.ano_documento)+" - "+documento.des_tipo_documento |
dic['titulo'] = documento.sgl_tipo_documento + " " + \ |
||||
dic['txt_assunto']=documento.txt_assunto |
str(documento.num_documento) + " " + \ |
||||
dic['txt_interessado']=documento.txt_interessado |
str(documento.ano_documento) + " - " + documento.des_tipo_documento |
||||
|
dic['txt_assunto'] = documento.txt_assunto |
||||
|
dic['txt_interessado'] = documento.txt_interessado |
||||
|
|
||||
des_status = '' |
des_status = '' |
||||
txt_tramitacao='' |
txt_tramitacao = '' |
||||
|
|
||||
dic['localizacao_atual']=" " |
dic['localizacao_atual'] = " " |
||||
for tramitacao in context.zsql.tramitacao_administrativo_obter_zsql(cod_documento=documento.cod_documento,ind_ult_tramitacao=1): |
for tramitacao in context.zsql.tramitacao_administrativo_obter_zsql(cod_documento=documento.cod_documento, ind_ult_tramitacao=1): |
||||
if tramitacao.cod_unid_tram_dest: |
if tramitacao.cod_unid_tram_dest: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_dest |
cod_unid_tram = tramitacao.cod_unid_tram_dest |
||||
else: |
else: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_local |
cod_unid_tram = tramitacao.cod_unid_tram_local |
||||
|
|
||||
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = cod_unid_tram): |
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao=cod_unid_tram): |
||||
if unidade_tramitacao.cod_orgao: |
if unidade_tramitacao.cod_orgao: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_orgao |
dic['localizacao_atual'] = unidade_tramitacao.nom_orgao |
||||
else: |
else: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_comissao |
dic['localizacao_atual'] = unidade_tramitacao.nom_comissao |
||||
|
|
||||
des_status=tramitacao.des_status |
des_status = tramitacao.des_status |
||||
txt_tramitacao=tramitacao.txt_tramitacao |
txt_tramitacao = tramitacao.txt_tramitacao |
||||
|
|
||||
dic['des_situacao']=des_status |
dic['des_situacao'] = des_status |
||||
dic['ultima_acao']=txt_tramitacao |
dic['ultima_acao'] = txt_tramitacao |
||||
|
|
||||
documentos.append(dic) |
documentos.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_num_documento |
filtro['numero'] = REQUEST.txt_num_documento |
||||
filtro['ano']=REQUEST.txt_ano_documento |
filtro['ano'] = REQUEST.txt_ano_documento |
||||
filtro['interessado']=REQUEST.txa_txt_interessado |
filtro['interessado'] = REQUEST.txa_txt_interessado |
||||
filtro['assunto']=REQUEST.txa_txt_assunto |
filtro['assunto'] = REQUEST.txa_txt_assunto |
||||
|
|
||||
filtro['tipo_documento']='' |
filtro['tipo_documento'] = '' |
||||
if REQUEST.lst_tip_documento!='': |
if REQUEST.lst_tip_documento != '': |
||||
for tipo_documento in context.zsql.tipo_documento_administrativo_obter_zsql(ind_excluido=0, tip_documento=REQUEST.lst_tip_documento): |
for tipo_documento in context.zsql.tipo_documento_administrativo_obter_zsql(ind_excluido=0, tip_documento=REQUEST.lst_tip_documento): |
||||
filtro['tipo_documento']= tipo_documento.sgl_tipo_documento + ' - ' + tipo_documento.des_tipo_documento |
filtro['tipo_documento'] = tipo_documento.sgl_tipo_documento + \ |
||||
|
' - ' + tipo_documento.des_tipo_documento |
||||
filtro['tramitando']='' |
|
||||
if REQUEST.rad_tramitando=='1': |
filtro['tramitando'] = '' |
||||
filtro['tramitacao']='Sim' |
if REQUEST.rad_tramitando == '1': |
||||
elif REQUEST['rad_tramitando']=='0': |
filtro['tramitacao'] = 'Sim' |
||||
filtro['tramitacao']='Não' |
elif REQUEST['rad_tramitando'] == '0': |
||||
|
filtro['tramitacao'] = 'Não' |
||||
filtro['situacao_atual']='' |
|
||||
if REQUEST.lst_status!='': |
filtro['situacao_atual'] = '' |
||||
for status in context.zsql.status_tramitacao_administrativo_obter_zsql(ind_exluido=0,cod_status=REQUEST.lst_status): |
if REQUEST.lst_status != '': |
||||
filtro['situacao_atual']=status.sgl_status + ' - ' + status.des_status |
for status in context.zsql.status_tramitacao_administrativo_obter_zsql(ind_exluido=0, cod_status=REQUEST.lst_status): |
||||
|
filtro['situacao_atual'] = status.sgl_status + \ |
||||
sessao=session.id |
' - ' + status.des_status |
||||
caminho = context.pdf_documento_administrativo_gerar(sessao,imagem,data,documentos,cabecalho,rodape,filtro) |
|
||||
if caminho=='aviso': |
sessao = session.id |
||||
|
caminho = context.pdf_documento_administrativo_gerar( |
||||
|
sessao, imagem, data, documentos, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,200 +1,210 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.sapl_site.sapl_skin.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.sapl_site.sapl_skin.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Verifica o tamanho da lista das materias selecionadas vindas do form |
# Verifica o tamanho da lista das materias selecionadas vindas do form |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
if REQUEST.txt_check=='1': |
if REQUEST.txt_check == '1': |
||||
cod_mat = REQUEST['check_ind'] |
cod_mat = REQUEST['check_ind'] |
||||
materias=[] |
materias = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for materia in context.zsql.materia_obter_zsql(cod_materia=cod_mat): |
for materia in context.zsql.materia_obter_zsql(cod_materia=cod_mat): |
||||
dic={} |
dic = {} |
||||
dic['titulo']="INDICAÇÃO: "+str(materia.num_ident_basica)+" "+str(materia.ano_ident_basica) |
dic['titulo'] = "INDICAÇÃO: " + \ |
||||
dic['materia']=str(materia.num_ident_basica)+"/"+str(materia.ano_ident_basica) |
str(materia.num_ident_basica) + " " + str(materia.ano_ident_basica) |
||||
dic['dat_apresentacao']=materia.dat_apresentacao |
dic['materia'] = str(materia.num_ident_basica) + \ |
||||
dic['txt_ementa']=materia.txt_ementa |
"/" + str(materia.ano_ident_basica) |
||||
|
dic['dat_apresentacao'] = materia.dat_apresentacao |
||||
|
dic['txt_ementa'] = materia.txt_ementa |
||||
|
|
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia, ind_primeiro_autor=1): |
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia, ind_primeiro_autor=1): |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
|
|
||||
des_status = '' |
des_status = '' |
||||
txt_tramitacao='' |
txt_tramitacao = '' |
||||
data_ultima_acao = '' |
data_ultima_acao = '' |
||||
|
|
||||
dic['localizacao_atual']=" " |
dic['localizacao_atual'] = " " |
||||
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia,ind_ult_tramitacao=1): |
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia, ind_ult_tramitacao=1): |
||||
if tramitacao.cod_unid_tram_dest: |
if tramitacao.cod_unid_tram_dest: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_dest |
cod_unid_tram = tramitacao.cod_unid_tram_dest |
||||
else: |
else: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_local |
cod_unid_tram = tramitacao.cod_unid_tram_local |
||||
|
|
||||
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = cod_unid_tram): |
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao=cod_unid_tram): |
||||
if unidade_tramitacao.cod_orgao: |
if unidade_tramitacao.cod_orgao: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_orgao |
dic['localizacao_atual'] = unidade_tramitacao.nom_orgao |
||||
elif unidade_tramitacao.cod_parlamentar: |
elif unidade_tramitacao.cod_parlamentar: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_parlamentar |
dic['localizacao_atual'] = unidade_tramitacao.nom_parlamentar |
||||
else: |
else: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_comissao |
dic['localizacao_atual'] = unidade_tramitacao.nom_comissao |
||||
|
|
||||
des_status=tramitacao.des_status |
des_status = tramitacao.des_status |
||||
txt_tramitacao=tramitacao.txt_tramitacao |
txt_tramitacao = tramitacao.txt_tramitacao |
||||
data_ultima_acao = tramitacao.dat_tramitacao |
data_ultima_acao = tramitacao.dat_tramitacao |
||||
|
|
||||
dic['des_situacao']=des_status |
dic['des_situacao'] = des_status |
||||
dic['ultima_acao']=txt_tramitacao |
dic['ultima_acao'] = txt_tramitacao |
||||
dic['data_ultima_acao']=data_ultima_acao |
dic['data_ultima_acao'] = data_ultima_acao |
||||
|
|
||||
dic['norma_juridica_vinculada'] = "Não há nenhuma norma jurídica vinculada" |
dic['norma_juridica_vinculada'] = "Não há nenhuma norma jurídica vinculada" |
||||
for norma in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
for norma in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
||||
dic['norma_juridica_vinculada']=norma.des_norma+" "+str(norma.num_norma)+"/"+str(norma.ano_norma) |
dic['norma_juridica_vinculada'] = norma.des_norma + " " + \ |
||||
|
str(norma.num_norma) + "/" + str(norma.ano_norma) |
||||
|
|
||||
materias.append(dic) |
materias.append(dic) |
||||
|
|
||||
else: |
else: |
||||
codigo = REQUEST.check_ind |
codigo = REQUEST.check_ind |
||||
materias=[] |
materias = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for cod_mat in codigo: |
for cod_mat in codigo: |
||||
for materia in context.zsql.materia_obter_zsql(cod_materia=cod_mat): |
for materia in context.zsql.materia_obter_zsql(cod_materia=cod_mat): |
||||
dic={} |
dic = {} |
||||
dic['titulo']="INDICAÃÃO: "+str(materia.num_ident_basica)+" "+str(materia.ano_ident_basica) |
dic['titulo'] = "INDICAÃÃO: " + \ |
||||
dic['materia']=str(materia.num_ident_basica)+"/"+str(materia.ano_ident_basica) |
str(materia.num_ident_basica) + " " + \ |
||||
dic['dat_apresentacao']=materia.dat_apresentacao |
str(materia.ano_ident_basica) |
||||
dic['txt_ementa']=materia.txt_ementa |
dic['materia'] = str(materia.num_ident_basica) + \ |
||||
|
"/" + str(materia.ano_ident_basica) |
||||
|
dic['dat_apresentacao'] = materia.dat_apresentacao |
||||
|
dic['txt_ementa'] = materia.txt_ementa |
||||
|
|
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia, ind_primeiro_autor=1): |
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia, ind_primeiro_autor=1): |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
|
|
||||
des_status = '' |
des_status = '' |
||||
txt_tramitacao='' |
txt_tramitacao = '' |
||||
data_ultima_acao = '' |
data_ultima_acao = '' |
||||
|
|
||||
dic['localizacao_atual']=" " |
dic['localizacao_atual'] = " " |
||||
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia,ind_ult_tramitacao=1): |
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia, ind_ult_tramitacao=1): |
||||
if tramitacao.cod_unid_tram_dest: |
if tramitacao.cod_unid_tram_dest: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_dest |
cod_unid_tram = tramitacao.cod_unid_tram_dest |
||||
else: |
else: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_local |
cod_unid_tram = tramitacao.cod_unid_tram_local |
||||
|
|
||||
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = cod_unid_tram): |
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao=cod_unid_tram): |
||||
if unidade_tramitacao.cod_orgao: |
if unidade_tramitacao.cod_orgao: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_orgao |
dic['localizacao_atual'] = unidade_tramitacao.nom_orgao |
||||
elif unidade_tramitacao.cod_parlamentar: |
elif unidade_tramitacao.cod_parlamentar: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_parlamentar |
dic['localizacao_atual'] = unidade_tramitacao.nom_parlamentar |
||||
else: |
else: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_comissao |
dic['localizacao_atual'] = unidade_tramitacao.nom_comissao |
||||
|
|
||||
des_status=tramitacao.des_status |
des_status = tramitacao.des_status |
||||
txt_tramitacao=tramitacao.txt_tramitacao |
txt_tramitacao = tramitacao.txt_tramitacao |
||||
data_ultima_acao = tramitacao.dat_tramitacao |
data_ultima_acao = tramitacao.dat_tramitacao |
||||
|
|
||||
dic['des_situacao']=des_status |
dic['des_situacao'] = des_status |
||||
dic['ultima_acao']=txt_tramitacao |
dic['ultima_acao'] = txt_tramitacao |
||||
dic['data_ultima_acao']=data_ultima_acao |
dic['data_ultima_acao'] = data_ultima_acao |
||||
|
|
||||
dic['norma_juridica_vinculada'] = "Não há nenhuma norma jurídica vinculada" |
dic['norma_juridica_vinculada'] = "Não há nenhuma norma jurídica vinculada" |
||||
for norma in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
for norma in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
||||
dic['norma_juridica_vinculada']=norma.des_norma+" "+str(norma.num_norma)+"/"+str(norma.ano_norma) |
dic['norma_juridica_vinculada'] = norma.des_norma + " " + \ |
||||
|
str(norma.num_norma) + "/" + str(norma.ano_norma) |
||||
|
|
||||
materias.append(dic) |
materias.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
#filtro['data_apres']=REQUEST.data |
# filtro['data_apres']=REQUEST.data |
||||
|
|
||||
#filtro['tipo_materia']='' |
# filtro['tipo_materia']='' |
||||
#for tipo_materia in context.zsql.tipo_materia_legislativa_obter_zsql(ind_excluido=0, tip_materia=9): |
# for tipo_materia in context.zsql.tipo_materia_legislativa_obter_zsql(ind_excluido=0, tip_materia=9): |
||||
# filtro['tipo_materia']= tipo_materia.sgl_tipo_materia + ' - ' + tipo_materia.des_tipo_materia |
# filtro['tipo_materia']= tipo_materia.sgl_tipo_materia + ' - ' + tipo_materia.des_tipo_materia |
||||
|
|
||||
#filtro['partido']='' |
# filtro['partido']='' |
||||
#if REQUEST.lst_cod_partido!='': |
# if REQUEST.lst_cod_partido!='': |
||||
# for partido in context.zsql.partido_obter_zsql(ind_excluido=0,cod_partido=REQUEST.lst_cod_partido): |
# for partido in context.zsql.partido_obter_zsql(ind_excluido=0,cod_partido=REQUEST.lst_cod_partido): |
||||
# filtro['partido']=partido.sgl_partido + ' - ' + partido.nom_partido |
# filtro['partido']=partido.sgl_partido + ' - ' + partido.nom_partido |
||||
|
|
||||
#filtro['tramitando']='' |
# filtro['tramitando']='' |
||||
#if REQUEST.rad_tramitando=='1': |
# if REQUEST.rad_tramitando=='1': |
||||
# filtro['tramitacao']='Sim' |
# filtro['tramitacao']='Sim' |
||||
#elif REQUEST['rad_tramitando']=='0': |
# elif REQUEST['rad_tramitando']=='0': |
||||
# filtro['tramitacao']='Não' |
# filtro['tramitacao']='Não' |
||||
|
|
||||
#filtro['situacao_atual']='' |
# filtro['situacao_atual']='' |
||||
#if REQUEST.lst_status!='': |
# if REQUEST.lst_status!='': |
||||
# for status in context.zsql.status_tramitacao_obter_zsql(ind_exluido=0,cod_status=REQUEST.lst_status): |
# for status in context.zsql.status_tramitacao_obter_zsql(ind_exluido=0,cod_status=REQUEST.lst_status): |
||||
# filtro['situacao_atual']=status.sgl_status + ' - ' + status.des_status |
# filtro['situacao_atual']=status.sgl_status + ' - ' + status.des_status |
||||
|
|
||||
sessao=session.id |
sessao = session.id |
||||
caminho = context.pdf_espelho_gerar(sessao,imagem,data,materias,cabecalho,rodape,filtro) |
caminho = context.pdf_espelho_gerar( |
||||
if caminho=='aviso': |
sessao, imagem, data, materias, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,127 +1,137 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
||||
|
|
||||
protocolos=[] |
protocolos = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
||||
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST['txt_ano_protocolo'], |
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST[ |
||||
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST['rad_tip_processo'], |
'txt_ano_protocolo'], |
||||
tip_materia=REQUEST['lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST[ |
||||
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST['txa_txt_interessado'], |
'rad_tip_processo'], |
||||
|
tip_materia=REQUEST[ |
||||
|
'lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
||||
|
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST[ |
||||
|
'txa_txt_interessado'], |
||||
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
||||
dic={} |
dic = {} |
||||
|
|
||||
dic['titulo']=str(protocolo.cod_protocolo) |
dic['titulo'] = str(protocolo.cod_protocolo) |
||||
|
|
||||
dic['data']='Data: '+context.pysc.iso_to_port_pysc(protocolo.dat_protocolo)+' Horário: '+protocolo.hor_protocolo[0:2]+':'+protocolo.hor_protocolo[3:5] |
dic['data'] = 'Data: ' + context.pysc.iso_to_port_pysc( |
||||
|
protocolo.dat_protocolo) + ' Horário: ' + protocolo.hor_protocolo[0:2] + ':' + protocolo.hor_protocolo[3:5] |
||||
|
|
||||
dic['txt_assunto']=protocolo.txt_assunto_ementa |
dic['txt_assunto'] = protocolo.txt_assunto_ementa |
||||
|
|
||||
dic['txt_interessado']=protocolo.txt_interessado |
dic['txt_interessado'] = protocolo.txt_interessado |
||||
|
|
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
if protocolo.cod_autor!=None: |
if protocolo.cod_autor != None: |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
|
|
||||
dic['natureza']='' |
dic['natureza'] = '' |
||||
if protocolo.tip_processo==0: |
if protocolo.tip_processo == 0: |
||||
dic['natureza']='Administrativo' |
dic['natureza'] = 'Administrativo' |
||||
if protocolo.tip_processo==1: |
if protocolo.tip_processo == 1: |
||||
dic['natureza']='Legislativo' |
dic['natureza'] = 'Legislativo' |
||||
|
|
||||
dic['num_materia']='' |
dic['num_materia'] = '' |
||||
for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo,ano_ident_basica=protocolo.ano_protocolo): |
for materia in context.zsql.materia_obter_zsql(num_protocolo=protocolo.cod_protocolo, ano_ident_basica=protocolo.ano_protocolo): |
||||
dic['num_materia']=materia.sgl_tipo_materia+' '+str(materia.num_ident_basica)+'/'+str(materia.ano_ident_basica) |
dic['num_materia'] = materia.sgl_tipo_materia + ' ' + \ |
||||
|
str(materia.num_ident_basica) + '/' + str(materia.ano_ident_basica) |
||||
|
|
||||
dic['num_documento']='' |
dic['num_documento'] = '' |
||||
for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo): |
for documento in context.zsql.documento_administrativo_obter_zsql(num_protocolo=protocolo.cod_protocolo): |
||||
dic['num_documento']=documento.sgl_tipo_documento+' '+str(documento.num_documento)+'/'+ str(documento.ano_documento) |
dic['num_documento'] = documento.sgl_tipo_documento + ' ' + \ |
||||
|
str(documento.num_documento) + '/' + str(documento.ano_documento) |
||||
|
|
||||
dic['ident_processo']=dic['num_materia'] or dic['num_documento'] |
dic['ident_processo'] = dic['num_materia'] or dic['num_documento'] |
||||
|
|
||||
dic['processo']=protocolo.des_tipo_materia or protocolo.des_tipo_documento |
dic['processo'] = protocolo.des_tipo_materia or protocolo.des_tipo_documento |
||||
|
|
||||
dic['anulado']='' |
dic['anulado'] = '' |
||||
if protocolo.ind_anulado==1: |
if protocolo.ind_anulado == 1: |
||||
dic['anulado']='Nulo' |
dic['anulado'] = 'Nulo' |
||||
|
|
||||
protocolos.append(dic) |
protocolos.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_num_protocolo |
filtro['numero'] = REQUEST.txt_num_protocolo |
||||
filtro['ano']=REQUEST.txt_ano_protocolo |
filtro['ano'] = REQUEST.txt_ano_protocolo |
||||
filtro['tipo_protocolo']=REQUEST.rad_tip_protocolo |
filtro['tipo_protocolo'] = REQUEST.rad_tip_protocolo |
||||
filtro['tipo_processo']=REQUEST.rad_tip_processo |
filtro['tipo_processo'] = REQUEST.rad_tip_processo |
||||
filtro['assunto']=REQUEST.txt_assunto |
filtro['assunto'] = REQUEST.txt_assunto |
||||
filtro['autor']=REQUEST.hdn_cod_autor |
filtro['autor'] = REQUEST.hdn_cod_autor |
||||
filtro['interessado']=REQUEST.txa_txt_interessado |
filtro['interessado'] = REQUEST.txa_txt_interessado |
||||
|
|
||||
sessao=session.id |
sessao = session.id |
||||
caminho = context.pdf_etiqueta_protocolo_gerar(sessao,imagem,data,protocolos,cabecalho,rodape,filtro) |
caminho = context.pdf_etiqueta_protocolo_gerar( |
||||
if caminho=='aviso': |
sessao, imagem, data, protocolos, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,155 +1,169 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
#print request |
# print request |
||||
#return printed |
# return printed |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar as matérias e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar as matérias e gerar os dados |
||||
|
|
||||
materias=[] |
materias = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for materia in context.zsql.materia_pesquisar_zsql(tip_id_basica=REQUEST['lst_tip_materia'], num_ident_basica=REQUEST['txt_numero'], |
for materia in context.zsql.materia_pesquisar_zsql(tip_id_basica=REQUEST['lst_tip_materia'], num_ident_basica=REQUEST['txt_numero'], |
||||
ano_ident_basica=REQUEST['txt_ano'], ind_tramitacao=REQUEST['rad_tramitando'], |
ano_ident_basica=REQUEST[ |
||||
des_assunto=REQUEST['txt_assunto'], nom_relator=REQUEST['txt_relator'], |
'txt_ano'], ind_tramitacao=REQUEST['rad_tramitando'], |
||||
cod_status=REQUEST['lst_status'], des_tipo_autor=REQUEST['lst_tip_autor'], |
des_assunto=REQUEST[ |
||||
dat_apresentacao=REQUEST['dt_apres'], dat_apresentacao2=REQUEST['dt_apres2'], |
'txt_assunto'], nom_relator=REQUEST['txt_relator'], |
||||
dat_publicacao=REQUEST['dt_public'], dat_publicacao2=REQUEST['dt_public2'], |
cod_status=REQUEST['lst_status'], des_tipo_autor=REQUEST[ |
||||
cod_partido=REQUEST['lst_cod_partido'],cod_autor=REQUEST['hdn_cod_autor'], |
'lst_tip_autor'], |
||||
rd_ordem=REQUEST['rd_ordenacao'],rd_ordem_td=REQUEST['rd_ordem_td']): |
dat_apresentacao=REQUEST[ |
||||
|
'dt_apres'], dat_apresentacao2=REQUEST['dt_apres2'], |
||||
dic={} |
dat_publicacao=REQUEST[ |
||||
|
'dt_public'], dat_publicacao2=REQUEST['dt_public2'], |
||||
dic['titulo']=materia.sgl_tipo_materia+" "+materia.des_tipo_materia+" "+str(materia.num_ident_basica)+"/"+str(materia.ano_ident_basica) |
cod_partido=REQUEST['lst_cod_partido'], cod_autor=REQUEST[ |
||||
dic['txt_ementa']=materia.txt_ementa |
'hdn_cod_autor'], |
||||
|
rd_ordem=REQUEST['rd_ordenacao'], rd_ordem_td=REQUEST['rd_ordem_td']): |
||||
|
|
||||
|
dic = {} |
||||
|
|
||||
|
dic['titulo'] = materia.sgl_tipo_materia + " " + materia.des_tipo_materia + \ |
||||
|
" " + str(materia.num_ident_basica) + "/" + \ |
||||
|
str(materia.ano_ident_basica) |
||||
|
dic['txt_ementa'] = materia.txt_ementa |
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia): |
for autoria in context.zsql.autoria_obter_zsql(cod_materia=materia.cod_materia): |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=autoria.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
|
|
||||
des_status = '' |
des_status = '' |
||||
txt_tramitacao='' |
txt_tramitacao = '' |
||||
|
|
||||
dic['localizacao_atual']=" " |
dic['localizacao_atual'] = " " |
||||
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia,ind_ult_tramitacao=1): |
for tramitacao in context.zsql.tramitacao_obter_zsql(cod_materia=materia.cod_materia, ind_ult_tramitacao=1): |
||||
if tramitacao.cod_unid_tram_dest: |
if tramitacao.cod_unid_tram_dest: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_dest |
cod_unid_tram = tramitacao.cod_unid_tram_dest |
||||
else: |
else: |
||||
cod_unid_tram = tramitacao.cod_unid_tram_local |
cod_unid_tram = tramitacao.cod_unid_tram_local |
||||
|
|
||||
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao = cod_unid_tram): |
for unidade_tramitacao in context.zsql.unidade_tramitacao_obter_zsql(cod_unid_tramitacao=cod_unid_tram): |
||||
if unidade_tramitacao.cod_orgao: |
if unidade_tramitacao.cod_orgao: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_orgao |
dic['localizacao_atual'] = unidade_tramitacao.nom_orgao |
||||
else: |
else: |
||||
dic['localizacao_atual']=unidade_tramitacao.nom_comissao |
dic['localizacao_atual'] = unidade_tramitacao.nom_comissao |
||||
|
|
||||
des_status=tramitacao.des_status |
des_status = tramitacao.des_status |
||||
txt_tramitacao=tramitacao.txt_tramitacao |
txt_tramitacao = tramitacao.txt_tramitacao |
||||
|
|
||||
dic['des_situacao']=des_status |
dic['des_situacao'] = des_status |
||||
dic['ultima_acao']=txt_tramitacao |
dic['ultima_acao'] = txt_tramitacao |
||||
|
|
||||
|
dic['norma_vinculada'] = " " |
||||
dic['norma_vinculada']=" " |
|
||||
for norma_vinculada in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
for norma_vinculada in context.zsql.materia_buscar_norma_juridica_zsql(cod_materia=materia.cod_materia): |
||||
dic['norma_vinculada']=norma_vinculada.des_norma+" "+str(norma_vinculada.num_norma)+"/"+str(norma_vinculada.ano_norma) |
dic['norma_vinculada'] = norma_vinculada.des_norma + " " + \ |
||||
|
str(norma_vinculada.num_norma) + "/" + \ |
||||
|
str(norma_vinculada.ano_norma) |
||||
|
|
||||
materias.append(dic) |
materias.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_numero |
filtro['numero'] = REQUEST.txt_numero |
||||
filtro['ano']=REQUEST.txt_ano |
filtro['ano'] = REQUEST.txt_ano |
||||
filtro['autor']=REQUEST.hdn_txt_autor |
filtro['autor'] = REQUEST.hdn_txt_autor |
||||
filtro['tipo_autor']=REQUEST.lst_tip_autor |
filtro['tipo_autor'] = REQUEST.lst_tip_autor |
||||
filtro['relator']=REQUEST.txt_relator |
filtro['relator'] = REQUEST.txt_relator |
||||
filtro['assunto']=REQUEST.txt_assunto |
filtro['assunto'] = REQUEST.txt_assunto |
||||
|
|
||||
# Atribuição do restante dos dados que precisam de processamento |
# Atribuição do restante dos dados que precisam de processamento |
||||
if REQUEST.hdn_txt_autor==' ': # Corrige bug do Netscape |
if REQUEST.hdn_txt_autor == ' ': # Corrige bug do Netscape |
||||
filtro['autor']='' |
filtro['autor'] = '' |
||||
|
|
||||
filtro['tipo_materia']='' |
filtro['tipo_materia'] = '' |
||||
if REQUEST.lst_tip_materia!='': |
if REQUEST.lst_tip_materia != '': |
||||
for tipo_materia in context.zsql.tipo_materia_legislativa_obter_zsql(ind_excluido=0, tip_materia=REQUEST.lst_tip_materia): |
for tipo_materia in context.zsql.tipo_materia_legislativa_obter_zsql(ind_excluido=0, tip_materia=REQUEST.lst_tip_materia): |
||||
filtro['tipo_materia']= tipo_materia.sgl_tipo_materia + ' - ' + tipo_materia.des_tipo_materia |
filtro['tipo_materia'] = tipo_materia.sgl_tipo_materia + \ |
||||
|
' - ' + tipo_materia.des_tipo_materia |
||||
filtro['partido']='' |
|
||||
if REQUEST.lst_cod_partido!='': |
filtro['partido'] = '' |
||||
for partido in context.zsql.partido_obter_zsql(ind_excluido=0,cod_partido=REQUEST.lst_cod_partido): |
if REQUEST.lst_cod_partido != '': |
||||
filtro['partido']=partido.sgl_partido + ' - ' + partido.nom_partido |
for partido in context.zsql.partido_obter_zsql(ind_excluido=0, cod_partido=REQUEST.lst_cod_partido): |
||||
|
filtro['partido'] = partido.sgl_partido + ' - ' + partido.nom_partido |
||||
filtro['tramitando']='' |
|
||||
if REQUEST.rad_tramitando=='1': |
filtro['tramitando'] = '' |
||||
filtro['tramitacao']='Sim' |
if REQUEST.rad_tramitando == '1': |
||||
elif REQUEST['rad_tramitando']=='0': |
filtro['tramitacao'] = 'Sim' |
||||
filtro['tramitacao']='Não' |
elif REQUEST['rad_tramitando'] == '0': |
||||
|
filtro['tramitacao'] = 'Não' |
||||
filtro['situacao_atual']='' |
|
||||
if REQUEST.lst_status!='': |
filtro['situacao_atual'] = '' |
||||
for status in context.zsql.status_tramitacao_obter_zsql(ind_excluido=0,cod_status=REQUEST.lst_status): |
if REQUEST.lst_status != '': |
||||
filtro['situacao_atual']=status.sgl_status + ' - ' + status.des_status |
for status in context.zsql.status_tramitacao_obter_zsql(ind_excluido=0, cod_status=REQUEST.lst_status): |
||||
|
filtro['situacao_atual'] = status.sgl_status + \ |
||||
sessao=session.id |
' - ' + status.des_status |
||||
caminho = context.pdf_materia_gerar(sessao,imagem,data,materias,cabecalho,rodape,filtro) |
|
||||
if caminho=='aviso': |
sessao = session.id |
||||
|
caminho = context.pdf_materia_gerar( |
||||
|
sessao, imagem, data, materias, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,94 +1,105 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar as normas e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar as normas e gerar os dados |
||||
|
|
||||
normas=[] |
normas = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for norma in context.zsql.norma_juridica_obter_zsql(tip_norma=REQUEST['lst_tip_norma'], num_norma=REQUEST['txt_numero'], |
for norma in context.zsql.norma_juridica_obter_zsql(tip_norma=REQUEST['lst_tip_norma'], num_norma=REQUEST['txt_numero'], |
||||
ano_norma=REQUEST['txt_ano'], des_assunto=REQUEST['txt_assunto'], |
ano_norma=REQUEST['txt_ano'], des_assunto=REQUEST[ |
||||
cod_assunto=REQUEST['lst_assunto_norma'], dat_norma=REQUEST['dt_norma'], |
'txt_assunto'], |
||||
dat_norma2=REQUEST['dt_norma2'], dat_publicacao=REQUEST['dt_public'], |
cod_assunto=REQUEST[ |
||||
dat_publicacao2=REQUEST['dt_public2'],rd_ordem=REQUEST['rd_ordenacao']): |
'lst_assunto_norma'], dat_norma=REQUEST['dt_norma'], |
||||
|
dat_norma2=REQUEST[ |
||||
dic={} |
'dt_norma2'], dat_publicacao=REQUEST['dt_public'], |
||||
|
dat_publicacao2=REQUEST['dt_public2'], rd_ordem=REQUEST['rd_ordenacao']): |
||||
dic['titulo']=norma.sgl_tipo_norma+" Nº "+str(norma.num_norma)+" de "+str(norma.dat_norma)+" - "+norma.des_tipo_norma |
|
||||
dic['txt_ementa']=norma.txt_ementa |
dic = {} |
||||
|
|
||||
dic['materia_vinculada']=" " |
dic['titulo'] = norma.sgl_tipo_norma + " Nº " + \ |
||||
if norma.cod_materia!=None: |
str(norma.num_norma) + " de " + \ |
||||
|
str(norma.dat_norma) + " - " + norma.des_tipo_norma |
||||
|
dic['txt_ementa'] = norma.txt_ementa |
||||
|
|
||||
|
dic['materia_vinculada'] = " " |
||||
|
if norma.cod_materia != None: |
||||
for materia_vinculada in context.zsql.materia_obter_zsql(cod_materia=str(norma.cod_materia)): |
for materia_vinculada in context.zsql.materia_obter_zsql(cod_materia=str(norma.cod_materia)): |
||||
dic['materia_vinculada']=materia_vinculada.sgl_tipo_materia+" "+str(materia_vinculada.num_ident_basica)+"/"+str(materia_vinculada.ano_ident_basica) |
dic['materia_vinculada'] = materia_vinculada.sgl_tipo_materia + " " + \ |
||||
|
str(materia_vinculada.num_ident_basica) + "/" + \ |
||||
|
str(materia_vinculada.ano_ident_basica) |
||||
|
|
||||
normas.append(dic) |
normas.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_numero |
filtro['numero'] = REQUEST.txt_numero |
||||
filtro['ano']=REQUEST.txt_ano |
filtro['ano'] = REQUEST.txt_ano |
||||
filtro['assunto']=REQUEST.txt_assunto |
filtro['assunto'] = REQUEST.txt_assunto |
||||
|
|
||||
filtro['tipo_norma']='' |
filtro['tipo_norma'] = '' |
||||
if REQUEST.lst_tip_norma!='': |
if REQUEST.lst_tip_norma != '': |
||||
for tipo_norma in context.zsql.tipo_norma_juridica_obter_zsql(ind_excluido=0, tip_norma=REQUEST.lst_tip_norma): |
for tipo_norma in context.zsql.tipo_norma_juridica_obter_zsql(ind_excluido=0, tip_norma=REQUEST.lst_tip_norma): |
||||
filtro['tipo_norma']= tipo_norma.sgl_tipo_norma + ' - ' + tipo_norma.des_tipo_norma |
filtro['tipo_norma'] = tipo_norma.sgl_tipo_norma + \ |
||||
|
' - ' + tipo_norma.des_tipo_norma |
||||
|
|
||||
sessao=session.id |
sessao = session.id |
||||
caminho = context.pdf_norma_gerar(sessao,imagem,data,normas,cabecalho,rodape,filtro) |
caminho = context.pdf_norma_gerar( |
||||
if caminho=='aviso': |
sessao, imagem, data, normas, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
@ -1,117 +1,126 @@ |
|||||
import os |
import os |
||||
|
|
||||
request=context.REQUEST |
request = context.REQUEST |
||||
response=request.RESPONSE |
response = request.RESPONSE |
||||
session= request.SESSION |
session = request.SESSION |
||||
|
|
||||
data=DateTime().strftime('%d/%m/%Y') |
data = DateTime().strftime('%d/%m/%Y') |
||||
|
|
||||
#Abaixo é gerada a string para o rodapé da página |
# Abaixo é gerada a string para o rodapé da página |
||||
casa={} |
casa = {} |
||||
aux=context.sapl_documentos.props_sapl.propertyItems() |
aux = context.sapl_documentos.props_sapl.propertyItems() |
||||
for item in aux: |
for item in aux: |
||||
casa[item[0]]=item[1] |
casa[item[0]] = item[1] |
||||
localidade=context.zsql.localidade_obter_zsql(cod_localidade=casa["cod_localidade"]) |
localidade = context.zsql.localidade_obter_zsql( |
||||
if len(casa["num_cep"])==8: |
cod_localidade=casa["cod_localidade"]) |
||||
cep=casa["num_cep"][:4]+"-"+casa["num_cep"][5:] |
if len(casa["num_cep"]) == 8: |
||||
|
cep = casa["num_cep"][:4] + "-" + casa["num_cep"][5:] |
||||
else: |
else: |
||||
cep="" |
cep = "" |
||||
|
|
||||
linha1=casa["end_casa"] |
linha1 = casa["end_casa"] |
||||
if cep!="": |
if cep != "": |
||||
if casa["end_casa"]!="" and casa["end_casa"]!=None: |
if casa["end_casa"] != "" and casa["end_casa"] != None: |
||||
linha1 = linha1 + " - " |
linha1 = linha1 + " - " |
||||
linha1 = linha1 + "CEP "+cep |
linha1 = linha1 + "CEP " + cep |
||||
if localidade[0].nom_localidade!="" and localidade[0].nom_localidade!=None: |
if localidade[0].nom_localidade != "" and localidade[0].nom_localidade != None: |
||||
linha1 = linha1 + " - "+localidade[0].nom_localidade+" "+localidade[0].sgl_uf |
linha1 = linha1 + " - " + \ |
||||
if casa["num_tel"]!="" and casa["num_tel"]!=None: |
localidade[0].nom_localidade + " " + localidade[0].sgl_uf |
||||
linha1 = linha1 + " Tel.: "+ casa["num_tel"] |
if casa["num_tel"] != "" and casa["num_tel"] != None: |
||||
|
linha1 = linha1 + " Tel.: " + casa["num_tel"] |
||||
linha2=casa["end_web_casa"] |
|
||||
if casa["end_email_casa"]!="" and casa["end_email_casa"]!=None: |
linha2 = casa["end_web_casa"] |
||||
if casa["end_web_casa"]!="" and casa["end_web_casa"]!=None: |
if casa["end_email_casa"] != "" and casa["end_email_casa"] != None: |
||||
|
if casa["end_web_casa"] != "" and casa["end_web_casa"] != None: |
||||
linha2 = linha2 + " - " |
linha2 = linha2 + " - " |
||||
linha2 = linha2 + "E-mail: "+casa["end_email_casa"] |
linha2 = linha2 + "E-mail: " + casa["end_email_casa"] |
||||
|
|
||||
data_emissao=DateTime().strftime("%d/%m/%Y") |
data_emissao = DateTime().strftime("%d/%m/%Y") |
||||
rodape=[linha1,linha2,data_emissao] |
rodape = [linha1, linha2, data_emissao] |
||||
|
|
||||
#Por fim, gera-se as entradas para o cabeçalho |
# Por fim, gera-se as entradas para o cabeçalho |
||||
estados=context.zsql.localidade_obter_zsql(tip_localidade="u") |
estados = context.zsql.localidade_obter_zsql(tip_localidade="u") |
||||
for uf in estados: |
for uf in estados: |
||||
if localidade[0].sgl_uf==uf.sgl_uf: |
if localidade[0].sgl_uf == uf.sgl_uf: |
||||
nom_estado=uf.nom_localidade |
nom_estado = uf.nom_localidade |
||||
break |
break |
||||
cabecalho={} |
cabecalho = {} |
||||
cabecalho["nom_casa"]=casa["nom_casa"] |
cabecalho["nom_casa"] = casa["nom_casa"] |
||||
cabecalho["nom_estado"]="Estado de "+nom_estado |
cabecalho["nom_estado"] = "Estado de " + nom_estado |
||||
|
|
||||
# tenta buscar o logotipo da casa LOGO_CASA |
# tenta buscar o logotipo da casa LOGO_CASA |
||||
if hasattr(context.sapl_documentos.props_sapl,'logo_casa.gif'): |
if hasattr(context.sapl_documentos.props_sapl, 'logo_casa.gif'): |
||||
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
imagem = context.sapl_documentos.props_sapl['logo_casa.gif'].absolute_url() |
||||
else: |
else: |
||||
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
imagem = context.imagens.absolute_url() + "/brasao_transp.gif" |
||||
|
|
||||
#Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
# Por fim, utiliza o PythonScript para pesquisar os protocolos e gerar os dados |
||||
|
|
||||
protocolos=[] |
protocolos = [] |
||||
REQUEST=context.REQUEST |
REQUEST = context.REQUEST |
||||
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
for protocolo in context.zsql.protocolo_pesquisar_zsql(tip_protocolo=REQUEST['rad_tip_protocolo'], |
||||
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST['txt_ano_protocolo'], |
cod_protocolo=REQUEST['txt_num_protocolo'], ano_protocolo=REQUEST[ |
||||
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST['rad_tip_processo'], |
'txt_ano_protocolo'], |
||||
tip_materia=REQUEST['lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
tip_documento=REQUEST['lst_tip_documento'], tip_processo=REQUEST[ |
||||
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST['txa_txt_interessado'], |
'rad_tip_processo'], |
||||
|
tip_materia=REQUEST[ |
||||
|
'lst_tip_materia'], des_assunto=REQUEST['txt_assunto'], |
||||
|
cod_autor=REQUEST['hdn_cod_autor'], des_interessado=REQUEST[ |
||||
|
'txa_txt_interessado'], |
||||
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
dat_apres=REQUEST['dt_apres'], dat_apres2=REQUEST['dt_apres2']): |
||||
dic={} |
dic = {} |
||||
|
|
||||
dic['titulo']=str(protocolo.cod_protocolo)+'/'+str(protocolo.ano_protocolo) |
dic['titulo'] = str(protocolo.cod_protocolo) + '/' + \ |
||||
|
str(protocolo.ano_protocolo) |
||||
|
|
||||
dic['data']=context.pysc.iso_to_port_pysc(protocolo.dat_protocolo)+' - <b>Horário:</b>'+protocolo.hor_protocolo |
dic['data'] = context.pysc.iso_to_port_pysc( |
||||
|
protocolo.dat_protocolo) + ' - <b>Horário:</b>' + protocolo.hor_protocolo |
||||
|
|
||||
dic['txt_assunto']=protocolo.txt_assunto_ementa |
dic['txt_assunto'] = protocolo.txt_assunto_ementa |
||||
|
|
||||
dic['txt_interessado']=protocolo.txt_interessado |
dic['txt_interessado'] = protocolo.txt_interessado |
||||
|
|
||||
dic['nom_autor'] = " " |
dic['nom_autor'] = " " |
||||
if protocolo.cod_autor!=None: |
if protocolo.cod_autor != None: |
||||
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
for autor in context.zsql.autor_obter_zsql(cod_autor=protocolo.cod_autor): |
||||
if autor.des_tipo_autor=='Parlamentar': |
if autor.des_tipo_autor == 'Parlamentar': |
||||
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
for parlamentar in context.zsql.parlamentar_obter_zsql(cod_parlamentar=autor.cod_parlamentar): |
||||
dic['nom_autor']=parlamentar.nom_completo |
dic['nom_autor'] = parlamentar.nom_completo |
||||
elif autor.des_tipo_autor=='Comissao': |
elif autor.des_tipo_autor == 'Comissao': |
||||
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
for comissao in context.zsql.comissao_obter_zsql(cod_comissao=autor.cod_comissao): |
||||
dic['nom_autor']=comissao.nom_comissao |
dic['nom_autor'] = comissao.nom_comissao |
||||
else: |
else: |
||||
dic['nom_autor']=autor.nom_autor |
dic['nom_autor'] = autor.nom_autor |
||||
|
|
||||
dic['natureza']='' |
dic['natureza'] = '' |
||||
if protocolo.tip_processo==0: |
if protocolo.tip_processo == 0: |
||||
dic['natureza']='Administrativo' |
dic['natureza'] = 'Administrativo' |
||||
if protocolo.tip_processo==1: |
if protocolo.tip_processo == 1: |
||||
dic['natureza']='Legislativo' |
dic['natureza'] = 'Legislativo' |
||||
|
|
||||
dic['processo']=protocolo.des_tipo_materia or protocolo.des_tipo_documento |
dic['processo'] = protocolo.des_tipo_materia or protocolo.des_tipo_documento |
||||
|
|
||||
dic['anulado']='' |
dic['anulado'] = '' |
||||
if protocolo.ind_anulado==1: |
if protocolo.ind_anulado == 1: |
||||
dic['anulado']='Nulo' |
dic['anulado'] = 'Nulo' |
||||
|
|
||||
protocolos.append(dic) |
protocolos.append(dic) |
||||
|
|
||||
filtro={} # Dicionário que conterá os dados do filtro |
filtro = {} # Dicionário que conterá os dados do filtro |
||||
|
|
||||
# Atribuições diretas do REQUEST |
# Atribuições diretas do REQUEST |
||||
filtro['numero']=REQUEST.txt_num_protocolo |
filtro['numero'] = REQUEST.txt_num_protocolo |
||||
filtro['ano']=REQUEST.txt_ano_protocolo |
filtro['ano'] = REQUEST.txt_ano_protocolo |
||||
filtro['tipo_protocolo']=REQUEST.rad_tip_protocolo |
filtro['tipo_protocolo'] = REQUEST.rad_tip_protocolo |
||||
filtro['tipo_processo']=REQUEST.rad_tip_processo |
filtro['tipo_processo'] = REQUEST.rad_tip_processo |
||||
filtro['assunto']=REQUEST.txt_assunto |
filtro['assunto'] = REQUEST.txt_assunto |
||||
filtro['autor']=REQUEST.hdn_cod_autor |
filtro['autor'] = REQUEST.hdn_cod_autor |
||||
filtro['interessado']=REQUEST.txa_txt_interessado |
filtro['interessado'] = REQUEST.txa_txt_interessado |
||||
|
|
||||
sessao=session.id |
sessao = session.id |
||||
caminho = context.pdf_protocolo_gerar(sessao,imagem,data,protocolos,cabecalho,rodape,filtro) |
caminho = context.pdf_protocolo_gerar( |
||||
if caminho=='aviso': |
sessao, imagem, data, protocolos, cabecalho, rodape, filtro) |
||||
|
if caminho == 'aviso': |
||||
return response.redirect('mensagem_emitir_proc') |
return response.redirect('mensagem_emitir_proc') |
||||
else: |
else: |
||||
response.redirect(caminho) |
response.redirect(caminho) |
||||
|
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue