Browse Source

Fixes #1223

pull/1227/head
Edward Ribeiro 9 years ago
parent
commit
a24975e999
  1. 1
      sapl/base/forms.py
  2. 20
      sapl/base/migrations/0004_appconfig_num_inicial_sequencia.py
  3. 6
      sapl/base/models.py
  4. 19
      sapl/protocoloadm/views.py
  5. 2
      sapl/templates/base/layouts.yaml

1
sapl/base/forms.py

@ -697,6 +697,7 @@ class ConfiguracoesAppForm(ModelForm):
model = AppConfig model = AppConfig
fields = ['documentos_administrativos', fields = ['documentos_administrativos',
'sequencia_numeracao', 'sequencia_numeracao',
'num_inicial_sequencia',
'painel_aberto', 'painel_aberto',
'texto_articulado_proposicao', 'texto_articulado_proposicao',
'texto_articulado_materia', 'texto_articulado_materia',

20
sapl/base/migrations/0004_appconfig_num_inicial_sequencia.py

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.11 on 2017-06-22 16:28
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('base', '0003_auto_20170519_1106'),
]
operations = [
migrations.AddField(
model_name='appconfig',
name='num_inicial_sequencia',
field=models.PositiveIntegerField(blank=True, default=0, null=True, verbose_name='Número inicial Sequência'),
),
]

6
sapl/base/models.py

@ -119,6 +119,12 @@ class AppConfig(models.Model):
verbose_name=_('Sequência de numeração'), verbose_name=_('Sequência de numeração'),
choices=SEQUENCIA_NUMERACAO, default='A') choices=SEQUENCIA_NUMERACAO, default='A')
num_inicial_sequencia = models.PositiveIntegerField(
verbose_name=_('Número inicial Sequência'),
blank=True,
null=True,
default=0)
painel_aberto = models.BooleanField( painel_aberto = models.BooleanField(
verbose_name=_('Painel aberto para usuário anônimo'), verbose_name=_('Painel aberto para usuário anônimo'),
choices=YES_NO_CHOICES, default=False) choices=YES_NO_CHOICES, default=False)

19
sapl/protocoloadm/views.py

@ -267,10 +267,9 @@ class ProtocoloDocumentoView(PermissionRequiredMixin,
def form_valid(self, form): def form_valid(self, form):
f = form.save(commit=False) f = form.save(commit=False)
app_config = sapl.base.models.AppConfig.objects.last()
try: try:
numeracao = sapl.base.models.AppConfig.objects.last( numeracao = app_config.sequencia_numeracao
).sequencia_numeracao
except AttributeError: except AttributeError:
msg = _('É preciso definir a sequencia de ' + msg = _('É preciso definir a sequencia de ' +
'numeração na tabelas auxiliares!') 'numeração na tabelas auxiliares!')
@ -283,9 +282,21 @@ class ProtocoloDocumentoView(PermissionRequiredMixin,
elif numeracao == 'U': elif numeracao == 'U':
numero = Protocolo.objects.all().aggregate(Max('numero')) numero = Protocolo.objects.all().aggregate(Max('numero'))
# inicializa numeracao a partir de determinado valor
num_inicial = app_config.num_inicial_sequencia
if not num_inicial or num_inicial < 0:
num_inicial = 0
f.tipo_processo = '0' # TODO validar o significado f.tipo_processo = '0' # TODO validar o significado
f.anulado = False f.anulado = False
f.numero = (numero['numero__max'] + 1) if numero['numero__max'] else 1
if numero['numero__max']:
f.numero = (numero['numero__max'] + 1)
elif num_inicial > 0:
f.numero = num_inicial
else:
f.numero = 1
f.ano = datetime.now().year f.ano = datetime.now().year
f.data = datetime.now().date() f.data = datetime.now().date()
f.hora = datetime.now().time() f.hora = datetime.now().time()

2
sapl/templates/base/layouts.yaml

@ -15,7 +15,7 @@ AppConfig:
- documentos_administrativos painel_aberto - documentos_administrativos painel_aberto
{% trans 'Proposições e Protocolo' %}: {% trans 'Proposições e Protocolo' %}:
- sequencia_numeracao proposicao_incorporacao_obrigatoria - sequencia_numeracao num_inicial_sequencia proposicao_incorporacao_obrigatoria
{% trans 'Textos Articulados' %}: {% trans 'Textos Articulados' %}:
- texto_articulado_proposicao texto_articulado_materia texto_articulado_norma - texto_articulado_proposicao texto_articulado_materia texto_articulado_norma

Loading…
Cancel
Save