Browse Source

Fix #1862 (#1867)

pull/1894/head
Victor Fabre 7 years ago
committed by Edward Ribeiro
parent
commit
90237c2a79
  1. 31
      sapl/protocoloadm/forms.py
  2. 18
      sapl/protocoloadm/views.py

31
sapl/protocoloadm/forms.py

@ -308,6 +308,8 @@ class ProtocoloDocumentForm(ModelForm):
observacao = forms.CharField(required=False,
widget=forms.Textarea, label='Observação')
numero = forms.IntegerField(required=False, label='Número de Protocolo (opcional)')
class Meta:
model = Protocolo
fields = ['tipo_protocolo',
@ -316,6 +318,7 @@ class ProtocoloDocumentForm(ModelForm):
'assunto',
'interessado',
'observacao',
'numero'
]
def __init__(self, *args, **kwargs):
@ -331,6 +334,8 @@ class ProtocoloDocumentForm(ModelForm):
[('interessado', 12)])
row5 = to_row(
[('observacao', 12)])
row6 = to_row(
[('numero', 12)])
self.helper = FormHelper()
self.helper.layout = Layout(
@ -341,6 +346,11 @@ class ProtocoloDocumentForm(ModelForm):
row4,
row5,
HTML(" "),
),
Fieldset(_('Número do Protocolo (Apenas se quiser que a numeração comece '
'a partir do número a ser informado)'),
row6,
HTML(" "),
form_actions(label=_('Protocolar Documento'))
)
)
@ -385,6 +395,8 @@ class ProtocoloMateriaForm(ModelForm):
assunto_ementa = forms.CharField(required=True,
widget=forms.Textarea, label='Ementa')
numero = forms.IntegerField(required=False, label='Número de Protocolo (opcional)')
class Meta:
model = Protocolo
fields = ['tipo_materia',
@ -395,7 +407,8 @@ class ProtocoloMateriaForm(ModelForm):
'observacao',
'numero_materia',
'ano_materia',
'vincular_materia'
'vincular_materia',
'numero'
]
def clean_autor(self):
@ -447,12 +460,24 @@ class ProtocoloMateriaForm(ModelForm):
[('assunto_ementa', 12)])
row4 = to_row(
[('observacao', 12)])
row5 = to_row(
[('numero', 12)])
self.helper = FormHelper()
self.helper.layout = Layout(
Fieldset(_('Identificação da Matéria'),
row1, row2, row3,
row4, form_actions(label='Protocolar Matéria')))
row1,
row2,
row3,
row4,
HTML(" "),
),
Fieldset(_('Número do Protocolo (Apenas se quiser que a numeração comece'
' a partir do número a ser informado)'),
row5,
HTML(" "),
form_actions(label=_('Protocolar Matéria')))
)
super(ProtocoloMateriaForm, self).__init__(
*args, **kwargs)

18
sapl/protocoloadm/views.py

@ -304,7 +304,12 @@ class ProtocoloDocumentoView(PermissionRequiredMixin,
protocolo.tipo_processo = '0' # TODO validar o significado
protocolo.anulado = False
protocolo.numero = (numero['numero__max'] + 1) if numero['numero__max'] else 1
if not protocolo.numero:
protocolo.numero = (numero['numero__max'] + 1) if numero['numero__max'] else 1
if protocolo.numero < (numero['numero__max'] + 1):
msg = _('Número de protocolo deve ser maior que {}').format(numero['numero__max'])
messages.add_message(self.request, messages.ERROR, msg)
return self.render_to_response(self.get_context_data())
protocolo.ano = timezone.now().year
protocolo.data = timezone.now()
protocolo.hora = timezone.now().time()
@ -415,6 +420,7 @@ class ProtocoloMateriaView(PermissionRequiredMixin, CreateView):
'pk': protocolo.pk})
def form_valid(self, form):
protocolo = form.save(commit=False)
try:
numeracao = sapl.base.models.AppConfig.objects.last(
).sequencia_numeracao
@ -443,10 +449,12 @@ class ProtocoloMateriaView(PermissionRequiredMixin, CreateView):
if numeracao is None:
numero['numero__max'] = 0
protocolo = Protocolo()
protocolo.numero = (
numero['numero__max'] + 1) if numero['numero__max'] else 1
if not protocolo.numero:
protocolo.numero = (numero['numero__max'] + 1) if numero['numero__max'] else 1
if protocolo.numero < (numero['numero__max'] + 1):
msg = _('Número de protocolo deve ser maior que {}').format(numero['numero__max'])
messages.add_message(self.request, messages.ERROR, msg)
return self.render_to_response(self.get_context_data())
protocolo.ano = timezone.now().year
protocolo.data = timezone.now().date()
protocolo.hora = timezone.now().time()

Loading…
Cancel
Save