Browse Source

Adiciona correções

pull/3019/head
João Rodrigues 6 years ago
parent
commit
405a068397
  1. 22
      sapl/base/views.py
  2. 29
      sapl/protocoloadm/views.py

22
sapl/base/views.py

@ -2054,9 +2054,9 @@ class AppConfigCrud(CrudAux):
if numeracao_nova != numeracao_antiga: if numeracao_nova != numeracao_antiga:
if numeracao == 'A': if numeracao == 'A':
numeros = Protocolo.objects.filter( numero_max = Protocolo.objects.filter(
ano=timezone.now().year ano=timezone.now().year
) ).aggregate(Max('numero'))['numero__max']
elif numeracao == 'L': elif numeracao == 'L':
legislatura = Legislatura.objects.filter( legislatura = Legislatura.objects.filter(
data_inicio__year__lte=timezone.now().year, data_inicio__year__lte=timezone.now().year,
@ -2066,17 +2066,19 @@ class AppConfigCrud(CrudAux):
data_inicio = legislatura.data_inicio data_inicio = legislatura.data_inicio
data_fim = legislatura.data_fim data_fim = legislatura.data_fim
numeros = Protocolo.objects.filter( numero_max = Protocolo.objects.filter(
data__gte=data_inicio, data__gte=data_inicio, data_lte=data_fim
data_lte=data_fim ).aggregate(Max('numero'))['numero__max']
)
elif numeracao == 'U': elif numeracao == 'U':
numeros = Protocolo.objects.all() numero_max = Protocolo.objects.all().aggregate(
Max('numero')
)['numero__max']
if numeros: ultimo_numero_cadastrado = int(numero_max) if numero_max else 0
if numeracao_nova <= ultimo_numero_cadastrado and numeracao != 'U':
msg = "O novo início da numeração de protocolo entrará em vigor na " \ msg = "O novo início da numeração de protocolo entrará em vigor na " \
"próxima sequência, pois já existem protocolos cadastrados na " \ "próxima sequência, pois já existe protocolo cadastrado com " \
"atual." "número superior ou igual ao número inicial definido."
messages.warning(self.request, msg) messages.warning(self.request, msg)
return super().form_valid(form) return super().form_valid(form)

29
sapl/protocoloadm/views.py

@ -613,12 +613,14 @@ class ProtocoloDocumentoView(PermissionRequiredMixin,
return self.render_to_response(self.get_context_data()) return self.render_to_response(self.get_context_data())
if numeracao == 'A': if numeracao == 'A':
numero = Protocolo.objects.filter( numero_max = Protocolo.objects.filter(ano=timezone.now().year).aggregate(
ano=timezone.now().year).aggregate(Max('numero')) Max('numero')
)['numero__max']
elif numeracao == 'L': elif numeracao == 'L':
legislatura = Legislatura.objects.filter( legislatura = Legislatura.objects.filter(
data_inicio__year__lte=timezone.now().year, data_inicio__year__lte=timezone.now().year,
data_fim__year__gte=timezone.now().year).first() data_fim__year__gte=timezone.now().year
).first()
data_inicio = legislatura.data_inicio data_inicio = legislatura.data_inicio
data_fim = legislatura.data_fim data_fim = legislatura.data_fim
@ -638,14 +640,15 @@ class ProtocoloDocumentoView(PermissionRequiredMixin,
timestamp_data_hora_manual__lte=data_fim_utc,)).\ timestamp_data_hora_manual__lte=data_fim_utc,)).\
aggregate(Max('numero')) aggregate(Max('numero'))
elif numeracao == 'U': elif numeracao == 'U':
numero = Protocolo.objects.all().aggregate(Max('numero')) numero_max = Protocolo.objects.all().aggregate(Max('numero'))['numero__max']
protocolo.tipo_processo = '0' # TODO validar o significado protocolo.tipo_processo = '0' # TODO validar o significado
protocolo.anulado = False protocolo.anulado = False
inicio_numeracao = AppConfig.objects.all()[0].inicio_numeracao_protocolo inicio_numeracao = AppConfig.objects.first().inicio_numeracao_protocolo
numero = int(numero_max) if numero_max else 0
protocolo.numero = ( protocolo.numero = (
(numero['numero__max'] + 1 ) if numero['numero__max'] else inicio_numeracao (numero + 1 ) if numero and numero >= inicio_numeracao else inicio_numeracao
) )
protocolo.ano = timezone.now().year protocolo.ano = timezone.now().year
@ -821,12 +824,15 @@ class ProtocoloMateriaView(PermissionRequiredMixin, CreateView):
return self.render_to_response(self.get_context_data()) return self.render_to_response(self.get_context_data())
if numeracao == 'A': if numeracao == 'A':
numero = Protocolo.objects.filter( numero_max = Protocolo.objects.filter(ano=timezone.now().year).aggregate(
ano=timezone.now().year).aggregate(Max('numero')) Max('numero')
)['numero__max']
elif numeracao == 'L': elif numeracao == 'L':
legislatura = Legislatura.objects.filter( legislatura = Legislatura.objects.filter(
data_inicio__year__lte=timezone.now().year, data_inicio__year__lte=timezone.now().year,
data_fim__year__gte=timezone.now().year).first() data_fim__year__gte=timezone.now().year
).first()
data_inicio = legislatura.data_inicio data_inicio = legislatura.data_inicio
data_fim = legislatura.data_fim data_fim = legislatura.data_fim
@ -846,11 +852,12 @@ class ProtocoloMateriaView(PermissionRequiredMixin, CreateView):
aggregate(Max('numero')) aggregate(Max('numero'))
elif numeracao == 'U': elif numeracao == 'U':
numero = Protocolo.objects.all().aggregate(Max('numero')) numero_max = Protocolo.objects.all().aggregate(Max('numero'))['numero__max']
inicio_numeracao = AppConfig.objects.first().inicio_numeracao_protocolo inicio_numeracao = AppConfig.objects.first().inicio_numeracao_protocolo
numero = int(numero_max) if numero_max else 0
protocolo.numero = ( protocolo.numero = (
(numero['numero__max'] + 1 ) if numero['numero__max'] else inicio_numeracao (numero + 1 ) if numero and numero >= inicio_numeracao else inicio_numeracao
) )
protocolo.ano = timezone.now().year protocolo.ano = timezone.now().year

Loading…
Cancel
Save