Repository: interlegis/sapl

Issue:
Alimentação da tabela de STATUS DA TRAMITAÇÃO do MÓDULO MATÉRIA LEGISLATIVA
SUGESTÃO:
Seguindo a linha de entregar o SAPL já com algumas tabelas alimentadas, sugiro também que a tabela de STATUS DA TRAMITAÇÃO do MÓDULO MATÉRIA LEGISLATIVA venha com dados. Olhando o SAPL 2.5, verifiquei que ao todo são 44 registros. 
Fica a sugestão.

grato 


Discussion:
lista de status (o mesmo do 2.5, com algumas deleções)

Sigla  \          Indicador  \       Descrição

ADIAVOTAC | Retorno | Adiada discussão e votação.
AGAUTOGR | Retorno | Aguardando assinatura do autógrafo
AGMENSVET | Retorno | Aguardando assinatura da mensagem sobre o veto
AGORDIA | Retorno | Aguardando a inclusão na ordem do dia
AGPARECER | Retorno | Aguardando emissão de parecer da comissão
AGPROMLEI | Fim | Aguardando promulgação da lei
AGPROMNOR | Fim | Aguardando promulgação da norma jurídica
AGPROMVET | Retorno | Aguardando promulgação de lei com veto rejeitado
AGSANCAO | Fim | Aguardando sanção governamental
ANEXADA | Retorno | Proposição anexada à outra análoga ou conexa mais antiga
APRESENT | Retorno | Proposição apresentada em Plenário
APROV1TUR | Retorno | Proposição aprovada em 1º turno
APROVADA | Fim | Proposição aprovada
ARQUIVADA | Fim | Proposição arquivada
AUTUAPAUTA | Retorno | Proposição autuada e cumprindo prazo de pauta
DESARQUIV | Retorno | Proposição desarquivada pelo Autor
DISTRCOMIS | Retorno | Proposição distribuída às comissões
INCLORDIA | Retorno | Proposição inclusa na Ordem do Dia
LEIPROMUL | Fim | Proposição transformada em lei por promulgação
LEIVETPAR | Retorno | Transformada em lei com veto parcial
MANUTVETO | Retorno | Parecer pela manutenção do veto
NORMPROMUL | Fim | Norma promulgada
PARECCONTR | Retorno | Parecer contrário da comissão de mérito
PARECERFAV | Retorno | Parecer favorável da comissão
PARECPLEN | Fim | Parecer em Plenário pelas comissões pertinentes
PAREUCONJ | Retorno | Parecer em reunião conjunta das Comissões pertinentes
PREJUD | Fim | Proposição prejudicada
PROMULVETO | Fim | Veto total ou parcial promulgado
REJEITADA | Fim | Proposição rejeitada pelo Plenário
REJEIVETO | Retorno | Parecer pela rejeição do veto
RETAUTOR | Fim | Proposição retirada pelo autor
RETORDIA | Retorno | Proposição retirada da Ordem do Dia
TRANSFLEI | Fim | Proposição transformada em lei
VETODISTR | Retorno | Veto distribuído para emissão de parecer
VETOLIDO | Retorno | Veto sobre a proposição lido em sessão plenária
VETOMANT | Fim | Veto sobre a proposição mantido
VETOORDIA | Fim | Veto incluso na ordem do dia
VETOPAUTA | Fim | Veto autuado e incluso em pauta
VETOREJEI | Fim | Veto sobre a proposição rejeitado
VETOTOTAL | Retorno | Proposição com veto total



Resolving patch:
diff --git a/sapl/materia/migrations/0013_adiciona_status_tramitacao.py b/sapl/materia/migrations/0013_adiciona_status_tramitacao.py
new file mode 100644
--- /dev/null
+++ b/sapl/materia/migrations/0013_adiciona_status_tramitacao.py
@@ -0,0 +1,44 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+from django.db import migrations
+import json
+import os
+
+
+from django.core.management import call_command
+
+
+
+def gera_status_tramitacao(apps, schema_editor):
+    StatusTramitacao = apps.get_model("materia", "StatusTramitacao")
+    db_alias = schema_editor.connection.alias
+    status_tramitacoes = StatusTramitacao.objects.all().exists()
+
+    if status_tramitacoes:
+        # Caso haja algum StatusTramitacao cadastrado na base de dados,
+        # a migração não deve ser carregada para evitar duplicações de dados.
+        print("Carga de {} não efetuada. Já Existem {} cadastrados...".format(
+            StatusTramitacao._meta.verbose_name,
+            StatusTramitacao._meta.verbose_name_plural
+           )
+        )
+    else:
+        fixture_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '../fixtures'))
+        # pega status_tramitacoes listados em fixtures/pre_popula_status_tramitacao.json
+        fixture_filename = 'pre_popula_status_tramitacao.json'
+        fixture_file = os.path.join(fixture_dir, fixture_filename)
+        call_command('loaddata', fixture_file)
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        # A dependencia real desse script é o arquivo 0001_initial.py, mas
+        # isso gera um erro (Conflicting migrations detected; multiple leaf
+         # nodes in the migration graph). para não ocasionar problemas de migração,
+         # vamos manter a ordem padrão do django.
+        ('materia', '0012_auto_20170829_1321'),
+    ]
+
+    operations = [
+        migrations.RunPython(gera_status_tramitacao),
+    ]


Test patch: