Browse Source

Concertando questões relatados no PR

pull/2608/head
ulyssesBML 7 years ago
parent
commit
3ab866f71f
  1. 39
      sapl/base/forms.py
  2. 28
      sapl/parlamentares/views.py
  3. 25
      sapl/templates/parlamentares/partido_detail.html

39
sapl/base/forms.py

@ -1414,6 +1414,7 @@ class PartidoForm(FileFieldCheckMixin, ModelForm):
) )
def clean(self): def clean(self):
super(PartidoForm,self).clean()
cleaned_data = self.cleaned_data cleaned_data = self.cleaned_data
if not self.is_valid(): if not self.is_valid():
@ -1471,20 +1472,14 @@ class PartidoUpdateForm(PartidoForm):
) )
def clean(self): def clean(self):
super(PartidoUpdateForm,self).clean()
cleaned_data = self.cleaned_data cleaned_data = self.cleaned_data
is_historico = cleaned_data['historico'] == 'sim' is_historico = cleaned_data['historico'] == 'sim'
if not self.is_valid():
return cleaned_data
if cleaned_data['data_criacao'] and cleaned_data['data_extincao'] and cleaned_data['data_criacao'] > \
cleaned_data['data_extincao']:
raise ValidationError("Certifique-se de que a data de inicio seja anterior à data fim.")
if is_historico: if is_historico:
if cleaned_data['data_criacao'] == None or cleaned_data['data_extincao'] == None: if not cleaned_data['data_criacao'] or not cleaned_data['data_extincao']:
raise ValidationError("Certifique-se de que a data de inicio e fim de historico estão preenchidas") raise ValidationError("Certifique-se de que a data de inicio e fim de historico estão preenchidas")
if self.instance.pk: if self.instance.pk:
partido = Partido.objects.get(pk=self.instance.pk) partido = Partido.objects.get(pk=self.instance.pk)
@ -1498,6 +1493,28 @@ class PartidoUpdateForm(PartidoForm):
return cleaned_data return cleaned_data
def save(self,commit=False):
partido = self.instance
is_historico = self.cleaned_data['historico']
if is_historico == "nao":
partido.save(commit)
elif is_historico == "sim":
sigla = self.cleaned_data['sigla']
nome = self.cleaned_data['nome']
inicio_historico = self.cleaned_data['data_criacao']
fim_historico = self.cleaned_data['data_extincao']
logo_partido = self.cleaned_data['logo_partido']
historico_partido = HistoricoPartido(sigla=sigla,
nome=nome,
inicio_historico=inicio_historico,
fim_historico=fim_historico,
logo_partido=logo_partido,
partido=partido,
)
historico_partido.save()
return partido
class RelatorioHistoricoTramitacaoAdmFilterSet(django_filters.FilterSet): class RelatorioHistoricoTramitacaoAdmFilterSet(django_filters.FilterSet):
@property @property
@ -1534,6 +1551,4 @@ class RelatorioHistoricoTramitacaoAdmFilterSet(django_filters.FilterSet):
Fieldset(_(''), Fieldset(_(''),
row1, row2, row3, row1, row2, row3,
form_actions(label='Pesquisar')) form_actions(label='Pesquisar'))
) )

28
sapl/parlamentares/views.py

@ -5,7 +5,7 @@ import logging
from django.contrib import messages from django.contrib import messages
from django.contrib.auth.mixins import PermissionRequiredMixin from django.contrib.auth.mixins import PermissionRequiredMixin
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist, ValidationError from django.core.exceptions import MultipleObjectsReturned, ObjectDoesNotExist
from django.core.urlresolvers import reverse, reverse_lazy from django.core.urlresolvers import reverse, reverse_lazy
from django.db.models import F, Q from django.db.models import F, Q
from django.db.models.aggregates import Count from django.db.models.aggregates import Count
@ -76,32 +76,6 @@ class PartidoCrud(CrudAux):
layout_key = None layout_key = None
form_class = PartidoUpdateForm form_class = PartidoUpdateForm
def form_valid(self, form):
is_historico = form.cleaned_data['historico']
if is_historico == "nao":
super().form_valid(form)
elif is_historico == "sim":
sigla = form.cleaned_data['sigla']
nome = form.cleaned_data['nome']
inicio_historico = form.cleaned_data['data_criacao']
fim_historico = form.cleaned_data['data_extincao']
logo_partido = form.cleaned_data['logo_partido']
partido = partido = Partido.objects.get(pk=self.kwargs.get('pk'))
historico_partido = HistoricoPartido(sigla=sigla,
nome=nome,
inicio_historico=inicio_historico,
fim_historico=fim_historico,
logo_partido=logo_partido,
partido=partido,
)
historico_partido.save()
return HttpResponseRedirect(
reverse('sapl.parlamentares:partido_detail', kwargs={'pk': self.kwargs.get('pk')}))
class DetailView(CrudAux.DetailView): class DetailView(CrudAux.DetailView):
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):
context = super().get_context_data(kwargs=kwargs) context = super().get_context_data(kwargs=kwargs)

25
sapl/templates/parlamentares/partido_detail.html

@ -28,10 +28,33 @@
<td>{{ h.inicio_historico }}</td> <td>{{ h.inicio_historico }}</td>
<td>{{ h.fim_historico }}</td> <td>{{ h.fim_historico }}</td>
<td>{{ h }}</td> <td>{{ h }}</td>
<td><a href="{% url 'sapl.parlamentares:deleta_historico_partido' h.pk%}">X</a></td> <td><a data-toggle="modal" data-target="#confirmDelete{{h.pk}}">X</a></td>
</tr> </tr>
<!-- Modal -->
<div class="modal fade" id="confirmDelete{{h.pk}}" tabindex="-1" role="dialog" aria-labelledby="confirmDeleteLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="confirmDeleteLabel">Deletar</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
Tem certeza que deseja deletar esse Historico {{h}} ?
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
<a href="{% url 'sapl.parlamentares:deleta_historico_partido' h.pk%}" class="btn btn-primary">Sim, tenho certeza.</a>
</div>
</div>
</div>
</div>
{% endfor %} {% endfor %}
</tbody> </tbody>
</table> </table>
{% endblock table_content %} {% endblock table_content %}
Loading…
Cancel
Save