Browse Source

Finaliza a funcionalidade e o layout da Pesquisa de Protocolo

pull/339/head
Eduardo Calil 9 years ago
parent
commit
91c913774d
  1. 114
      protocoloadm/forms.py
  2. 12
      templates/protocoloadm/protocolo_filter.html

114
protocoloadm/forms.py

@ -67,6 +67,8 @@ class ProtocoloFilterSet(django_filters.FilterSet):
interessado = django_filters.CharFilter(lookup_expr='icontains') interessado = django_filters.CharFilter(lookup_expr='icontains')
autor = django_filters.CharFilter(widget=forms.HiddenInput())
class Meta: class Meta:
model = Protocolo model = Protocolo
fields = ['tipo_protocolo', fields = ['tipo_protocolo',
@ -74,7 +76,6 @@ class ProtocoloFilterSet(django_filters.FilterSet):
'tipo_documento', 'tipo_documento',
'data', 'data',
'tipo_materia', 'tipo_materia',
'autor'
] ]
order_by = ( order_by = (
@ -83,62 +84,63 @@ class ProtocoloFilterSet(django_filters.FilterSet):
('DEC', 'Ordem Decrescente'), ('DEC', 'Ordem Decrescente'),
) )
order_by_mapping = { order_by_mapping = {
'': [], '': [],
'CRE': ['ano', 'numero'], 'CRE': ['ano', 'numero'],
'DEC': ['-ano', '-numero'], 'DEC': ['-ano', '-numero'],
} }
def get_order_by(self, order_value):
if order_value in self.order_by_mapping:
return self.order_by_mapping[order_value]
else:
return super(ProtocoloFilterSet,
self).get_order_by(order_value)
def __init__(self, *args, **kwargs):
super(ProtocoloFilterSet, self).__init__(*args, **kwargs)
self.filters['autor'].label = 'Tipo de Matéria'
self.filters['assunto_ementa'].label = 'Assunto'
row1 = crispy_layout_mixin.to_row(
[('numero', 6),
('ano', 6)])
def get_order_by(self, order_value): row2 = crispy_layout_mixin.to_row(
if order_value in self.order_by_mapping: [('data', 12)])
return self.order_by_mapping[order_value]
else: row3 = crispy_layout_mixin.to_row(
return super(ProtocoloFilterSet, [('tipo_documento', 4),
self).get_order_by(order_value) ('tipo_protocolo', 4),
('tipo_materia', 4)])
def __init__(self, *args, **kwargs):
super(ProtocoloFilterSet, self).__init__(*args, **kwargs) row4 = crispy_layout_mixin.to_row(
[('interessado', 6),
self.filters['autor'].label = 'Tipo de Matéria' ('assunto_ementa', 6)])
self.filters['assunto_ementa'].label = 'Assunto'
row5 = crispy_layout_mixin.to_row(
row1 = crispy_layout_mixin.to_row( [('autor', 0),
[('numero', 6), (Button('pesquisar',
('ano', 6)]) 'Pesquisar Autor',
css_class='btn btn-primary btn-sm'), 2),
row2 = crispy_layout_mixin.to_row( (Button('limpar',
[('data', 12)]) 'Limpar Autor',
css_class='btn btn-primary btn-sm'), 10)])
row3 = crispy_layout_mixin.to_row( row6 = crispy_layout_mixin.to_row(
[('tipo_documento', 4), [('o', 12)])
('tipo_protocolo', 4),
('tipo_materia', 4)]) self.form.helper = FormHelper()
self.form.helper.form_method = 'GET'
row4 = crispy_layout_mixin.to_row( self.form.helper.layout = Layout(
[('interessado', 6), Fieldset(_('Pesquisar Protocolo'),
('assunto_ementa', 6)]) row1, row2,
row3, row4,
row5 = crispy_layout_mixin.to_row( HTML(sapl.utils.autor_label),
[('autor', 0), HTML(sapl.utils.autor_modal),
(Button('pesquisar', row5, row6,
'Pesquisar Autor', form_actions(save_label='Pesquisar'))
css_class='btn btn-primary btn-sm'), 2), )
(Button('limpar',
'Limpar Autor',
css_class='btn btn-primary btn-sm'), 10)])
row6 = crispy_layout_mixin.to_row(
[('o', 12)])
self.form.helper = FormHelper()
self.form.helper.form_method = 'GET'
self.form.helper.layout = Layout(Fieldset(_(
'Pesquisar Protocolo'),
row1, row2,
row3, row4,
HTML(sapl.utils.autor_label),
HTML(sapl.utils.autor_modal),
row5, row6,
form_actions(save_label='Pesquisar')))
class AnularProcoloAdmForm(ModelForm): class AnularProcoloAdmForm(ModelForm):

12
templates/protocoloadm/protocolo_filter.html

@ -19,7 +19,11 @@
</thead> </thead>
{% if page_obj|length %} {% if page_obj|length %}
{% if filter_url %} {% if filter_url %}
<h3>Pesquisa concluída com sucesso! Foram encontrados {{numero_res}} protocolos.</h3> {% if numero_res > 1 %}
<h3>Pesquisa concluída com sucesso! Foram encontrados {{numero_res}} protocolos.</h3>
{% elif numero_res == 1 %}
<h3>Pesquisa concluída com sucesso! Foi encontrado {{numero_res}} protocolo.</h3>
{% endif %}
{% endif %} {% endif %}
{% for p in page_obj %} {% for p in page_obj %}
<tr> <tr>
@ -34,9 +38,9 @@
<img src="{% static 'img/etiqueta.png' %}" alt="Etiqueta Individual"> <img src="{% static 'img/etiqueta.png' %}" alt="Etiqueta Individual">
</a></br> </a></br>
<strong>Assunto:</strong> {{ p.assunto_ementa }}</br> <strong>Assunto:</strong> {{ p.assunto_ementa|default_if_none:"Não Informado"}}</br>
<strong>Data Protocolo:</strong> {{ p.data|date:"d/m/Y" }} - Horário: {{ p.timestamp|date:"H:m:s" }}</br> <strong>Data Protocolo:</strong> {{ p.data|date:"d/m/Y"|default_if_none:"Não Informado" }} - Horário: {{ p.timestamp|date:"H:m:s" }}</br>
<strong>Interessado:</strong> {{ p.interessado }}</br> <strong>Interessado:</strong> {{ p.interessado }}</br>
@ -47,7 +51,7 @@
Matéria Legislativa Matéria Legislativa
{% endif %}</br> {% endif %}</br>
<strong>Classificação:</strong> {{ p.tipo_documento }} </br> <strong>Classificação:</strong> {{ p.tipo_documento|default_if_none:"Não Informado" }} </br>
<p></p> <p></p>
</td> </td>
</tr> </tr>

Loading…
Cancel
Save