Browse Source

Adjust norma model fields

pull/6/head
Marcio Mazza 10 years ago
parent
commit
f2703f450d
  1. 80
      norma/models.py

80
norma/models.py

@ -6,8 +6,8 @@ from materia.models import MateriaLegislativa
class AssuntoNorma(models.Model):
descricao_assunto = models.CharField(max_length=50, verbose_name=_(u'Assunto')) # des_assunto
descricao_estendida = models.CharField(max_length=250, blank=True, null=True, verbose_name=_(u'Descrição')) # des_estendida
assunto = models.CharField(max_length=50, verbose_name=_(u'Assunto')) # des_assunto
descricao = models.CharField(max_length=250, blank=True, null=True, verbose_name=_(u'Descrição')) # des_estendida
class Meta:
verbose_name = _(u'Assunto de Norma')
@ -15,9 +15,25 @@ class AssuntoNorma(models.Model):
class TipoNormaJuridica(models.Model):
voc_lexml = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Equivalente LexML')) # voc_lexml
sigla_tipo_norma = models.CharField(max_length=3, verbose_name=_(u'Sigla')) # sgl_tipo_norma
descricao_tipo_norma = models.CharField(max_length=50, verbose_name=_(u'Descrição')) # des_tipo_norma
# TODO transform into Domain Model and use an FK for the field
EQUIVALENTE_LEXML_CHOICES = ((name, name) for name in
('constituicao',
'ementa.constitucional',
'lei.complementar',
'lei.delegada',
'lei',
'decreto.lei',
'medida.provisoria',
'decreto',
'lei.organica',
'emenda.lei.organica',
'decreto.legislativo',
'resolucao',
'regimento.interno',
))
equivalente_lexml = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Equivalente LexML'), choices=EQUIVALENTE_LEXML_CHOICES) # voc_lexml
sigla = models.CharField(max_length=3, verbose_name=_(u'Sigla')) # sgl_tipo_norma
descricao = models.CharField(max_length=50, verbose_name=_(u'Descrição')) # des_tipo_norma
class Meta:
verbose_name = _(u'Tipo de Norma Jurídica')
@ -29,19 +45,19 @@ class NormaJuridica(models.Model):
ESTADUAL = 'E'
FEDERAL = 'F'
ESFERA_FEDERACAO_CHOICES = ((MUNICIPAL, _(u'Municipal')),
(ESTADUAL, _(u'Estadual')),
(FEDERAL, _(u'Federal')))
(ESTADUAL, _(u'Estadual')),
(FEDERAL, _(u'Federal')))
tipo = models.ForeignKey(TipoNormaJuridica, verbose_name=_(u'Tipo')) # tip_norma
materia = models.ForeignKey(MateriaLegislativa, blank=True, null=True) # cod_materia
numero_norma = models.IntegerField(verbose_name=_(u'Número')) # num_norma
ano_norma = models.SmallIntegerField(verbose_name=_(u'Ano')) # ano_norma
tipo_esfera_federacao = models.CharField(max_length=1, verbose_name=_(u'Esfera Federação'), choices=ESFERA_FEDERACAO_CHOICES) # tip_esfera_federacao
data_norma = models.DateField(blank=True, null=True, verbose_name=_(u'Data')) # dat_norma
numero = models.IntegerField(verbose_name=_(u'Número')) # num_norma
ano = models.SmallIntegerField(verbose_name=_(u'Ano')) # ano_norma
esfera_federacao = models.CharField(max_length=1, verbose_name=_(u'Esfera Federação'), choices=ESFERA_FEDERACAO_CHOICES) # tip_esfera_federacao
data = models.DateField(blank=True, null=True, verbose_name=_(u'Data')) # dat_norma
data_publicacao = models.DateField(blank=True, null=True, verbose_name=_(u'Data Publicação')) # dat_publicacao
descricao_veiculo_publicacao = models.CharField(max_length=30, blank=True, null=True, verbose_name=_(u'Veículo Publicação')) # des_veiculo_publicacao
numero_pag_inicio_publ = models.IntegerField(blank=True, null=True, verbose_name=_(u'Pg. Início')) # num_pag_inicio_publ
numero_pag_fim_publ = models.IntegerField(blank=True, null=True, verbose_name=_(u'Pg. Fim')) # num_pag_fim_publ
veiculo_publicacao = models.CharField(max_length=30, blank=True, null=True, verbose_name=_(u'Veículo Publicação')) # des_veiculo_publicacao
pagina_inicio_publicacao = models.IntegerField(blank=True, null=True, verbose_name=_(u'Pg. Início')) # num_pag_inicio_publ
pagina_fim_publicacao = models.IntegerField(blank=True, null=True, verbose_name=_(u'Pg. Fim')) # num_pag_fim_publ
ementa = models.TextField(verbose_name=_(u'Ementa')) # txt_ementa
indexacao = models.TextField(blank=True, null=True, verbose_name=_(u'Indexação')) # txt_indexacao
observacao = models.TextField(blank=True, null=True, verbose_name=_(u'Observação')) # txt_observacao
@ -58,18 +74,18 @@ class NormaJuridica(models.Model):
class LegislacaoCitada(models.Model):
materia = models.ForeignKey(MateriaLegislativa) # cod_materia
norma = models.ForeignKey(NormaJuridica) # cod_norma
descricao_disposicoes = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Disposição')) # des_disposicoes
descricao_parte = models.CharField(max_length=8, blank=True, null=True, verbose_name=_(u'Parte')) # des_parte
descricao_livro = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Livro')) # des_livro
descricao_titulo = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Título')) # des_titulo
descricao_capitulo = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Capítulo')) # des_capitulo
descricao_secao = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Seção')) # des_secao
descricao_subsecao = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Subseção')) # des_subsecao
descricao_artigo = models.CharField(max_length=4, blank=True, null=True, verbose_name=_(u'Artigo')) # des_artigo
descricao_paragrafo = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Parágrafo')) # des_paragrafo
descricao_inciso = models.CharField(max_length=10, blank=True, null=True, verbose_name=_(u'Inciso')) # des_inciso
descricao_alinea = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Alínea')) # des_alinea
descricao_item = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Item')) # des_item
disposicoes = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Disposição')) # des_disposicoes
parte = models.CharField(max_length=8, blank=True, null=True, verbose_name=_(u'Parte')) # des_parte
livro = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Livro')) # des_livro
titulo = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Título')) # des_titulo
capitulo = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Capítulo')) # des_capitulo
secao = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Seção')) # des_secao
subsecao = models.CharField(max_length=7, blank=True, null=True, verbose_name=_(u'Subseção')) # des_subsecao
artigo = models.CharField(max_length=4, blank=True, null=True, verbose_name=_(u'Artigo')) # des_artigo
paragrafo = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Parágrafo')) # des_paragrafo
inciso = models.CharField(max_length=10, blank=True, null=True, verbose_name=_(u'Inciso')) # des_inciso
alinea = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Alínea')) # des_alinea
item = models.CharField(max_length=3, blank=True, null=True, verbose_name=_(u'Item')) # des_item
class Meta:
verbose_name = _(u'Matéria Legislativa')
@ -77,10 +93,20 @@ class LegislacaoCitada(models.Model):
class VinculoNormaJuridica(models.Model):
TIPO_VINCULO_CHOICES = (
('A', u'Altera a norma'),
('R', u'Revoga a norma'),
('P', u'Revoga parcialmente a norma'),
('T', u'Revoga por consolidação a norma'),
('C', u'Norma correlata'),
('I', u'Suspende a execução da norma'),
('G', u'Regulamenta a norma'),
)
# TODO M2M ???
norma_referente = models.ForeignKey(NormaJuridica, related_name='+') # cod_norma_referente
norma_referida = models.ForeignKey(NormaJuridica, related_name='+') # cod_norma_referida
tipo_vinculo = models.CharField(max_length=1, blank=True, null=True) # tip_vinculo
tipo_vinculo = models.CharField(max_length=1, blank=True, null=True, choices=TIPO_VINCULO_CHOICES) # tip_vinculo
class Meta:
verbose_name = _(u'Vínculo entre Normas Jurídicas')

Loading…
Cancel
Save