Browse Source

Usa crud em matéria

pull/306/head
Eduardo Edson Batista Cordeiro Alves 9 years ago
parent
commit
046699e551
  1. 136
      materia/forms.py
  2. 6
      materia/layouts.yaml
  3. 7
      materia/urls.py
  4. 18
      materia/views.py
  5. 12
      templates/materia/materialegislativa_list.html

136
materia/forms.py

@ -401,142 +401,6 @@ class MateriaAnexadaForm(ModelForm):
*args, **kwargs) *args, **kwargs)
class FormularioSimplificadoForm(ModelForm):
class Meta:
model = MateriaLegislativa
fields = ['tipo',
'numero',
'ano',
'data_apresentacao',
'numero_protocolo',
'regime_tramitacao',
'em_tramitacao',
'ementa',
'texto_original']
exclude = ['anexadas']
widgets = {
'data_apresentacao': forms.DateInput(attrs={'class': 'dateinput'}),
}
def clean_texto_original(self):
texto_original = self.cleaned_data.get('texto_original', False)
if texto_original:
if texto_original.size > MAX_DOC_UPLOAD_SIZE:
raise ValidationError("Arquivo muito grande. ( > 5mb )")
return texto_original
else:
raise ValidationError("Não foi possível salvar o arquivo.")
def __init__(self, *args, **kwargs):
row1 = crispy_layout_mixin.to_row(
[('tipo', 4),
('numero', 4),
('ano', 4)])
row2 = crispy_layout_mixin.to_row(
[('data_apresentacao', 4),
('numero_protocolo', 4),
('regime_tramitacao', 4)])
row3 = crispy_layout_mixin.to_row(
[('texto_original', 9),
('em_tramitacao', 3)])
row4 = crispy_layout_mixin.to_row(
[('ementa', 12)])
self.helper = FormHelper()
self.helper.layout = Layout(
Fieldset(
_('Formulário Simplificado'),
Fieldset(
_('Identificação Básica'),
row1, row2, row3, row4
),
form_actions()
)
)
super(FormularioSimplificadoForm, self).__init__(*args, **kwargs)
class FormularioCadastroForm(ModelForm):
class Meta:
model = MateriaLegislativa
fields = ['tipo',
'numero',
'ano',
'data_apresentacao',
'numero_protocolo',
'tipo_apresentacao',
'texto_original',
'apelido',
'dias_prazo',
'polemica',
'objeto',
'regime_tramitacao',
'em_tramitacao',
'data_fim_prazo',
'data_publicacao',
'complementar',
'tipo_origem_externa',
'numero_origem_externa',
'ano_origem_externa',
'local_origem_externa',
'data_origem_externa',
'ementa',
'indexacao',
'observacao']
def __init__(self, *args, **kwargs):
self.helper = FormHelper()
self.helper.layout = Layout(
Fieldset(
_('Formulário de Cadastro'),
Fieldset(
_('Identificação Básica'),
'tipo',
'numero',
'ano',
'data_apresentacao',
'numero_protocolo',
'tipo_apresentacao',
'texto_original'
),
Fieldset(
_('Outras Informações'),
'apelido',
'dias_prazo',
'polemica',
'objeto',
'regime_tramitacao',
'em_tramitacao',
'data_fim_prazo',
'data_publicacao',
'complementar'
),
Fieldset(
_('Origem Externa'),
'tipo_origem_externa',
'numero_origem_externa',
'ano_origem_externa',
'local_origem_externa',
'data_origem_externa'
),
Fieldset(
_('Dados Textuais'),
'ementa',
'indexacao',
'observacao'
),
form_actions()
)
)
super(FormularioCadastroForm, self).__init__(*args, **kwargs)
class AutoriaForm(ModelForm): class AutoriaForm(ModelForm):
autor = forms.ModelChoiceField( autor = forms.ModelChoiceField(
label=_('Autor'), label=_('Autor'),

6
materia/layouts.yaml

@ -36,6 +36,12 @@ MateriaLegislativa:
- indexacao - indexacao
- observacao - observacao
MateriaLegislativaSimplificado:
Identificação Básica:
- tipo numero ano
- data_apresentacao numero_protocolo tipo_apresentacao
- texto_original
Anexada: Anexada:
Matéria Legislativa: Matéria Legislativa:
- tip_id_basica_FIXME num_ident_basica_FIXME ano_ident_basica_FIXME - tip_id_basica_FIXME num_ident_basica_FIXME ano_ident_basica_FIXME

7
materia/urls.py

@ -6,7 +6,6 @@ from materia.views import (AcompanhamentoConfirmarView,
AutoriaEditView, AutoriaView, AutoriaEditView, AutoriaView,
DespachoInicialEditView, DespachoInicialView, DespachoInicialEditView, DespachoInicialView,
DocumentoAcessorioEditView, DocumentoAcessorioView, DocumentoAcessorioEditView, DocumentoAcessorioView,
FormularioCadastroView, FormularioSimplificadoView,
LegislacaoCitadaEditView, LegislacaoCitadaView, LegislacaoCitadaEditView, LegislacaoCitadaView,
MateriaAnexadaEditView, MateriaAnexadaView, MateriaAnexadaEditView, MateriaAnexadaView,
MateriaLegislativaCrud, MateriaLegislativaCrud,
@ -54,12 +53,6 @@ urlpatterns = [
url(r'^sistema/materia/status-tramitacao/', url(r'^sistema/materia/status-tramitacao/',
include(StatusTramitacaoCrud.get_urls())), include(StatusTramitacaoCrud.get_urls())),
url(r'^sistema/materia/orgao/', include(OrgaoCrud.get_urls())), url(r'^sistema/materia/orgao/', include(OrgaoCrud.get_urls())),
url(r'^materia/formulario-simplificado',
FormularioSimplificadoView.as_view(),
name='formulario_simplificado'),
url(r'^materia/formulario-cadastro',
FormularioCadastroView.as_view(),
name='formulario_cadastro'),
url(r'^materia/(?P<pk>\d+)/materia-anexada$', url(r'^materia/(?P<pk>\d+)/materia-anexada$',
MateriaAnexadaView.as_view(), name='materia_anexada'), MateriaAnexadaView.as_view(), name='materia_anexada'),
url(r'^materia/(?P<pk>\d+)/materia-anexada/(?P<id>\d+)/edit', url(r'^materia/(?P<pk>\d+)/materia-anexada/(?P<id>\d+)/edit',

18
materia/views.py

@ -13,6 +13,7 @@ from django.template import Context, loader
from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ugettext_lazy as _
from django.views.generic import CreateView, FormView, ListView, TemplateView from django.views.generic import CreateView, FormView, ListView, TemplateView
import crud.base
from base.models import CasaLegislativa from base.models import CasaLegislativa
from comissoes.models import Comissao, Composicao from comissoes.models import Comissao, Composicao
from compilacao.views import IntegracaoTaView from compilacao.views import IntegracaoTaView
@ -23,7 +24,6 @@ from sapl.utils import get_base_url
from .forms import (AcompanhamentoMateriaForm, AutoriaForm, from .forms import (AcompanhamentoMateriaForm, AutoriaForm,
DespachoInicialForm, DocumentoAcessorioForm, DespachoInicialForm, DocumentoAcessorioForm,
FormularioCadastroForm, FormularioSimplificadoForm,
LegislacaoCitadaForm, MateriaAnexadaForm, LegislacaoCitadaForm, MateriaAnexadaForm,
MateriaLegislativaPesquisaForm, NumeracaoForm, MateriaLegislativaPesquisaForm, NumeracaoForm,
ProposicaoForm, RelatoriaForm, TramitacaoForm) ProposicaoForm, RelatoriaForm, TramitacaoForm)
@ -56,16 +56,16 @@ UnidadeTramitacaoCrud = Crud.build(UnidadeTramitacao, 'unidade_tramitacao')
TramitacaoCrud = Crud.build(Tramitacao, '') TramitacaoCrud = Crud.build(Tramitacao, '')
class FormularioSimplificadoView(CreateView): # TODO qual url?
template_name = "materia/formulario_simplificado.html" class MateriaLegislativaSimplificadaCrud(Crud):
form_class = FormularioSimplificadoForm model = MateriaLegislativa
success_url = reverse_lazy('materia:materialegislativa_list') help_path = ''
class CreateView(crud.base.CrudCreateView):
class FormularioCadastroView(CreateView): @property
template_name = "materia/formulario_cadastro.html" def layout_key(self):
form_class = FormularioCadastroForm return 'MateriaLegislativaSimplificado'
success_url = reverse_lazy('materia:formulario_cadastro')
class MateriaAnexadaView(FormView): class MateriaAnexadaView(FormView):

12
templates/materia/materialegislativa_list.html

@ -1,12 +0,0 @@
{% extends "crud/list.html" %}
{% load i18n %}
{% block more_buttons %}
<a href="{% url 'materia:formulario_simplificado' %}" class="btn btn-default">
{% blocktrans with verbose_name=view.verbose_name %} Formulário Simplificado {% endblocktrans %}
</a>
<a href="{% url 'materia:pesquisar_materia' %}" class="btn btn-default">
{% blocktrans with verbose_name=view.verbose_name %} Pesquisar Matéria {% endblocktrans %}
</a>
{% endblock more_buttons %}
Loading…
Cancel
Save