Browse Source

Fix #2459 - Proposições sem código após mudar a configuração (#2464)

* fix #2459

* fix #2459

* fix #2459
pull/2465/head
Cesar Augusto de Carvalho 6 years ago
committed by Edward
parent
commit
d84c8aae0d
  1. 24
      sapl/base/views.py
  2. 2
      sapl/templates/materia/prop_pendentes_list.html

24
sapl/base/views.py

@ -32,12 +32,12 @@ from sapl.base.forms import AutorForm, AutorFormForAdmin, TipoAutorForm
from sapl.base.models import Autor, TipoAutor from sapl.base.models import Autor, TipoAutor
from sapl.comissoes.models import Reuniao, Comissao from sapl.comissoes.models import Reuniao, Comissao
from sapl.crud.base import CrudAux, make_pagination from sapl.crud.base import CrudAux, make_pagination
from sapl.materia.models import (Autoria, MateriaLegislativa, from sapl.materia.models import (Autoria, MateriaLegislativa, Proposicao,
TipoMateriaLegislativa, StatusTramitacao, UnidadeTramitacao) TipoMateriaLegislativa, StatusTramitacao, UnidadeTramitacao)
from sapl.norma.models import (NormaJuridica, NormaEstatisticas) from sapl.norma.models import (NormaJuridica, NormaEstatisticas)
from sapl.sessao.models import (PresencaOrdemDia, SessaoPlenaria, from sapl.sessao.models import (PresencaOrdemDia, SessaoPlenaria,
SessaoPlenariaPresenca) SessaoPlenariaPresenca)
from sapl.utils import (parlamentares_ativos, from sapl.utils import (parlamentares_ativos, gerar_hash_arquivo, SEPARADOR_HASH_PROPOSICAO,
show_results_filter_set, mail_service_configured) show_results_filter_set, mail_service_configured)
from .forms import (AlterarSenhaForm, CasaLegislativaForm, from .forms import (AlterarSenhaForm, CasaLegislativaForm,
@ -1078,10 +1078,28 @@ class AppConfigCrud(CrudAux):
class BaseMixin(CrudAux.BaseMixin): class BaseMixin(CrudAux.BaseMixin):
form_class = ConfiguracoesAppForm form_class = ConfiguracoesAppForm
list_url = '' list_url = ''
create_url = '' create_url = ''
def form_valid(self, form):
recibo_prop_atual = AppConfig.objects.last().receber_recibo_proposicao
recibo_prop_novo = self.request.POST['receber_recibo_proposicao']
if recibo_prop_novo == 'False' and recibo_prop_atual:
props = Proposicao.objects.filter(hash_code='')
for prop in props:
self.gerar_hash(prop)
return super().form_valid(form)
def gerar_hash(self, inst):
inst.save()
if inst.texto_original:
inst.hash_code = gerar_hash_arquivo(
inst.texto_original.path, str(inst.pk))
elif inst.texto_articulado.exists():
ta = inst.texto_articulado.first()
inst.hash_code = 'P' + ta.hash() + SEPARADOR_HASH_PROPOSICAO + str(inst.pk)
inst.save()
class CreateView(CrudAux.CreateView): class CreateView(CrudAux.CreateView):
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):

2
sapl/templates/materia/prop_pendentes_list.html

@ -57,7 +57,7 @@
<td>{{ prop.autor }}</td> <td>{{ prop.autor }}</td>
<td> <td>
{% if not AppConfig.receber_recibo_proposicao %} {% if not AppConfig.receber_recibo_proposicao %}
{%if prop.hash_code %} {% if prop.hash_code %}
<a href="{% url 'sapl.materia:proposicao-confirmar' prop.hash_code|strip_hash prop.pk %}">{{ prop.hash_code }}</a> <a href="{% url 'sapl.materia:proposicao-confirmar' prop.hash_code|strip_hash prop.pk %}">{{ prop.hash_code }}</a>
{% else %} {% else %}
{{ prop.hash_code }} {{ prop.hash_code }}

Loading…
Cancel
Save