Browse Source

Faz validacao na unidade local da nova tramitacao

pull/481/head
Eduardo Calil 10 years ago
parent
commit
48babe730c
  1. 4
      parlamentares/forms.py
  2. 1
      parlamentares/views.py
  3. 22
      protocoloadm/forms.py
  4. 3
      protocoloadm/views.py

4
parlamentares/forms.py

@ -10,8 +10,8 @@ from floppyforms.widgets import ClearableFileInput
import sapl
from sapl.utils import intervalos_tem_intersecao
from .models import (ComposicaoColigacao, Filiacao, Legislatura,
Mandato, Parlamentar)
from .models import (ComposicaoColigacao, Filiacao, Legislatura, Mandato,
Parlamentar)
class ImageThumbnailFileInput(ClearableFileInput):

1
parlamentares/views.py

@ -12,7 +12,6 @@ from crud.masterdetail import MasterDetailCrud
from .forms import (ComposicaoColigacaoForm, FiliacaoForm, LegislaturaForm,
ParlamentarCreateForm, ParlamentarForm)
from .models import (CargoMesa, Coligacao, ComposicaoColigacao, ComposicaoMesa,
Dependente, Filiacao, Legislatura, Mandato,
NivelInstrucao, Parlamentar, Partido, SessaoLegislativa,

22
protocoloadm/forms.py

@ -5,6 +5,7 @@ from crispy_forms.layout import HTML, Button, Fieldset, Layout, Submit
from django import forms
from django.core.exceptions import ObjectDoesNotExist, ValidationError
from django.db import models
from django.db.models import Max
from django.forms import ModelForm
from django.utils.translation import ugettext_lazy as _
@ -541,15 +542,20 @@ class TramitacaoAdmForm(ModelForm):
msg = _('Você deixou campos obrigatórios em branco!')
raise ValidationError(msg)
# ultima_tramitacao = TramitacaoAdministrativo.objects.filter(
# documento_id=self.instance.documento.id).last()
ultima_data_tram = TramitacaoAdministrativo.objects.filter(
documento_id=5).aggregate(Max('data_tramitacao'))
data = ultima_data_tram.get('data_encaminhamento__max')
# if ultima_tramitacao:
# destino = ultima_tramitacao.unidade_tramitacao_destino
# if (destino != self.cleaned_data['unidade_tramitacao_local']):
# msg = _('A origem da nova tramitação deve ser igual ao '
# 'destino da última adicionada!')
# raise ValidationError(msg)
ultima_tramitacao = TramitacaoAdministrativo.objects.filter(
documento_id=5, data_encaminhamento=data).order_by(
'data_encaminhamento').first()
if ultima_tramitacao:
destino = ultima_tramitacao.unidade_tramitacao_destino
if (destino != self.cleaned_data['unidade_tramitacao_local']):
msg = _('A origem da nova tramitação deve ser igual ao '
'destino da última adicionada!')
raise ValidationError(msg)
return self.cleaned_data

3
protocoloadm/views.py

@ -1,6 +1,4 @@
import json
import crud.base
from datetime import date, datetime
from braces.views import FormValidMessageMixin
@ -14,6 +12,7 @@ from django.views.generic import CreateView, DetailView, FormView, ListView
from django.views.generic.base import TemplateView
from django_filters.views import FilterView
import crud.base
from crud.base import Crud, make_pagination
from crud.masterdetail import MasterDetailCrud
from materia.models import Proposicao, TipoMateriaLegislativa

Loading…
Cancel
Save