# Generated by Django 3.2.4 on 2021-06-28 00:18

from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='Cliente',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('data_nascimento', models.DateField(help_text='Data de Nascimento')),
                ('email', models.EmailField(blank=True, help_text='Email do Cliente', max_length=256, null=True)),
                ('endereco', models.CharField(help_text='Endereço do Cliente', max_length=200)),
                ('nacionalidade', models.CharField(help_text='Nacionalidade do Cliente', max_length=20)),
                ('nome', models.CharField(help_text='Nome do Cliente', max_length=100)),
                ('telefone', models.CharField(blank=True, help_text='Número do telefone com DDD', max_length=13, null=True)),
                ('numero_identificacao', models.IntegerField(help_text='Número do Documento')),
                ('data_expedicao', models.DateField(help_text='Data de Expedição')),
                ('senha', models.CharField(help_text='Senha do cliente', max_length=20)),
            ],
        ),
        migrations.CreateModel(
            name='Empresa',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('nome', models.CharField(help_text='Nome da Empresa', max_length=100, null=True)),
                ('endereco', models.CharField(help_text='Endereço da Empresa', max_length=200, null=True)),
                ('telefone', models.CharField(blank=True, help_text='Número do telefone com DDD', max_length=15, null=True)),
                ('email', models.EmailField(help_text='Email da Empresa', max_length=256, null=True)),
                ('categoria', models.CharField(help_text='Categoria da empresa', max_length=100, null=True)),
            ],
        ),
        migrations.CreateModel(
            name='Estatistica',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('trimestre', models.CharField(help_text='Período correspondente ao cálculo', max_length=256)),
                ('clienteId', models.CharField(help_text='Id do cliente', max_length=256)),
                ('custoTotalCliente', models.FloatField(help_text='Custo total de um determinado cliente')),
                ('taxaOcupacaoQuartos', models.FloatField(help_text='Relação entre pessoas alojadas e capacidade máxima')),
                ('taxaQuartosVendidos', models.FloatField(help_text='Número de quartos vendidos em relação ao número total de quartos')),
                ('faturamentoDoTrimestre', models.FloatField(help_text='Total do faturamento referente ao trimestre')),
                ('faturamentoAnual', models.FloatField(help_text='Faturamento do ano')),
                ('clientePremium', models.CharField(help_text='Cliente com maior gasto', max_length=256)),
                ('ano', models.CharField(help_text='Ano', max_length=256)),
            ],
        ),
        migrations.CreateModel(
            name='Quarto',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('numero', models.CharField(default=0, help_text='Número do Quarto', max_length=4, unique=True)),
                ('capacidade', models.IntegerField(default=0, help_text='Capacidade do Quarto')),
                ('isDisponivel', models.BooleanField(default=True, help_text='Quarto está reservado')),
            ],
        ),
        migrations.CreateModel(
            name='Servico',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('tipo', models.CharField(max_length=20)),
                ('preco', models.DecimalField(decimal_places=2, help_text='Preço Diário', max_digits=8)),
                ('numero_pessoas', models.IntegerField(default=0, help_text='Número de pessoas')),
                ('estacao_ano', models.CharField(choices=[('Primavera', 'Primavera'), ('Outono', 'Outono'), ('Inverno', 'Inverno'), ('Verão', 'Verão')], help_text='Função do colaborador', max_length=50)),
            ],
        ),
        migrations.CreateModel(
            name='Reserva',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('cartao', models.CharField(help_text='Dados do Cartao', max_length=20)),
                ('data_entrada', models.DateTimeField(help_text='Data de Entrada')),
                ('data_saida', models.DateTimeField(help_text='Data de Saida')),
                ('quantidade_pessoas', models.IntegerField(help_text='Quantidade de Pessoas')),
                ('cliente', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='hotelifbaReservaCliente', to='hotelifba.cliente')),
                ('quarto', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='hotelifbaReservaQuarto', to='hotelifba.quarto')),
                ('servico', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='hotelifbaReservaServico', to='hotelifba.servico')),
            ],
        ),
        migrations.CreateModel(
            name='Estadia',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('checkin', models.DateTimeField(help_text='CheckIn')),
                ('checkout', models.DateTimeField(help_text='CheckOut')),
                ('data_saida_prevista', models.DateField(help_text='Data de Entrada')),
                ('quantidade_pessoas', models.IntegerField(help_text='Quantidade de Pessoas')),
                ('quantidade_quartos', models.IntegerField(help_text='Quantidade de Quartos')),
                ('servico_pretendido', models.CharField(help_text='Serviço Pretendido', max_length=20)),
                ('cartao', models.CharField(help_text='Dados do Cartao', max_length=20)),
                ('isMudancaDeQuarto', models.BooleanField(default=False, help_text='Solicitou mudança de quarto')),
                ('cliente', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='client', to='hotelifba.cliente')),
                ('reserva', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='client', to='hotelifba.reserva')),
                ('servico', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='hotelifbaEstadiaTipo', to='hotelifba.servico')),
            ],
        ),
        migrations.CreateModel(
            name='Empregado',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('nome', models.CharField(help_text='Nome do colaborador', max_length=100, null=True)),
                ('login', models.CharField(help_text='Login de acesso', max_length=200, null=True)),
                ('password', models.CharField(help_text='Senha de acesso', max_length=13)),
                ('funcao', models.CharField(choices=[('R', 'Recepcionista'), ('G', 'Gerente')], max_length=1)),
                ('empresa', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='client', to='hotelifba.empresa')),
            ],
        ),
    ]
