mirror of https://github.com/interlegis/sapl.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
6.7 KiB
108 lines
6.7 KiB
# -*- coding: utf-8 -*-
|
|
from django.db import models
|
|
from django.utils.translation import ugettext as _
|
|
|
|
from parlamentares.models import Parlamentar
|
|
|
|
|
|
class TipoComissao(models.Model):
|
|
TEMPORARIA = 'T'
|
|
PERMANENTE = 'P'
|
|
NATUREZA_CHOICES = ((TEMPORARIA, _(u'Temporária')),
|
|
(PERMANENTE, _(u'Permanente')))
|
|
nome = models.CharField(max_length=50, verbose_name=_(u'Nome')) # nom_tipo_comissao
|
|
natureza = models.CharField(max_length=1, verbose_name=_(u'Natureza'), choices=NATUREZA_CHOICES) # sgl_natureza_comissao
|
|
sigla = models.CharField(max_length=10, verbose_name=_(u'Sigla')) # sgl_tipo_comissao
|
|
dispositivo_regimental = models.CharField(max_length=50, blank=True, null=True, verbose_name=_(u'Dispositivo Regimental')) # des_dispositivo_regimental
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Tipo de Comissão')
|
|
verbose_name_plural = _(u'Tipos de Comissão')
|
|
|
|
def __unicode__(self):
|
|
return self.nome
|
|
|
|
|
|
class Comissao(models.Model):
|
|
tipo = models.ForeignKey(TipoComissao, verbose_name=_(u'Tipo')) # tip_comissao
|
|
nome = models.CharField(max_length=60, verbose_name=_(u'Nome')) # nom_comissao
|
|
sigla = models.CharField(max_length=10, verbose_name=_(u'Sigla')) # sgl_comissao
|
|
data_criacao = models.DateField(verbose_name=_(u'Data de Criação')) # dat_criacao
|
|
data_extincao = models.DateField(blank=True, null=True, verbose_name=_(u'Data de Extinção')) # dat_extincao
|
|
apelido_temp = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Apelido')) # nom_apelido_temp
|
|
data_instalacao_temp = models.DateField(blank=True, null=True, verbose_name=_(u'Data Instalação')) # dat_instalacao_temp
|
|
data_final_prevista_temp = models.DateField(blank=True, null=True, verbose_name=_(u'Data Prevista Término')) # dat_final_prevista_temp
|
|
data_prorrogada_temp = models.DateField(blank=True, null=True, verbose_name=_(u'Novo Prazo')) # dat_prorrogada_temp
|
|
data_fim_comissao = models.DateField(blank=True, null=True, verbose_name=_(u'Data Término')) # dat_fim_comissao
|
|
secretario = models.CharField(max_length=30, blank=True, null=True, verbose_name=_(u'Secretário')) # nom_secretario
|
|
telefone_reuniao = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Tel. Sala Reunião')) # num_tel_reuniao
|
|
endereco_secretaria = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Endereço Secretaria')) # end_secretaria
|
|
telefone_secretaria = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Tel. Secretaria')) # num_tel_secretaria
|
|
fax_secretaria = models.CharField(max_length=15, blank=True, null=True, verbose_name=_(u'Fax Secretaria')) # num_fax_secretaria
|
|
agenda_reuniao = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Data/Hora Reunião')) # des_agenda_reuniao
|
|
local_reuniao = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'Local Reunião')) # loc_reuniao
|
|
finalidade = models.TextField(blank=True, null=True, verbose_name=_(u'Finalidade')) # txt_finalidade
|
|
email = models.CharField(max_length=100, blank=True, null=True, verbose_name=_(u'E-mail')) # end_email
|
|
unidade_deliberativa = models.BooleanField() # ind_unid_deliberativa
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Comissão')
|
|
verbose_name_plural = _(u'Comissões')
|
|
|
|
def __unicode__(self):
|
|
return self.nome
|
|
|
|
|
|
class Periodo(models.Model): # PeriodoCompComissao
|
|
data_inicio = models.DateField(verbose_name=_(u'Data Início')) # dat_inicio_periodo
|
|
data_fim = models.DateField(blank=True, null=True, verbose_name=_(u'Data Fim')) # dat_fim_periodo
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Período de composição de Comissão')
|
|
verbose_name_plural = _(u'Períodos de composição de Comissão')
|
|
|
|
def __unicode__(self):
|
|
return '%s - %s' % (self.data_inicio, self.data_fim)
|
|
|
|
|
|
class CargoComissao(models.Model):
|
|
nome = models.CharField(max_length=50, verbose_name=_(u'Cargo')) # des_cargo
|
|
unico = models.BooleanField(verbose_name=_(u'Único')) # ind_unico
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Cargo de Comissão')
|
|
verbose_name_plural = _(u'Cargos de Comissão')
|
|
|
|
def __unicode__(self):
|
|
return self.nome
|
|
|
|
|
|
class Composicao(models.Model): # IGNORE
|
|
comissao = models.ForeignKey(Comissao, verbose_name=_(u'Comissão')) # cod_comissao
|
|
periodo = models.ForeignKey(Periodo, verbose_name=_(u'Período')) # cod_periodo_comp
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Composição de Comissão')
|
|
verbose_name_plural = _(u'Composições de Comissão')
|
|
|
|
def __unicode__(self):
|
|
return '%s: %s' % (self.comissao.sigla, self.periodo)
|
|
|
|
|
|
class Participacao(models.Model): # ComposicaoComissao
|
|
composicao = models.ForeignKey(Composicao) # cod_comissao
|
|
parlamentar = models.ForeignKey(Parlamentar) # cod_parlamentar
|
|
cargo = models.ForeignKey(CargoComissao) # cod_cargo
|
|
titular = models.BooleanField(verbose_name=_(u'Titular')) # ind_titular
|
|
data_designacao = models.DateField(verbose_name=_(u'Data Designação')) # dat_designacao
|
|
data_desligamento = models.DateField(blank=True, null=True, verbose_name=_(u'Data Desligamento')) # dat_desligamento
|
|
motivo_desligamento = models.CharField(max_length=150, blank=True, null=True, verbose_name=_(u'Motivo Desligamento')) # des_motivo_desligamento
|
|
observacao = models.CharField(max_length=150, blank=True, null=True, verbose_name=_(u'Observação')) # obs_composicao
|
|
|
|
class Meta:
|
|
verbose_name = _(u'Participação em Comissão')
|
|
verbose_name_plural = _(u'Participações em Comissão')
|
|
|
|
def __unicode__(self):
|
|
return '%s : %s' % (self.cargo, self.parlamentar)
|
|
|
|
|