|
@ -44,7 +44,6 @@ from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa, |
|
|
SituacaoMilitar, TipoAfastamento, TipoDependente, Votante, |
|
|
SituacaoMilitar, TipoAfastamento, TipoDependente, Votante, |
|
|
Bloco, FrenteCargo, FrenteParlamentar, BlocoCargo, BlocoMembro, MesaDiretora) |
|
|
Bloco, FrenteCargo, FrenteParlamentar, BlocoCargo, BlocoMembro, MesaDiretora) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FrenteCargoCrud = CrudAux.build(FrenteCargo, 'frente_cargo') |
|
|
FrenteCargoCrud = CrudAux.build(FrenteCargo, 'frente_cargo') |
|
|
BlocoCargoCrud = CrudAux.build(BlocoCargo, 'bloco_cargo') |
|
|
BlocoCargoCrud = CrudAux.build(BlocoCargo, 'bloco_cargo') |
|
|
CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa') |
|
|
CargoMesaCrud = CrudAux.build(CargoMesa, 'cargo_mesa') |
|
@ -154,7 +153,7 @@ class ProposicaoParlamentarCrud(CrudBaseForListAndDetailExternalAppView): |
|
|
class ListView(CrudBaseForListAndDetailExternalAppView.ListView): |
|
|
class ListView(CrudBaseForListAndDetailExternalAppView.ListView): |
|
|
|
|
|
|
|
|
def get_context_data(self, **kwargs): |
|
|
def get_context_data(self, **kwargs): |
|
|
context = CrudBaseForListAndDetailExternalAppView\ |
|
|
context = CrudBaseForListAndDetailExternalAppView \ |
|
|
.ListView.get_context_data(self, **kwargs) |
|
|
.ListView.get_context_data(self, **kwargs) |
|
|
return context |
|
|
return context |
|
|
|
|
|
|
|
@ -172,7 +171,6 @@ class ProposicaoParlamentarCrud(CrudBaseForListAndDetailExternalAppView): |
|
|
|
|
|
|
|
|
@property |
|
|
@property |
|
|
def extras_url(self): |
|
|
def extras_url(self): |
|
|
|
|
|
|
|
|
if self.object.texto_articulado.exists(): |
|
|
if self.object.texto_articulado.exists(): |
|
|
ta = self.object.texto_articulado.first() |
|
|
ta = self.object.texto_articulado.first() |
|
|
yield (str(reverse_lazy( |
|
|
yield (str(reverse_lazy( |
|
@ -361,6 +359,13 @@ class ParticipacaoParlamentarCrud(CrudBaseForListAndDetailExternalAppView): |
|
|
|
|
|
|
|
|
comissoes = [] |
|
|
comissoes = [] |
|
|
for p in object_list: |
|
|
for p in object_list: |
|
|
|
|
|
## TODO: atualmente periodo.data_fim pode ser nulo o que pode gerar um erro nessa tela |
|
|
|
|
|
data_fim = p.composicao.periodo.data_fim |
|
|
|
|
|
if data_fim: |
|
|
|
|
|
data_fim = data_fim.strftime("%d/%m/%Y") |
|
|
|
|
|
else: |
|
|
|
|
|
data_fim = ' - ' |
|
|
|
|
|
|
|
|
comissao = [ |
|
|
comissao = [ |
|
|
(p.composicao.comissao.nome, reverse( |
|
|
(p.composicao.comissao.nome, reverse( |
|
|
'sapl.comissoes:comissao_detail', kwargs={ |
|
|
'sapl.comissoes:comissao_detail', kwargs={ |
|
@ -368,7 +373,7 @@ class ParticipacaoParlamentarCrud(CrudBaseForListAndDetailExternalAppView): |
|
|
(p.cargo.nome, None), |
|
|
(p.cargo.nome, None), |
|
|
(p.composicao.periodo.data_inicio.strftime( |
|
|
(p.composicao.periodo.data_inicio.strftime( |
|
|
"%d/%m/%Y") + ' a ' + |
|
|
"%d/%m/%Y") + ' a ' + |
|
|
p.composicao.periodo.data_fim.strftime("%d/%m/%Y"), |
|
|
data_fim, |
|
|
None) |
|
|
None) |
|
|
] |
|
|
] |
|
|
comissoes.append(comissao) |
|
|
comissoes.append(comissao) |
|
@ -629,7 +634,6 @@ class ComposicaoColigacaoCrud(MasterDetailCrud): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class LegislaturaCrud(CrudAux): |
|
|
class LegislaturaCrud(CrudAux): |
|
|
|
|
|
|
|
|
model = Legislatura |
|
|
model = Legislatura |
|
|
help_topic = 'legislatura' |
|
|
help_topic = 'legislatura' |
|
|
|
|
|
|
|
@ -971,7 +975,7 @@ def altera_field_mesa(request): |
|
|
operação (Legislatura/Sessão/Inclusão/Remoção), |
|
|
operação (Legislatura/Sessão/Inclusão/Remoção), |
|
|
atualizando os campos após cada alteração |
|
|
atualizando os campos após cada alteração |
|
|
""" |
|
|
""" |
|
|
#TODO: Adicionar opção de selecionar mesa diretora no CRUD |
|
|
# TODO: Adicionar opção de selecionar mesa diretora no CRUD |
|
|
|
|
|
|
|
|
logger = logging.getLogger(__name__) |
|
|
logger = logging.getLogger(__name__) |
|
|
legislatura = request.GET['legislatura'] |
|
|
legislatura = request.GET['legislatura'] |
|
@ -1003,12 +1007,12 @@ def altera_field_mesa(request): |
|
|
|
|
|
|
|
|
mesa_diretora = request.GET.get('mesa_diretora') |
|
|
mesa_diretora = request.GET.get('mesa_diretora') |
|
|
|
|
|
|
|
|
#Mesa nao deve ser informada ainda |
|
|
# Mesa nao deve ser informada ainda |
|
|
if not mesa_diretora: |
|
|
if not mesa_diretora: |
|
|
#Cria nova mesa diretora ou retorna a primeira |
|
|
# Cria nova mesa diretora ou retorna a primeira |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa=sessao_selecionada) |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa=sessao_selecionada) |
|
|
|
|
|
|
|
|
#TODO: quando a mesa for criada explicitamente em tabelas auxiliares, |
|
|
# TODO: quando a mesa for criada explicitamente em tabelas auxiliares, |
|
|
# deve-se somente tentar recuperar a mesa, e caso nao exista |
|
|
# deve-se somente tentar recuperar a mesa, e caso nao exista |
|
|
# retornar o erro abaixo |
|
|
# retornar o erro abaixo |
|
|
# return JsonResponse({'msg': ('Nenhuma mesa encontrada na sessão!')}) |
|
|
# return JsonResponse({'msg': ('Nenhuma mesa encontrada na sessão!')}) |
|
@ -1064,7 +1068,7 @@ def insere_parlamentar_composicao(request): |
|
|
composicao = ComposicaoMesa() |
|
|
composicao = ComposicaoMesa() |
|
|
|
|
|
|
|
|
try: |
|
|
try: |
|
|
#logger.debug( |
|
|
# logger.debug( |
|
|
# "user=" + username + ". Tentando obter SessaoLegislativa com id={}.".format(request.POST['sessao'])) |
|
|
# "user=" + username + ". Tentando obter SessaoLegislativa com id={}.".format(request.POST['sessao'])) |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa_id=int(request.POST['sessao'])) |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa_id=int(request.POST['sessao'])) |
|
|
composicao.mesa_diretora = mesa_diretora |
|
|
composicao.mesa_diretora = mesa_diretora |
|
@ -1130,7 +1134,8 @@ def remove_parlamentar_composicao(request): |
|
|
composicao = ComposicaoMesa.objects.get( |
|
|
composicao = ComposicaoMesa.objects.get( |
|
|
id=request.POST['composicao_mesa']) |
|
|
id=request.POST['composicao_mesa']) |
|
|
except ObjectDoesNotExist: |
|
|
except ObjectDoesNotExist: |
|
|
logger.error("user=" + username + ". ComposicaoMesa com id={} não encontrada, portanto não pode ser removida." |
|
|
logger.error( |
|
|
|
|
|
"user=" + username + ". ComposicaoMesa com id={} não encontrada, portanto não pode ser removida." |
|
|
.format(request.POST['composicao_mesa'])) |
|
|
.format(request.POST['composicao_mesa'])) |
|
|
return JsonResponse( |
|
|
return JsonResponse( |
|
|
{'msg': ( |
|
|
{'msg': ( |
|
@ -1204,7 +1209,7 @@ def altera_field_mesa_public_view(request): |
|
|
atualizando os campos após cada alteração |
|
|
atualizando os campos após cada alteração |
|
|
""" |
|
|
""" |
|
|
|
|
|
|
|
|
#TODO: Adicionar opção de selecionar mesa diretora no CRUD |
|
|
# TODO: Adicionar opção de selecionar mesa diretora no CRUD |
|
|
|
|
|
|
|
|
logger = logging.getLogger(__name__) |
|
|
logger = logging.getLogger(__name__) |
|
|
username = request.user.username |
|
|
username = request.user.username |
|
@ -1239,20 +1244,20 @@ def altera_field_mesa_public_view(request): |
|
|
# Atualiza os componentes da view após a mudança |
|
|
# Atualiza os componentes da view após a mudança |
|
|
lista_sessoes = [(s.id, s.__str__()) for s in sessoes] |
|
|
lista_sessoes = [(s.id, s.__str__()) for s in sessoes] |
|
|
|
|
|
|
|
|
#Pegar Mesas diretoras da sessao |
|
|
# Pegar Mesas diretoras da sessao |
|
|
mesa_diretora = request.GET.get('mesa_diretora') |
|
|
mesa_diretora = request.GET.get('mesa_diretora') |
|
|
|
|
|
|
|
|
#Mesa nao deve ser informada ainda |
|
|
# Mesa nao deve ser informada ainda |
|
|
if not mesa_diretora: |
|
|
if not mesa_diretora: |
|
|
try: |
|
|
try: |
|
|
mesa_diretora = sessao_selecionada.mesadiretora_set.first() |
|
|
mesa_diretora = sessao_selecionada.mesadiretora_set.first() |
|
|
except ObjectDoesNotExist: |
|
|
except ObjectDoesNotExist: |
|
|
logger.error(f"user={username}. Mesa não encontrada com sessão Nº {sessao_selecionada.id}. ") |
|
|
logger.error(f"user={username}. Mesa não encontrada com sessão Nº {sessao_selecionada.id}. ") |
|
|
else: |
|
|
else: |
|
|
#Cria nova mesa diretora ou retorna a primeira |
|
|
# Cria nova mesa diretora ou retorna a primeira |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa=sessao_selecionada) |
|
|
mesa_diretora, _ = MesaDiretora.objects.get_or_create(sessao_legislativa=sessao_selecionada) |
|
|
|
|
|
|
|
|
#TODO: quando a mesa for criada explicitamente em tabelas auxiliares, |
|
|
# TODO: quando a mesa for criada explicitamente em tabelas auxiliares, |
|
|
# deve-se somente tentar recuperar a mesa, e caso nao exista |
|
|
# deve-se somente tentar recuperar a mesa, e caso nao exista |
|
|
# retornar o erro abaixo |
|
|
# retornar o erro abaixo |
|
|
# logger.error(f"user={username}. Mesa Nº {mesa_diretora} não encontrada na sessão Nº {sessao_selecionada.id}. " |
|
|
# logger.error(f"user={username}. Mesa Nº {mesa_diretora} não encontrada na sessão Nº {sessao_selecionada.id}. " |
|
@ -1299,7 +1304,7 @@ def altera_field_mesa_public_view(request): |
|
|
'lista_sessoes': lista_sessoes, |
|
|
'lista_sessoes': lista_sessoes, |
|
|
'lista_fotos': lista_fotos, |
|
|
'lista_fotos': lista_fotos, |
|
|
'sessao_selecionada': sessao_selecionada.id, |
|
|
'sessao_selecionada': sessao_selecionada.id, |
|
|
'mesa_diretora':mesa_diretora.id, |
|
|
'mesa_diretora': mesa_diretora.id, |
|
|
'msg': ('', 1) |
|
|
'msg': ('', 1) |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
@ -1308,7 +1313,7 @@ class VincularParlamentarView(PermissionRequiredMixin, FormView): |
|
|
logger = logging.getLogger(__name__) |
|
|
logger = logging.getLogger(__name__) |
|
|
form_class = VincularParlamentarForm |
|
|
form_class = VincularParlamentarForm |
|
|
template_name = 'parlamentares/vincular_parlamentar.html' |
|
|
template_name = 'parlamentares/vincular_parlamentar.html' |
|
|
permission_required = ('parlamentares.add_parlamentar', ) |
|
|
permission_required = ('parlamentares.add_parlamentar',) |
|
|
|
|
|
|
|
|
def get_success_url(self): |
|
|
def get_success_url(self): |
|
|
return reverse('sapl.parlamentares:parlamentar_list') |
|
|
return reverse('sapl.parlamentares:parlamentar_list') |
|
@ -1392,7 +1397,6 @@ class BlocoMembroCrud(MasterDetailCrud): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def get_sessoes_legislatura(request): |
|
|
def get_sessoes_legislatura(request): |
|
|
|
|
|
|
|
|
legislatura_id = request.GET['legislatura'] |
|
|
legislatura_id = request.GET['legislatura'] |
|
|
|
|
|
|
|
|
json_response = {'sessoes_legislativas': []} |
|
|
json_response = {'sessoes_legislativas': []} |
|
|