Repository: interlegis/sapl

Issue:
Migrar tabela tipo_numeracao_protocolo
A tabela tipo_numeracao_protocolo foi criada depois do `inspectdb` inicial.
Verificar se a funcionalidade foi implementada no sapl 3.1.
Avaliar se existe variação no conteúdo dessa tabela no diferentes bancos da hospedagem.
Migrar.


Discussion:

Resolving patch:
diff --git a/sapl/legacy/migration.py b/sapl/legacy/migration.py
--- a/sapl/legacy/migration.py
+++ b/sapl/legacy/migration.py
@@ -16,12 +16,14 @@
 from django.db.models import Count, Max
 from django.db.models.base import ModelBase
 
+from sapl.base.models import AppConfig as AppConf
 from sapl.base.models import Autor, ProblemaMigracao, TipoAutor
 from sapl.comissoes.models import Comissao, Composicao, Participacao
 from sapl.materia.models import (AcompanhamentoMateria, Proposicao,
                                  StatusTramitacao, TipoDocumento,
                                  TipoMateriaLegislativa, TipoProposicao,
                                  Tramitacao)
+from sapl.legacy.models import TipoNumeracaoProtocolo
 from sapl.norma.models import (AssuntoNorma, NormaJuridica, NormaRelacionada,
                                TipoVinculoNormaJuridica)
 from sapl.parlamentares.models import (Legislatura, Mandato, Parlamentar,
@@ -206,6 +208,22 @@ def fill_vinculo_norma_juridica():
     TipoVinculoNormaJuridica.objects.bulk_create(lista_objs)
 
 
+def fill_tipo_numeracao_protocolo():
+    letra = 'A'
+    try:
+        tipo = TipoNumeracaoProtocolo.objects.latest('dat_inicial_protocolo')
+        if 'POR ANO' in tipo.des_numeracao_protocolo:
+            letra = 'A'
+        elif 'POR LEGISLATURA' in tipo.des_numeracao_protocolo:
+            letra = 'L'
+        elif 'CONSECUTIVO' in tipo.des_numeracao_protocolo:
+            letra = 'U'
+    except Exception as e:
+        pass
+    appconf = AppConf(sequencia_numeracao=letra)
+    appconf.save()
+
+
 # Uma anomalia no sapl 2.5 causa a duplicação de registros de votação.
 # Essa duplicação deve ser eliminada para que não haja erro no sapl 3.1
 def excluir_registrovotacao_duplicados():
@@ -305,6 +323,7 @@ def migrate(self, obj=appconfs, interativo=True):
               '--database=default', '--no-input'], stdout=PIPE)
 
         fill_vinculo_norma_juridica()
+        fill_tipo_numeracao_protocolo()
         info('Começando migração: %s...' % obj)
         self._do_migrate(obj)
 
diff --git a/sapl/legacy/models.py b/sapl/legacy/models.py
--- a/sapl/legacy/models.py
+++ b/sapl/legacy/models.py
@@ -968,6 +968,19 @@ class Meta:
         db_table = 'tipo_norma_juridica'
 
 
+class TipoNumeracaoProtocolo(models.Model):
+    seq_tip_num_protocolo = models.AutoField(primary_key=True)
+    tip_numeracao_protocolo = models.IntegerField()
+    des_numeracao_protocolo = models.CharField(max_length=50)
+    dat_inicial_protocolo = models.DateTimeField()
+    vlr_inicial_protocolo = models.IntegerField()
+    ind_excluido = models.IntegerField()
+
+    class Meta:
+        managed = False
+        db_table = 'tipo_numeracao_protocolo'
+
+
 class TipoProposicao(models.Model):
     tip_proposicao = models.AutoField(primary_key=True)
     des_tipo_proposicao = models.CharField(max_length=50)


Test patch: