Browse Source

Merge branch 'master' of github.com:interlegis/sapl

pull/821/head
Eduardo Calil 8 years ago
parent
commit
032504b93d
  1. 1
      sapl/materia/models.py
  2. 33
      sapl/sessao/forms.py
  3. 9
      sapl/templates/protocoloadm/protocolo_filter.html

1
sapl/materia/models.py

@ -651,6 +651,7 @@ class StatusTramitacao(models.Model):
class Meta: class Meta:
verbose_name = _('Status de Tramitação') verbose_name = _('Status de Tramitação')
verbose_name_plural = _('Status de Tramitação') verbose_name_plural = _('Status de Tramitação')
ordering = ['descricao']
def __str__(self): def __str__(self):
return _('%(descricao)s') % { return _('%(descricao)s') % {

33
sapl/sessao/forms.py

@ -79,11 +79,26 @@ class ExpedienteMateriaForm(ModelForm):
fields = ['data_ordem', 'numero_ordem', 'tipo_materia', 'observacao', fields = ['data_ordem', 'numero_ordem', 'tipo_materia', 'observacao',
'numero_materia', 'ano_materia', 'tipo_votacao'] 'numero_materia', 'ano_materia', 'tipo_votacao']
def clean_numero_ordem(self):
sessao = self.instance.sessao_plenaria
ex = ExpedienteMateria.objects.filter(
sessao_plenaria=sessao,
numero_ordem=self.cleaned_data['numero_ordem']).count()
if ex >= 1:
msg = _('Esse número de ordem já existe.')
raise ValidationError(msg)
return self.cleaned_data['numero_ordem']
def clean_data_ordem(self): def clean_data_ordem(self):
return datetime.now() return datetime.now()
def clean(self): def clean(self):
cleaned_data = self.cleaned_data cleaned_data = self.cleaned_data
sessao = self.instance.sessao_plenaria
try: try:
materia = MateriaLegislativa.objects.get( materia = MateriaLegislativa.objects.get(
numero=self.cleaned_data['numero_materia'], numero=self.cleaned_data['numero_materia'],
@ -96,6 +111,14 @@ class ExpedienteMateriaForm(ModelForm):
else: else:
cleaned_data['materia'] = materia cleaned_data['materia'] = materia
ex = ExpedienteMateria.objects.filter(
sessao_plenaria=sessao,
materia=materia).count()
if ex >= 1:
msg = _('Essa matéria já foi cadastrada.')
raise ValidationError(msg)
return cleaned_data return cleaned_data
def save(self, commit=False): def save(self, commit=False):
@ -117,6 +140,8 @@ class OrdemDiaForm(ExpedienteMateriaForm):
def clean(self): def clean(self):
cleaned_data = self.cleaned_data cleaned_data = self.cleaned_data
sessao = self.instance.sessao_plenaria
try: try:
materia = MateriaLegislativa.objects.get( materia = MateriaLegislativa.objects.get(
numero=self.cleaned_data['numero_materia'], numero=self.cleaned_data['numero_materia'],
@ -129,6 +154,14 @@ class OrdemDiaForm(ExpedienteMateriaForm):
else: else:
cleaned_data['materia'] = materia cleaned_data['materia'] = materia
ex = ExpedienteMateria.objects.filter(
sessao_plenaria=sessao,
materia=materia).count()
if ex >= 1:
msg = _('Essa matéria já foi cadastrada.')
raise ValidationError(msg)
return cleaned_data return cleaned_data
def save(self, commit=False): def save(self, commit=False):

9
sapl/templates/protocoloadm/protocolo_filter.html

@ -39,14 +39,19 @@
<td> <td>
<strong>Protocolo: <strong>Protocolo:
<a href="{% url 'protocoloadm:protocolo_mostrar' p.pk %}">{{ p.numero|stringformat:'06d' }}/{{ p.ano }}</a></strong>&nbsp;&nbsp;<strong>-</strong>&nbsp;&nbsp; <a href="{% url 'protocoloadm:protocolo_mostrar' p.pk %}">{{ p.numero|stringformat:'06d' }}/{{ p.ano }}</a></strong>&nbsp;&nbsp;<strong>-</strong>&nbsp;&nbsp;
<a href="{% url 'relatorios:relatorio_etiqueta_protocolo' p.numero p.ano %}"><img src="{% static 'img/etiqueta.png' %}" alt="Etiqueta Individual"></a></br> <a href="{% url 'relatorios:relatorio_etiqueta_protocolo' p.numero p.ano %}"><img src="{% static 'img/etiqueta.png' %}" alt="Etiqueta Individual"></a>
{% if p.anulado %}<strong><font color="red">&nbsp;&nbsp;** NULO **</font></strong>{% endif %}
</br>
<strong>Assunto:</strong> {{ p.assunto_ementa|default_if_none:"Não Informado"}}</br> <strong>Assunto:</strong> {{ p.assunto_ementa|default_if_none:"Não Informado"}}</br>
<strong>Data Protocolo:</strong> {{ p.data|date:"d/m/Y"|default_if_none:"Não Informado" }} - Horário: {{ p.hora|date:"G:i:s" }}</br> <strong>Data Protocolo:</strong> {{ p.data|date:"d/m/Y"|default_if_none:"Não Informado" }} - Horário: {{ p.hora|date:"G:i:s" }}</br>
<strong>Interessado:</strong> {{ p.interessado }}</br> <strong>Interessado:</strong> {{ p.interessado }}</br>
<strong>Natureza do Processo:</strong> <strong>Natureza do Processo:</strong>
{% if p.tipo_processo == 0 %} Administrativo {% elif p.tipo_processo == 1 %} Matéria Legislativa {% endif %}</br> {% if p.tipo_processo == 0 %} Administrativo {% elif p.tipo_processo == 1 %} Matéria Legislativa {% endif %}</br>
<strong>Classificação:</strong> {{ p.tipo_documento|default_if_none:p.tipo_materia }} </br> <strong>Classificação:</strong> {{ p.tipo_documento|default_if_none:p.tipo_materia }} </br>
<strong>Anulado: {% if p.anulado %} <font color="red"> Sim {% else %} <font color="green"> Não {% endif %} </font></strong> {% if p.anulado %}
<strong>Anulado por: </strong>{{ p.user_anulacao }} - IP {{ p.ip_anulacao }}</br>
<strong>Motivo Anulação: </strong>{{ p.justificativa_anulacao }}</br>
{% endif %}
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}

Loading…
Cancel
Save