diff --git a/sigi/apps/casas/migrations/0001_initial.py b/sigi/apps/casas/migrations/0001_initial.py
new file mode 100644
index 0000000..7e06ed2
--- /dev/null
+++ b/sigi/apps/casas/migrations/0001_initial.py
@@ -0,0 +1,99 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import image_cropping.fields
+import sigi.apps.utils
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('servidores', '0001_initial'),
+ ('contatos', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='CasaLegislativa',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(help_text=b'Exemplo: C\xc3\xa2mara Municipal de Pains.', max_length=60)),
+ ('search_text', sigi.apps.utils.SearchField(field_names=[b'nome'], editable=False)),
+ ('cnpj', models.CharField(max_length=32, verbose_name=b'CNPJ', blank=True)),
+ ('observacoes', models.TextField(verbose_name='observa\xe7\xf5es', blank=True)),
+ ('codigo_interlegis', models.CharField(max_length=3, verbose_name=b'C\xc3\xb3digo Interlegis', blank=True)),
+ ('logradouro', models.CharField(help_text=b'Avenida, rua, pra\xc3\xa7a, jardim, parque...', max_length=100)),
+ ('bairro', models.CharField(max_length=100, blank=True)),
+ ('cep', models.CharField(max_length=32)),
+ ('email', models.EmailField(max_length=128, verbose_name=b'e-mail', blank=True)),
+ ('pagina_web', models.URLField(help_text=b'Exemplo: http://www.camarapains.mg.gov.br.', verbose_name='p\xe1gina web', blank=True)),
+ ('ult_alt_endereco', models.DateTimeField(null=True, verbose_name='\xdaltima altera\xe7\xe3o do endere\xe7o', blank=True)),
+ ('foto', models.ImageField(height_field=b'foto_altura', width_field=b'foto_largura', upload_to=b'imagens/casas', blank=True)),
+ (b'recorte', image_cropping.fields.ImageRatioField(b'foto', '400x300', hide_image_field=False, size_warning=True, allow_fullsize=False, free_crop=False, adapt_rotation=False, help_text=None, verbose_name=b'Recorte')),
+ ('foto_largura', models.SmallIntegerField(null=True, editable=False)),
+ ('foto_altura', models.SmallIntegerField(null=True, editable=False)),
+ ('data_instalacao', models.DateField(null=True, verbose_name='Data de instala\xe7\xe3o da Casa Legislativa', blank=True)),
+ ('gerente_contas', models.ForeignKey(verbose_name=b'Gerente de contas', blank=True, to='servidores.Servidor', null=True)),
+ ('municipio', models.ForeignKey(verbose_name=b'munic\xc3\xadpio', to='contatos.Municipio')),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name': 'Casa Legislativa',
+ 'verbose_name_plural': 'Casas Legislativas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Funcionario',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=60, verbose_name=b'nome completo')),
+ ('sexo', models.CharField(default=b'M', max_length=1, choices=[(b'M', b'Masculino'), (b'F', b'Feminino')])),
+ ('nota', models.CharField(max_length=70, null=True, blank=True)),
+ ('email', models.CharField(max_length=75, verbose_name=b'e-mail', blank=True)),
+ ('cargo', models.CharField(max_length=100, null=True, blank=True)),
+ ('funcao', models.CharField(max_length=100, null=True, verbose_name='fun\xe7\xe3o', blank=True)),
+ ('setor', models.CharField(default=b'outros', max_length=100, choices=[(b'presidente', b'Presidente'), (b'contato_interlegis', b'Contato Interlegis'), (b'infraestrutura_fisica', b'Infraestrutura F\xc3\xadsica'), (b'estrutura_de_ti', b'Estrutura de TI'), (b'organizacao_do_processo_legislativo', b'Organiza\xc3\xa7\xc3\xa3o do Processo Legislativo'), (b'producao_legislativa', b'Produ\xc3\xa7\xc3\xa3o Legislativa'), (b'estrutura_de_comunicacao_social', b'Estrutura de Comunica\xc3\xa7\xc3\xa3o Social'), (b'estrutura_de_recursos_humanos', b'Estrutura de Recursos Humanos'), (b'gestao', b'Gest\xc3\xa3o'), (b'outros', b'Outros')])),
+ ('tempo_de_servico', models.CharField(max_length=50, null=True, verbose_name='tempo de servi\xe7o', blank=True)),
+ ('ult_alteracao', models.DateTimeField(null=True, verbose_name='\xdaltima altera\xe7\xe3o', blank=True)),
+ ('casa_legislativa', models.ForeignKey(to='casas.CasaLegislativa')),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name': 'contato da Casa Legislativa',
+ 'verbose_name_plural': 'contatos da Casa Legislativa',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='TipoCasaLegislativa',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('sigla', models.CharField(max_length=5)),
+ ('nome', models.CharField(max_length=100)),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='casalegislativa',
+ name='tipo',
+ field=models.ForeignKey(verbose_name=b'Tipo', to='casas.TipoCasaLegislativa'),
+ preserve_default=True,
+ ),
+ migrations.AlterUniqueTogether(
+ name='casalegislativa',
+ unique_together=set([('municipio', 'tipo')]),
+ ),
+ migrations.CreateModel(
+ name='Presidente',
+ fields=[
+ ],
+ options={
+ 'proxy': True,
+ },
+ bases=('casas.funcionario',),
+ ),
+ ]
diff --git a/sigi/apps/casas/migrations/__init__.py b/sigi/apps/casas/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/contatos/migrations/0001_initial.py b/sigi/apps/contatos/migrations/0001_initial.py
new file mode 100644
index 0000000..9541e20
--- /dev/null
+++ b/sigi/apps/contatos/migrations/0001_initial.py
@@ -0,0 +1,136 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import django.core.validators
+import sigi.apps.utils
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('contenttypes', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Contato',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=120, verbose_name='nome completo')),
+ ('nota', models.CharField(max_length=70, blank=True)),
+ ('email', models.EmailField(max_length=75, verbose_name='e-mail', blank=True)),
+ ('object_id', models.PositiveIntegerField()),
+ ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name': 'contato Interlegis',
+ 'verbose_name_plural': 'contatos Interlegis',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Endereco',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('tipo', models.CharField(max_length=15, choices=[(b'aeroporto', 'Aeroporto'), (b'alameda', 'Alameda'), (b'area', '\xc1rea'), (b'avenida', 'Avenida'), (b'campo', 'Campo'), (b'chacara', 'Ch\xe1cara'), (b'colonia', 'Col\xf4nia'), (b'condominio', 'Condom\xednio'), (b'conjunto', 'Conjunto'), (b'distrito', 'Distrito'), (b'esplanada', 'Esplanada'), (b'estacao', 'Esta\xe7\xe3o'), (b'estrada', 'Estrada'), (b'favela', 'Favela'), (b'fazenda', 'Fazenda'), (b'feira', 'Feira'), (b'jardim', 'Jardim'), (b'ladeira', 'Ladeira'), (b'lago', 'Lago'), (b'lagoa', 'Lagoa'), (b'largo', 'Largo'), (b'loteamento', 'Loteamento'), (b'morro', 'Morro'), (b'nucleo', 'N\xfacleo'), (b'parque', 'Parque'), (b'passarela', 'Passarela'), (b'patio', 'P\xe1tio'), (b'praca', 'Pra\xe7a'), (b'quadra', 'Quadra'), (b'recanto', 'Recanto'), (b'residencial', 'Residencial'), (b'rodovia', 'Rodovia'), (b'rua', 'Rua'), (b'setor', 'Setor'), (b'sitio', 'S\xedtio'), (b'travessa', 'Travessa'), (b'trecho', 'Trecho'), (b'trevo', 'Trevo'), (b'vale', 'Vale'), (b'vereda', 'Vereda'), (b'via', 'Via'), (b'viaduto', 'Viaduto'), (b'viela', 'Viela'), (b'vila', 'Vila'), (b'outro', 'Outro')])),
+ ('logradouro', models.CharField(max_length=100)),
+ ('numero', models.CharField(max_length=15, blank=True)),
+ ('complemento', models.CharField(max_length=15, blank=True)),
+ ('referencia', models.CharField(max_length=100, blank=True)),
+ ('bairro', models.CharField(max_length=100, blank=True)),
+ ('cep', models.CharField(help_text='Formato: XXXXX-XXX.', max_length=9, null=True, verbose_name='CEP', blank=True)),
+ ('object_id', models.PositiveIntegerField()),
+ ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
+ ],
+ options={
+ 'ordering': ('logradouro', 'numero'),
+ 'verbose_name': 'endere\xe7o',
+ 'verbose_name_plural': 'endere\xe7os',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Municipio',
+ fields=[
+ ('codigo_ibge', models.PositiveIntegerField(help_text='C\xf3digo do munic\xedpio segundo IBGE.', unique=True, serialize=False, verbose_name='c\xf3digo IBGE', primary_key=True)),
+ ('codigo_mesorregiao', models.PositiveIntegerField(null=True, verbose_name='c\xf3digo mesorregi\xe3o', blank=True)),
+ ('codigo_microrregiao', models.PositiveIntegerField(null=True, verbose_name='c\xf3digo microrregi\xe3o', blank=True)),
+ ('codigo_tse', models.PositiveIntegerField(help_text='C\xf3digo do munic\xedpio segundo TSE.', unique=True, null=True, verbose_name='c\xf3digo TSE')),
+ ('nome', models.CharField(max_length=50)),
+ ('search_text', sigi.apps.utils.SearchField(field_names=['nome', 'uf'], editable=False)),
+ ('is_capital', models.BooleanField(default=False, verbose_name='capital')),
+ ('populacao', models.PositiveIntegerField(verbose_name='popula\xe7\xe3o')),
+ ('is_polo', models.BooleanField(default=False, verbose_name='p\xf3lo')),
+ ('data_criacao', models.DateField(null=True, verbose_name='data de cria\xe7\xe3o do munic\xedpio', blank=True)),
+ ('latitude', models.DecimalField(help_text='Exemplo: -20,464.', null=True, max_digits=10, decimal_places=8, blank=True)),
+ ('longitude', models.DecimalField(help_text='Exemplo: -45,426.', null=True, max_digits=11, decimal_places=8, blank=True)),
+ ('idh', models.DecimalField(help_text='\xcdndice de desenvolvimento Humano', verbose_name='IDH', max_digits=4, decimal_places=3, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(1)])),
+ ('pib_total', models.DecimalField(null=True, verbose_name='PIB total', max_digits=18, decimal_places=3, blank=True)),
+ ('pib_percapita', models.DecimalField(null=True, verbose_name='PIB per capita', max_digits=18, decimal_places=3, blank=True)),
+ ('pib_ano', models.IntegerField(null=True, verbose_name='Ano de apura\xe7\xe3o do PIB', blank=True)),
+ ],
+ options={
+ 'ordering': ('nome', 'codigo_ibge'),
+ 'verbose_name': 'munic\xedpio',
+ 'verbose_name_plural': 'munic\xedpios',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Telefone',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('numero', models.CharField(help_text='Exemplo: (31)8851-9898.', max_length=64, verbose_name='n\xfamero')),
+ ('tipo', models.CharField(default=b'I', max_length=1, choices=[(b'F', 'Fixo'), (b'M', 'M\xf3vel'), (b'X', 'Fax'), (b'I', 'Indefinido')])),
+ ('nota', models.CharField(max_length=70, null=True, blank=True)),
+ ('ult_alteracao', models.DateTimeField(auto_now=True, verbose_name='\xdaltima altera\xe7\xe3o', null=True)),
+ ('object_id', models.PositiveIntegerField()),
+ ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
+ ],
+ options={
+ 'ordering': ('numero',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='UnidadeFederativa',
+ fields=[
+ ('codigo_ibge', models.PositiveIntegerField(help_text='C\xf3digo do estado segundo IBGE.', unique=True, serialize=False, verbose_name='c\xf3digo IBGE', primary_key=True)),
+ ('nome', models.CharField(max_length=25, verbose_name='Nome UF')),
+ ('search_text', sigi.apps.utils.SearchField(field_names=[b'nome'], editable=False)),
+ ('sigla', models.CharField(help_text='Exemplo: MG.', unique=True, max_length=2)),
+ ('regiao', models.CharField(max_length=2, verbose_name='regi\xe3o', choices=[(b'SL', 'Sul'), (b'SD', 'Sudeste'), (b'CO', 'Centro-Oeste'), (b'NE', 'Nordeste'), (b'NO', 'Norte')])),
+ ('populacao', models.PositiveIntegerField(verbose_name='popula\xe7\xe3o')),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name': 'Unidade Federativa',
+ 'verbose_name_plural': 'Unidades Federativas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AlterUniqueTogether(
+ name='telefone',
+ unique_together=set([('numero', 'tipo')]),
+ ),
+ migrations.AddField(
+ model_name='municipio',
+ name='uf',
+ field=models.ForeignKey(verbose_name='UF', to='contatos.UnidadeFederativa'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='endereco',
+ name='municipio',
+ field=models.ForeignKey(verbose_name='munic\xedpio', blank=True, to='contatos.Municipio', null=True),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='contato',
+ name='municipio',
+ field=models.ForeignKey(verbose_name='munic\xedpio', blank=True, to='contatos.Municipio', null=True),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/contatos/migrations/__init__.py b/sigi/apps/contatos/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/convenios/migrations/0001_initial.py b/sigi/apps/convenios/migrations/0001_initial.py
new file mode 100644
index 0000000..ca538b7
--- /dev/null
+++ b/sigi/apps/convenios/migrations/0001_initial.py
@@ -0,0 +1,124 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import datetime
+import sigi.apps.utils
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('inventario', '__first__'),
+ ('casas', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Anexo',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('arquivo', models.FileField(max_length=500, upload_to=b'apps/convenios/anexo/arquivo')),
+ ('descricao', models.CharField(max_length=b'70', verbose_name='descri\xe7\xe3o')),
+ ('data_pub', models.DateTimeField(default=datetime.datetime.now, verbose_name='data da publica\xe7\xe3o do anexo')),
+ ],
+ options={
+ 'ordering': ('-data_pub',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Convenio',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('search_text', sigi.apps.utils.SearchField(field_names=[b'casa_legislativa'], editable=False)),
+ ('num_processo_sf', models.CharField(help_text='Formatos:
Antigo: XXXXXX/XX-X.
SIGAD: XXXXX.XXXXXX/XXXX-XX', max_length=20, verbose_name='n\xfamero do processo SF (Senado Federal)', blank=True)),
+ ('num_convenio', models.CharField(max_length=10, verbose_name='n\xfamero do conv\xeanio', blank=True)),
+ ('data_adesao', models.DateField(null=True, verbose_name='Aderidas', blank=True)),
+ ('data_retorno_assinatura', models.DateField(help_text='Conv\xeanio firmado.', null=True, verbose_name='Conveniadas', blank=True)),
+ ('data_pub_diario', models.DateField(null=True, verbose_name='data da publica\xe7\xe3o no Di\xe1rio Oficial', blank=True)),
+ ('data_termo_aceite', models.DateField(help_text='Equipamentos recebidos.', null=True, verbose_name='Equipadas', blank=True)),
+ ('data_devolucao_via', models.DateField(help_text='Data de devolu\xe7\xe3o da via do conv\xeanio \xe0 C\xe2mara Municipal.', null=True, verbose_name='data de devolu\xe7\xe3o da via', blank=True)),
+ ('data_postagem_correio', models.DateField(null=True, verbose_name='data postagem correio', blank=True)),
+ ('data_devolucao_sem_assinatura', models.DateField(help_text='Data de devolu\xe7\xe3o por falta de assinatura', null=True, verbose_name='data de devolu\xe7\xe3o por falta de assinatura', blank=True)),
+ ('data_retorno_sem_assinatura', models.DateField(help_text='Data do retorno do conv\xeanio sem assinatura', null=True, verbose_name='data do retorno sem assinatura', blank=True)),
+ ('observacao', models.CharField(max_length=100, null=True, blank=True)),
+ ('conveniada', models.BooleanField(default=False)),
+ ('equipada', models.BooleanField(default=False)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ],
+ options={
+ 'ordering': ('id',),
+ 'get_latest_by': 'id',
+ 'verbose_name': 'conv\xeanio',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='EquipamentoPrevisto',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('quantidade', models.PositiveSmallIntegerField(default=1)),
+ ('convenio', models.ForeignKey(verbose_name='conv\xeanio', to='convenios.Convenio')),
+ ('equipamento', models.ForeignKey(to='inventario.Equipamento')),
+ ],
+ options={
+ 'verbose_name': 'equipamento previsto',
+ 'verbose_name_plural': 'equipamentos previstos',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Projeto',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=50)),
+ ('sigla', models.CharField(max_length=10)),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Tramitacao',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('data', models.DateField()),
+ ('observacao', models.CharField(max_length=b'512', null=True, verbose_name='observa\xe7\xe3o', blank=True)),
+ ('convenio', models.ForeignKey(verbose_name='conv\xeanio', to='convenios.Convenio')),
+ ],
+ options={
+ 'verbose_name_plural': 'Tramita\xe7\xf5es',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='UnidadeAdministrativa',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('sigla', models.CharField(max_length=b'10')),
+ ('nome', models.CharField(max_length=b'100')),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='tramitacao',
+ name='unid_admin',
+ field=models.ForeignKey(verbose_name='Unidade Administrativa', to='convenios.UnidadeAdministrativa'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='convenio',
+ name='projeto',
+ field=models.ForeignKey(to='convenios.Projeto'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='anexo',
+ name='convenio',
+ field=models.ForeignKey(verbose_name='conv\xeanio', to='convenios.Convenio'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/convenios/migrations/__init__.py b/sigi/apps/convenios/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/diagnosticos/migrations/0001_initial.py b/sigi/apps/diagnosticos/migrations/0001_initial.py
new file mode 100644
index 0000000..77b21eb
--- /dev/null
+++ b/sigi/apps/diagnosticos/migrations/0001_initial.py
@@ -0,0 +1,148 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import autoslug.fields
+import datetime
+import sigi.apps.utils
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('servidores', '0001_initial'),
+ ('contenttypes', '0001_initial'),
+ ('casas', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Anexo',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('arquivo', models.FileField(max_length=500, upload_to=b'apps/diagnostico/anexo/arquivo')),
+ ('descricao', models.CharField(max_length=b'70', verbose_name='descri\xe7\xe3o')),
+ ('data_pub', models.DateTimeField(default=datetime.datetime.now, verbose_name='data da publica\xe7\xe3o do anexo')),
+ ],
+ options={
+ 'ordering': ('-data_pub',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Categoria',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=255)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Diagnostico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('search_text', sigi.apps.utils.SearchField(field_names=[b'casa_legislativa'], editable=False)),
+ ('data_visita_inicio', models.DateField(null=True, verbose_name='data inicial da visita', blank=True)),
+ ('data_visita_fim', models.DateField(null=True, verbose_name='data final da visita', blank=True)),
+ ('publicado', models.BooleanField(default=False)),
+ ('data_publicacao', models.DateField(null=True, verbose_name='data de publica\xe7\xe3o do diagn\xf3stico', blank=True)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ('responsavel', models.ForeignKey(verbose_name='respons\xe1vel', to='servidores.Servidor')),
+ ],
+ options={
+ 'verbose_name': 'diagn\xf3stico',
+ 'verbose_name_plural': 'diagn\xf3sticos',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Equipe',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('diagnostico', models.ForeignKey(to='diagnosticos.Diagnostico')),
+ ('membro', models.ForeignKey(to='servidores.Servidor')),
+ ],
+ options={
+ 'verbose_name': 'equipe',
+ 'verbose_name_plural': 'equipe',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Escolha',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('title', models.CharField(max_length=100)),
+ ('ordem', models.PositiveIntegerField(null=True, blank=True)),
+ ],
+ options={
+ 'ordering': ('schema', 'ordem'),
+ 'verbose_name': 'escolha',
+ 'verbose_name_plural': 'escolhas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Pergunta',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('title', models.CharField(help_text='user-friendly attribute name', max_length=250, verbose_name='title')),
+ ('name', autoslug.fields.AutoSlugField(max_length=250, verbose_name='name', blank=True)),
+ ('help_text', models.CharField(help_text='short description for administrator', max_length=250, verbose_name='help text', blank=True)),
+ ('datatype', models.CharField(max_length=5, verbose_name='data type', choices=[(b'text', 'text'), (b'float', 'number'), (b'date', 'date'), (b'bool', 'boolean'), (b'one', 'choice'), (b'many', 'multiple choices'), (b'range', 'numeric range')])),
+ ('required', models.BooleanField(default=False, verbose_name='required')),
+ ('searched', models.BooleanField(default=False, verbose_name='include in search')),
+ ('filtered', models.BooleanField(default=False, verbose_name='include in filters')),
+ ('sortable', models.BooleanField(default=False, verbose_name='allow sorting')),
+ ('categoria', models.ForeignKey(related_name=b'perguntas', to='diagnosticos.Categoria')),
+ ],
+ options={
+ 'ordering': ('title',),
+ 'verbose_name': 'pergunta',
+ 'verbose_name_plural': 'perguntas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Resposta',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('entity_id', models.IntegerField()),
+ ('value_text', models.TextField(null=True, blank=True)),
+ ('value_float', models.FloatField(null=True, blank=True)),
+ ('value_date', models.DateField(null=True, blank=True)),
+ ('value_bool', models.NullBooleanField()),
+ ('value_range_min', models.FloatField(null=True, blank=True)),
+ ('value_range_max', models.FloatField(null=True, blank=True)),
+ ('choice', models.ForeignKey(verbose_name='escolha', blank=True, to='diagnosticos.Escolha', null=True)),
+ ('entity_type', models.ForeignKey(to='contenttypes.ContentType')),
+ ('schema', models.ForeignKey(related_name=b'attrs', verbose_name='pergunta', to='diagnosticos.Pergunta')),
+ ],
+ options={
+ 'verbose_name': 'resposta',
+ 'verbose_name_plural': 'respostas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='escolha',
+ name='schema',
+ field=models.ForeignKey(related_name=b'choices', verbose_name='pergunta', to='diagnosticos.Pergunta'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='escolha',
+ name='schema_to_open',
+ field=models.ForeignKey(related_name=b'', verbose_name='pergunta para abrir', blank=True, to='diagnosticos.Pergunta', null=True),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='anexo',
+ name='diagnostico',
+ field=models.ForeignKey(verbose_name='diagn\xf3stico', to='diagnosticos.Diagnostico'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/diagnosticos/migrations/__init__.py b/sigi/apps/diagnosticos/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/financeiro/migrations/0001_initial.py b/sigi/apps/financeiro/migrations/0001_initial.py
new file mode 100644
index 0000000..a79e5d2
--- /dev/null
+++ b/sigi/apps/financeiro/migrations/0001_initial.py
@@ -0,0 +1,30 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('convenios', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Desembolso',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('descricao', models.CharField(max_length=100, verbose_name='Descri\xe7\xe3o da despesa')),
+ ('data', models.DateField(verbose_name='Data do desembolso')),
+ ('valor_reais', models.DecimalField(verbose_name='Valor em R$', max_digits=18, decimal_places=2)),
+ ('valor_dolar', models.DecimalField(verbose_name='Valor em US$', max_digits=18, decimal_places=2)),
+ ('projeto', models.ForeignKey(verbose_name='Projeto', to='convenios.Projeto')),
+ ],
+ options={
+ 'verbose_name': 'Desembolso',
+ 'verbose_name_plural': 'Desembolsos',
+ },
+ bases=(models.Model,),
+ ),
+ ]
diff --git a/sigi/apps/financeiro/migrations/__init__.py b/sigi/apps/financeiro/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/inventario/migrations/0001_initial.py b/sigi/apps/inventario/migrations/0001_initial.py
new file mode 100644
index 0000000..b16ba94
--- /dev/null
+++ b/sigi/apps/inventario/migrations/0001_initial.py
@@ -0,0 +1,122 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('casas', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Bem',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('num_serie', models.CharField(help_text='N\xfamero fornecido pelo fabricante.', unique=True, max_length=64, verbose_name='n\xfamero de s\xe9rie')),
+ ('recebido_por', models.CharField(help_text='Nome de quem recebeu o equipamento.', max_length=64, blank=True)),
+ ('observacoes', models.TextField(verbose_name='observa\xe7\xf5es', blank=True)),
+ ('casa_legislativa', models.ForeignKey(to='casas.CasaLegislativa')),
+ ],
+ options={
+ 'verbose_name_plural': 'bens',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Equipamento',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Fabricante',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(unique=True, max_length=40)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Fornecedor',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=40)),
+ ('email', models.EmailField(max_length=75, verbose_name='e-mail', blank=True)),
+ ('pagina_web', models.URLField(verbose_name='p\xe1gina web', blank=True)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name_plural': 'fornecedores',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='ModeloEquipamento',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('modelo', models.CharField(max_length=30)),
+ ],
+ options={
+ 'ordering': ('modelo',),
+ 'verbose_name': 'modelo de equipamento',
+ 'verbose_name_plural': 'modelos de equipamentos',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='TipoEquipamento',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('tipo', models.CharField(max_length=40)),
+ ],
+ options={
+ 'ordering': ('tipo',),
+ 'verbose_name': 'tipo de equipamento',
+ 'verbose_name_plural': 'tipos de equipamentos',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='modeloequipamento',
+ name='tipo',
+ field=models.ForeignKey(verbose_name='tipo de equipamento', to='inventario.TipoEquipamento'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='equipamento',
+ name='fabricante',
+ field=models.ForeignKey(to='inventario.Fabricante'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='equipamento',
+ name='modelo',
+ field=models.ForeignKey(to='inventario.ModeloEquipamento'),
+ preserve_default=True,
+ ),
+ migrations.AlterUniqueTogether(
+ name='equipamento',
+ unique_together=set([('fabricante', 'modelo')]),
+ ),
+ migrations.AddField(
+ model_name='bem',
+ name='equipamento',
+ field=models.ForeignKey(to='inventario.Equipamento'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='bem',
+ name='fornecedor',
+ field=models.ForeignKey(to='inventario.Fornecedor'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/inventario/migrations/__init__.py b/sigi/apps/inventario/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/mdl/migrations/0001_initial.py b/sigi/apps/mdl/migrations/0001_initial.py
new file mode 100644
index 0000000..25c0a64
--- /dev/null
+++ b/sigi/apps/mdl/migrations/0001_initial.py
@@ -0,0 +1,116 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Cohort',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_cohort',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='CohortMembers',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_cohort_members',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Context',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_context',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Course',
+ fields=[
+ ],
+ options={
+ 'ordering': ['sortorder'],
+ 'db_table': 'mdl_course',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='CourseCategories',
+ fields=[
+ ],
+ options={
+ 'ordering': ['sortorder'],
+ 'db_table': 'mdl_course_categories',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='CourseCompletions',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_course_completions',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='CourseStats',
+ fields=[
+ ],
+ options={
+ 'db_table': 'sigi_course_stats',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Enrol',
+ fields=[
+ ],
+ options={
+ 'ordering': ['sortorder'],
+ 'db_table': 'mdl_enrol',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='User',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_user',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='UserEnrolments',
+ fields=[
+ ],
+ options={
+ 'db_table': 'mdl_user_enrolments',
+ 'managed': False,
+ },
+ bases=(models.Model,),
+ ),
+ ]
diff --git a/sigi/apps/mdl/migrations/__init__.py b/sigi/apps/mdl/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/metas/migrations/0001_initial.py b/sigi/apps/metas/migrations/0001_initial.py
new file mode 100644
index 0000000..a7e4740
--- /dev/null
+++ b/sigi/apps/metas/migrations/0001_initial.py
@@ -0,0 +1,49 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('casas', '0001_initial'),
+ ('convenios', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Meta',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('titulo', models.CharField(help_text='T\xedtulo da meta que aparecer\xe1 no dashboard', max_length=40, verbose_name='T\xedtulo')),
+ ('descricao', models.TextField(verbose_name='Descri\xe7\xe3o')),
+ ('data_inicio', models.DateField(help_text='In\xedcio do per\xedodo de c\xf4mputo da meta', verbose_name='Data inicial')),
+ ('data_fim', models.DateField(help_text='Prazo final para cumprimento da meta', verbose_name='Data final')),
+ ('algoritmo', models.CharField(max_length=10, verbose_name='Algoritmo de c\xe1lculo', choices=[(b'SUM_GASTOS', 'Soma dos desembolsos'), (b'COUNT_EQUI', 'Quantidade de casas equipadas'), (b'COUNT_ADER', 'Quantidade de casas aderidas'), (b'COUNT_DIAG', 'Quantidade de casas diagnosticadas'), (b'COUNT_PDIR', 'Quantidade de planos diretores'), (b'COUNT_CONV', 'Quantidade de casas conveniadas')])),
+ ('valor_meta', models.FloatField(help_text='Valor que deve ser atingido at\xe9 o prazo final da meta', verbose_name='Valor da meta')),
+ ('projeto', models.ForeignKey(verbose_name='Projeto', to='convenios.Projeto', help_text='Projeto ao qual a meta se refere')),
+ ],
+ options={
+ 'verbose_name': 'Meta BID',
+ 'verbose_name_plural': 'Metas BID',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='PlanoDiretor',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('status', models.CharField(default=b'E', max_length=1, verbose_name='Status', choices=[(b'E', 'Entregue'), (b'I', 'Implantado')])),
+ ('data_entrega', models.DateField(null=True, verbose_name='Data de entrega', blank=True)),
+ ('data_implantacao', models.DateField(null=True, verbose_name='Data de implanta\xe7\xe3o', blank=True)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ('projeto', models.ForeignKey(verbose_name='Projeto', to='convenios.Projeto')),
+ ],
+ options={
+ 'verbose_name': 'Plano Diretor',
+ 'verbose_name_plural': 'Planos Diretores',
+ },
+ bases=(models.Model,),
+ ),
+ ]
diff --git a/sigi/apps/metas/migrations/__init__.py b/sigi/apps/metas/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/ocorrencias/migrations/0001_initial.py b/sigi/apps/ocorrencias/migrations/0001_initial.py
new file mode 100644
index 0000000..12d05e7
--- /dev/null
+++ b/sigi/apps/ocorrencias/migrations/0001_initial.py
@@ -0,0 +1,116 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('casas', '0001_initial'),
+ ('servidores', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Anexo',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('arquivo', models.FileField(upload_to=b'apps/ocorrencia/anexo/arquivo', max_length=500, verbose_name='Arquivo anexado')),
+ ('descricao', models.CharField(max_length=b'70', verbose_name='descri\xe7\xe3o do anexo')),
+ ('data_pub', models.DateTimeField(auto_now_add=True, verbose_name='data da publica\xe7\xe3o do anexo', null=True)),
+ ],
+ options={
+ 'ordering': ('-data_pub',),
+ 'verbose_name': 'Anexo',
+ 'verbose_name_plural': 'Anexos',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Categoria',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=50, verbose_name='Categoria')),
+ ('descricao', models.TextField(null=True, verbose_name='descri\xe7\xe3o', blank=True)),
+ ('setor_responsavel', models.ForeignKey(verbose_name='Setor respons\xe1vel', to='servidores.Servico')),
+ ],
+ options={
+ 'verbose_name': 'Categoria',
+ 'verbose_name_plural': 'Categorias',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Comentario',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('data_criacao', models.DateTimeField(auto_now_add=True, verbose_name='Data de cria\xe7\xe3o', null=True)),
+ ('descricao', models.TextField(null=True, verbose_name='Descri\xe7\xe3o', blank=True)),
+ ('novo_status', models.IntegerField(blank=True, null=True, verbose_name='Novo status', choices=[(1, 'Aberto'), (2, 'Reaberto'), (3, 'Resolvido'), (4, 'Fechado'), (5, 'Duplicado')])),
+ ('encaminhar_setor', models.ForeignKey(verbose_name='Encaminhar para setor', blank=True, to='servidores.Servico', null=True)),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Ocorrencia',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('data_criacao', models.DateField(auto_now_add=True, verbose_name='Data de cria\xe7\xe3o', null=True)),
+ ('data_modificacao', models.DateField(auto_now=True, verbose_name='Data de modifica\xe7\xe3o', null=True)),
+ ('assunto', models.CharField(max_length=200, verbose_name='Assunto')),
+ ('status', models.IntegerField(default=1, verbose_name='Status', choices=[(1, 'Aberto'), (2, 'Reaberto'), (3, 'Resolvido'), (4, 'Fechado'), (5, 'Duplicado')])),
+ ('prioridade', models.IntegerField(default=3, verbose_name='Prioridade', choices=[(1, 'Alt\xedssimo'), (2, 'Alto'), (3, 'Normal'), (4, 'Baixo'), (5, 'Baix\xedssimo')])),
+ ('descricao', models.TextField(verbose_name='descri\xe7\xe3o', blank=True)),
+ ('resolucao', models.TextField(verbose_name='resolu\xe7\xe3o', blank=True)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ('categoria', models.ForeignKey(verbose_name='Categoria', to='ocorrencias.Categoria')),
+ ('servidor_registro', models.ForeignKey(verbose_name='Servidor que registrou a ocorr\xeancia', to='servidores.Servidor')),
+ ('setor_responsavel', models.ForeignKey(verbose_name='Setor respons\xe1vel', to='servidores.Servico')),
+ ],
+ options={
+ 'ordering': ['prioridade', 'data_modificacao', 'data_criacao'],
+ 'verbose_name': 'ocorr\xeancia',
+ 'verbose_name_plural': 'ocorr\xeancias',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='TipoContato',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('descricao', models.CharField(max_length=50, verbose_name='Descri\xe7\xe3o')),
+ ],
+ options={
+ 'verbose_name': 'Tipo de contato',
+ 'verbose_name_plural': 'Tipos de contato',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='ocorrencia',
+ name='tipo_contato',
+ field=models.ForeignKey(verbose_name='Tipo de contato', to='ocorrencias.TipoContato'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='comentario',
+ name='ocorrencia',
+ field=models.ForeignKey(verbose_name='Ocorr\xeancia', to='ocorrencias.Ocorrencia'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='comentario',
+ name='usuario',
+ field=models.ForeignKey(verbose_name='Usu\xe1rio', to='servidores.Servidor'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='anexo',
+ name='ocorrencia',
+ field=models.ForeignKey(verbose_name='ocorr\xeancia', to='ocorrencias.Ocorrencia'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/ocorrencias/migrations/__init__.py b/sigi/apps/ocorrencias/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/parlamentares/migrations/0001_initial.py b/sigi/apps/parlamentares/migrations/0001_initial.py
new file mode 100644
index 0000000..e786663
--- /dev/null
+++ b/sigi/apps/parlamentares/migrations/0001_initial.py
@@ -0,0 +1,202 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('casas', '__first__'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Cargo',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('descricao', models.CharField(max_length=30, verbose_name='descri\xe7\xe3o')),
+ ],
+ options={
+ 'ordering': ('descricao',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Coligacao',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=50)),
+ ('numero_votos', models.PositiveIntegerField(null=True, verbose_name='n\xfamero de votos', blank=True)),
+ ],
+ options={
+ 'ordering': ('legislatura', 'nome'),
+ 'verbose_name': 'coliga\xe7\xe3o',
+ 'verbose_name_plural': 'coliga\xe7\xf5es',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='ComposicaoColigacao',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('coligacao', models.ForeignKey(verbose_name='coliga\xe7\xe3o', to='parlamentares.Coligacao')),
+ ],
+ options={
+ 'verbose_name': 'composi\xe7\xe3o da coliga\xe7\xe3o',
+ 'verbose_name_plural': 'composi\xe7\xf5es das coliga\xe7\xf5es',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Legislatura',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('numero', models.PositiveSmallIntegerField(verbose_name='n\xfamero legislatura')),
+ ('data_inicio', models.DateField(verbose_name='in\xedcio')),
+ ('data_fim', models.DateField(verbose_name='fim')),
+ ('data_eleicao', models.DateField(verbose_name='data da elei\xe7\xe3o')),
+ ('total_parlamentares', models.PositiveIntegerField(verbose_name='Total de parlamentares')),
+ ('casa_legislativa', models.ForeignKey(to='casas.CasaLegislativa')),
+ ],
+ options={
+ 'ordering': ['casa_legislativa__municipio__uf__sigla', '-data_inicio'],
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Mandato',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('inicio_mandato', models.DateField(verbose_name='in\xedcio de mandato')),
+ ('fim_mandato', models.DateField(verbose_name='fim de mandato')),
+ ('is_afastado', models.BooleanField(default=False, help_text='Marque caso parlamentar n\xe3o esteja ativo.', verbose_name='afastado')),
+ ('cargo', models.ForeignKey(to='parlamentares.Cargo')),
+ ('legislatura', models.ForeignKey(to='parlamentares.Legislatura')),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='MembroMesaDiretora',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('cargo', models.ForeignKey(to='parlamentares.Cargo')),
+ ],
+ options={
+ 'ordering': ('parlamentar',),
+ 'verbose_name': 'membro de Mesa Diretora',
+ 'verbose_name_plural': 'membros de Mesa Diretora',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='MesaDiretora',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ],
+ options={
+ 'verbose_name': 'Mesa Diretora',
+ 'verbose_name_plural': 'Mesas Diretoras',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Parlamentar',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome_completo', models.CharField(max_length=128)),
+ ('nome_parlamentar', models.CharField(max_length=35, blank=True)),
+ ('foto', models.ImageField(height_field=b'foto_altura', width_field=b'foto_largura', upload_to=b'fotos/parlamentares', blank=True)),
+ ('foto_largura', models.SmallIntegerField(null=True, editable=False)),
+ ('foto_altura', models.SmallIntegerField(null=True, editable=False)),
+ ('sexo', models.CharField(max_length=1, choices=[(b'M', 'Masculino'), (b'F', 'Feminino')])),
+ ('data_nascimento', models.DateField(null=True, verbose_name='data de nascimento', blank=True)),
+ ('email', models.EmailField(max_length=75, verbose_name='e-mail', blank=True)),
+ ('pagina_web', models.URLField(verbose_name='p\xe1gina web', blank=True)),
+ ],
+ options={
+ 'ordering': ('nome_completo',),
+ 'verbose_name_plural': 'parlamentares',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Partido',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=50)),
+ ('sigla', models.CharField(max_length=10)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='SessaoLegislativa',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('numero', models.PositiveSmallIntegerField(unique=True, verbose_name='n\xfamero da sess\xe3o')),
+ ('tipo', models.CharField(default=b'O', max_length=1, choices=[(b'O', 'Ordin\xe1ria'), (b'E', 'Extraordin\xe1ria')])),
+ ('data_inicio', models.DateField(verbose_name='in\xedcio')),
+ ('data_fim', models.DateField(verbose_name='fim')),
+ ('data_inicio_intervalo', models.DateField(null=True, verbose_name='in\xedcio de intervalo', blank=True)),
+ ('data_fim_intervalo', models.DateField(null=True, verbose_name='fim de intervalo', blank=True)),
+ ('legislatura', models.ForeignKey(to='parlamentares.Legislatura')),
+ ('mesa_diretora', models.ForeignKey(verbose_name='Mesa Diretora', to='parlamentares.MesaDiretora')),
+ ],
+ options={
+ 'ordering': ('legislatura', 'numero'),
+ 'verbose_name': 'Sess\xe3o Legislativa',
+ 'verbose_name_plural': 'Sess\xf5es Legislativas',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='membromesadiretora',
+ name='mesa_diretora',
+ field=models.ForeignKey(to='parlamentares.MesaDiretora'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='membromesadiretora',
+ name='parlamentar',
+ field=models.ForeignKey(to='parlamentares.Parlamentar'),
+ preserve_default=True,
+ ),
+ migrations.AlterUniqueTogether(
+ name='membromesadiretora',
+ unique_together=set([('cargo', 'mesa_diretora')]),
+ ),
+ migrations.AddField(
+ model_name='mandato',
+ name='parlamentar',
+ field=models.ForeignKey(to='parlamentares.Parlamentar'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='mandato',
+ name='partido',
+ field=models.ForeignKey(to='parlamentares.Partido'),
+ preserve_default=True,
+ ),
+ migrations.AlterUniqueTogether(
+ name='legislatura',
+ unique_together=set([('casa_legislativa', 'numero')]),
+ ),
+ migrations.AddField(
+ model_name='composicaocoligacao',
+ name='partido',
+ field=models.ForeignKey(to='parlamentares.Partido'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='coligacao',
+ name='legislatura',
+ field=models.ForeignKey(to='parlamentares.Legislatura'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/parlamentares/migrations/__init__.py b/sigi/apps/parlamentares/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/saberes/migrations/0001_initial.py b/sigi/apps/saberes/migrations/0001_initial.py
new file mode 100644
index 0000000..0b4574f
--- /dev/null
+++ b/sigi/apps/saberes/migrations/0001_initial.py
@@ -0,0 +1,44 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='CategoriasInteresse',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('prefixo', models.CharField(help_text='Identifica as categorias no Moodle (campo idnumber) relacionadas a este interesse', max_length=100, verbose_name='Prefixo das categorias no Moodle')),
+ ('descricao', models.CharField(max_length=100, verbose_name='Descri\xe7\xe3o')),
+ ('sigla', models.CharField(max_length=20, verbose_name='Sigla')),
+ ('coorte', models.BooleanField(default=False, help_text='Usa cohorte para calcular o n\xfamero de matr\xedculas/alunos', verbose_name='Usa Cohorte')),
+ ('apurar_alunos', models.BooleanField(default=False, help_text='Indica que deve-se verificar o perfil da inscri\xe7\xe3o para saber se \xe9 um aluno ou se a matr\xedcula foi rejeitada', verbose_name='Apurar alunos')),
+ ('apurar_conclusao', models.BooleanField(default=False, help_text='Indica se o dashboard mostrar\xe1 o n\xfamero de alunos aprovados, reprovados e desistentes', verbose_name='Apurar conclus\xe3o')),
+ ],
+ options={
+ 'verbose_name': 'Categorias de interesse',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='PainelItem',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('painel', models.CharField(max_length=255)),
+ ('descricao', models.CharField(max_length=255)),
+ ('help_text', models.CharField(max_length=255)),
+ ('valor', models.IntegerField()),
+ ('percentual', models.FloatField(null=True)),
+ ],
+ options={
+ 'ordering': ['pk'],
+ },
+ bases=(models.Model,),
+ ),
+ ]
diff --git a/sigi/apps/saberes/migrations/__init__.py b/sigi/apps/saberes/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/servicos/migrations/0001_initial.py b/sigi/apps/servicos/migrations/0001_initial.py
new file mode 100644
index 0000000..c0aebb2
--- /dev/null
+++ b/sigi/apps/servicos/migrations/0001_initial.py
@@ -0,0 +1,142 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import datetime
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('casas', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='CasaManifesta',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('data_manifestacao', models.DateTimeField(auto_now_add=True)),
+ ('data_atualizacao', models.DateTimeField(auto_now=True)),
+ ('informante', models.CharField(max_length=100, verbose_name='Nome do informante', blank=True)),
+ ('cargo', models.CharField(max_length=100, verbose_name='Cargo do informante', blank=True)),
+ ('email', models.EmailField(max_length=75, verbose_name='E-mail de contato', blank=True)),
+ ('casa_legislativa', models.OneToOneField(to='casas.CasaLegislativa')),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='LogServico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('descricao', models.CharField(max_length=60, verbose_name='Breve descri\xe7\xe3o da a\xe7\xe3o')),
+ ('data', models.DateField(default=datetime.date.today, verbose_name='Data da a\xe7\xe3o')),
+ ('log', models.TextField(verbose_name='Log da a\xe7\xe3o')),
+ ],
+ options={
+ 'verbose_name': 'Log do servi\xe7o',
+ 'verbose_name_plural': 'Logs do servi\xe7o',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='RegistroServico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('produto', models.CharField(max_length=50)),
+ ('versao', models.CharField(max_length=30)),
+ ('url', models.URLField()),
+ ('data_registro', models.DateTimeField(auto_now=True)),
+ ],
+ options={
+ 'verbose_name_plural': 'Registro de servi\xe7os',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Servico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('url', models.URLField(verbose_name='URL do servi\xe7o', blank=True)),
+ ('hospedagem_interlegis', models.BooleanField(default=False, verbose_name='Hospedagem no Interlegis?')),
+ ('nome_servidor', models.CharField(help_text='Se hospedado no Interlegis, informe o nome do servidor.
Sen\xe3o, informe o nome do provedor de servi\xe7os.', max_length=60, verbose_name='Hospedado em', blank=True)),
+ ('porta_servico', models.PositiveSmallIntegerField(null=True, verbose_name='Porta de servi\xe7o (inst\xe2ncia)', blank=True)),
+ ('senha_inicial', models.CharField(max_length=33, verbose_name='Senha inicial', blank=True)),
+ ('data_ativacao', models.DateField(default=datetime.date.today, verbose_name='Data de ativa\xe7\xe3o')),
+ ('data_alteracao', models.DateField(auto_now=True, verbose_name='Data da \xfaltima altera\xe7\xe3o', null=True)),
+ ('data_desativacao', models.DateField(null=True, verbose_name='Data de desativa\xe7\xe3o', blank=True)),
+ ('motivo_desativacao', models.TextField(verbose_name='Motivo da desativa\xe7\xe3o', blank=True)),
+ ('data_ultimo_uso', models.DateField(help_text='Data em que o servi\xe7o foi utilizado pela Casa Legislativa pela \xfaltima vez
N\xc3O \xc9 ATUALIZADO AUTOMATICAMENTE!', null=True, verbose_name='Data da \xfaltima utiliza\xe7\xe3o', blank=True)),
+ ('erro_atualizacao', models.CharField(help_text='Erro ocorrido na \xfaltima tentativa de atualizar a data de \xfaltimo acesso', max_length=200, verbose_name='Erro na atualiza\xe7\xe3o', blank=True)),
+ ('casa_legislativa', models.ForeignKey(verbose_name='Casa Legislativa', to='casas.CasaLegislativa')),
+ ('contato_administrativo', models.ForeignKey(related_name=b'contato_administrativo', verbose_name='Contato administrativo', to='casas.Funcionario')),
+ ('contato_tecnico', models.ForeignKey(related_name=b'contato_tecnico', verbose_name='Contato t\xe9cnico', to='casas.Funcionario')),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='ServicoManifesto',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('url', models.URLField(blank=True)),
+ ('hospedagem_interlegis', models.BooleanField(default=False, verbose_name='Hospedagem no Interlegis?')),
+ ('casa_manifesta', models.ForeignKey(to='servicos.CasaManifesta')),
+ ],
+ options={
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='TipoServico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=60, verbose_name='Nome')),
+ ('sigla', models.CharField(max_length=b'12', verbose_name='Sigla')),
+ ('string_pesquisa', models.CharField(help_text='Sufixo para pesquisa RSS para averiguar a data da \xfaltima atualiza\xe7\xe3o do servi\xe7o', max_length=200, verbose_name='String de pesquisa', blank=True)),
+ ('template_email_ativa', models.TextField(help_text='Use:
\n {url} para incluir a URL do servi\xe7o,
\n {senha} para incluir a senha inicial do servi\xe7o', verbose_name='Template de email de ativa\xe7\xe3o', blank=True)),
+ ('template_email_altera', models.TextField(help_text='Use:
\n {url} para incluir a URL do servi\xe7o,
\n {senha} para incluir a senha inicial do servi\xe7o', verbose_name='Template de email de altera\xe7\xe3o', blank=True)),
+ ('template_email_desativa', models.TextField(help_text='Use:
\n {url} para incluir a URL do servi\xe7o,
\n {senha} para incluir a senha inicial do servi\xe7o
{motivo} para incluir o motivo da desativa\xe7\xe3o do servi\xe7o', verbose_name='Template de email de desativa\xe7\xe3o', blank=True)),
+ ],
+ options={
+ 'verbose_name': 'Tipo de servi\xe7o',
+ 'verbose_name_plural': 'Tipos de servi\xe7o',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='servicomanifesto',
+ name='servico',
+ field=models.ForeignKey(to='servicos.TipoServico'),
+ preserve_default=True,
+ ),
+ migrations.AlterUniqueTogether(
+ name='servicomanifesto',
+ unique_together=set([('casa_manifesta', 'servico')]),
+ ),
+ migrations.AddField(
+ model_name='servico',
+ name='tipo_servico',
+ field=models.ForeignKey(verbose_name='Tipo de servi\xe7o', to='servicos.TipoServico'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='logservico',
+ name='servico',
+ field=models.ForeignKey(verbose_name='Servi\xe7o', to='servicos.Servico'),
+ preserve_default=True,
+ ),
+ migrations.CreateModel(
+ name='CasaAtendida',
+ fields=[
+ ],
+ options={
+ 'proxy': True,
+ 'verbose_name_plural': 'Casas atendidas',
+ },
+ bases=('casas.casalegislativa',),
+ ),
+ ]
diff --git a/sigi/apps/servicos/migrations/__init__.py b/sigi/apps/servicos/migrations/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/sigi/apps/servidores/migrations/0001_initial.py b/sigi/apps/servidores/migrations/0001_initial.py
new file mode 100644
index 0000000..cae4cc6
--- /dev/null
+++ b/sigi/apps/servidores/migrations/0001_initial.py
@@ -0,0 +1,152 @@
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+from django.conf import settings
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='Ferias',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('inicio_ferias', models.DateField(verbose_name='in\xedcio das f\xe9rias')),
+ ('fim_ferias', models.DateField(verbose_name='fim das f\xe9rias')),
+ ('obs', models.TextField(null=True, verbose_name='observa\xe7\xe3o', blank=True)),
+ ],
+ options={
+ 'verbose_name': 'f\xe9rias',
+ 'verbose_name_plural': 'f\xe9rias',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Funcao',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('funcao', models.CharField(max_length=250, null=True)),
+ ('cargo', models.CharField(max_length=250, null=True)),
+ ('inicio_funcao', models.DateField(null=True, verbose_name='in\xedcio da fun\xe7\xe3o')),
+ ('fim_funcao', models.DateField(null=True, verbose_name='fim da fun\xe7\xe3o', blank=True)),
+ ('descricao', models.TextField(null=True, verbose_name='descri\xe7\xe3o', blank=True)),
+ ('bap_entrada', models.CharField(max_length=50, null=True, verbose_name=b'BAP de entrada', blank=True)),
+ ('data_bap_entrada', models.DateField(null=True, verbose_name=b'data BAP de entrada', blank=True)),
+ ('bap_saida', models.CharField(max_length=50, null=True, verbose_name='BAP de sa\xedda', blank=True)),
+ ('data_bap_saida', models.DateField(null=True, verbose_name='data BAP de sa\xedda', blank=True)),
+ ],
+ options={
+ 'verbose_name': 'fun\xe7\xe3o',
+ 'verbose_name_plural': 'fun\xe7\xf5es',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Licenca',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('inicio_licenca', models.DateField(verbose_name='in\xedcio da licen\xe7a')),
+ ('fim_licenca', models.DateField(verbose_name='fim da licen\xe7a')),
+ ('obs', models.TextField(null=True, verbose_name='observa\xe7\xe3o', blank=True)),
+ ],
+ options={
+ 'verbose_name': 'licen\xe7a',
+ 'verbose_name_plural': 'licen\xe7as',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Servico',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=250, null=True, verbose_name='Setor')),
+ ('sigla', models.CharField(max_length=10, null=True)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ 'verbose_name': 'servi\xe7o',
+ 'verbose_name_plural': 'servi\xe7os',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Servidor',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome_completo', models.CharField(max_length=128)),
+ ('apelido', models.CharField(max_length=50, blank=True)),
+ ('foto', models.ImageField(height_field=b'foto_altura', width_field=b'foto_largura', upload_to=b'fotos/servidores', blank=True)),
+ ('foto_largura', models.SmallIntegerField(null=True, editable=False)),
+ ('foto_altura', models.SmallIntegerField(null=True, editable=False)),
+ ('sexo', models.CharField(blank=True, max_length=1, null=True, choices=[(b'M', 'Masculino'), (b'F', 'Feminino')])),
+ ('data_nascimento', models.DateField(null=True, verbose_name=b'data de nascimento', blank=True)),
+ ('matricula', models.CharField(max_length=25, null=True, verbose_name='matr\xedcula', blank=True)),
+ ('turno', models.CharField(blank=True, max_length=1, null=True, choices=[(b'M', 'Manh\xe3'), (b'T', 'Tarde'), (b'N', 'Noite')])),
+ ('de_fora', models.BooleanField(default=False)),
+ ('data_nomeacao', models.DateField(null=True, verbose_name='data de nomea\xe7\xe3o', blank=True)),
+ ('ato_exoneracao', models.CharField(max_length=150, null=True, verbose_name='ato de exonera\xe7\xe3o', blank=True)),
+ ('ato_numero', models.CharField(max_length=150, null=True, verbose_name='ato de exonera\xe7\xe3o', blank=True)),
+ ('cpf', models.CharField(max_length=11, null=True, verbose_name=b'CPF', blank=True)),
+ ('rg', models.CharField(max_length=25, null=True, verbose_name=b'RG', blank=True)),
+ ('obs', models.TextField(null=True, verbose_name='observa\xe7\xe3o', blank=True)),
+ ('apontamentos', models.TextField(null=True, verbose_name='apontamentos', blank=True)),
+ ('email_pessoal', models.EmailField(max_length=75, null=True, verbose_name=b'email pessoal', blank=True)),
+ ('ramal', models.CharField(max_length=25, null=True, blank=True)),
+ ('servico', models.ForeignKey(blank=True, to='servidores.Servico', null=True)),
+ ('user', models.ForeignKey(to=settings.AUTH_USER_MODEL, unique=True)),
+ ],
+ options={
+ 'ordering': ('nome_completo',),
+ 'verbose_name_plural': 'servidores',
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='Subsecretaria',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('nome', models.CharField(max_length=250, null=True)),
+ ('sigla', models.CharField(max_length=10, null=True)),
+ ('responsavel', models.ForeignKey(related_name=b'diretor', to='servidores.Servidor', null=True)),
+ ],
+ options={
+ 'ordering': ('nome',),
+ },
+ bases=(models.Model,),
+ ),
+ migrations.AddField(
+ model_name='servico',
+ name='responsavel',
+ field=models.ForeignKey(related_name=b'chefe', to='servidores.Servidor', null=True),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='servico',
+ name='subsecretaria',
+ field=models.ForeignKey(to='servidores.Subsecretaria', null=True),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='licenca',
+ name='servidor',
+ field=models.ForeignKey(to='servidores.Servidor'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='funcao',
+ name='servidor',
+ field=models.ForeignKey(to='servidores.Servidor'),
+ preserve_default=True,
+ ),
+ migrations.AddField(
+ model_name='ferias',
+ name='servidor',
+ field=models.ForeignKey(to='servidores.Servidor'),
+ preserve_default=True,
+ ),
+ ]
diff --git a/sigi/apps/servidores/migrations/__init__.py b/sigi/apps/servidores/migrations/__init__.py
new file mode 100644
index 0000000..e69de29