# Generated by Django 5.0.2 on 2024-02-27 08:50

import django.core.validators
import django.db.models.deletion
import uuid
from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='Applicant',
            fields=[
                ('u_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('name', models.TextField(blank=True, verbose_name="Applicant's Name")),
                ('email', models.EmailField(blank=True, max_length=254, verbose_name="Applicant's Email")),
                ('resume', models.TextField(verbose_name="Applicant's Resume Path")),
                ('resume_text', models.TextField(blank=True, verbose_name="Applicant's Resume Text Content")),
                ('relevance', models.IntegerField(default=0, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100)], verbose_name='Relevance Score')),
            ],
        ),
        migrations.CreateModel(
            name='Document',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('document', models.FileField(upload_to='resume/', validators=[django.core.validators.FileExtensionValidator(allowed_extensions=['pdf'])], verbose_name="Applicant's Resume")),
            ],
        ),
        migrations.CreateModel(
            name='Job',
            fields=[
                ('u_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('job_title', models.TextField(verbose_name='Job Title')),
                ('job_description', models.TextField(verbose_name='Job Description')),
            ],
        ),
        migrations.CreateModel(
            name='College',
            fields=[
                ('u_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('name', models.TextField(blank=True, verbose_name='College Name')),
                ('branch', models.TextField(blank=True, verbose_name='Branch of Study')),
                ('degree', models.TextField(blank=True, verbose_name='Degree')),
                ('start_date', models.CharField(blank=True, max_length=7, verbose_name='Start Date')),
                ('end_date', models.CharField(blank=True, max_length=7, verbose_name='End Date')),
                ('applicant', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='college', to='api.applicant')),
            ],
        ),
        migrations.AddField(
            model_name='applicant',
            name='job_applied',
            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.job', verbose_name='Job Applied For'),
        ),
        migrations.CreateModel(
            name='ProfessionalExperience',
            fields=[
                ('u_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('role', models.TextField(blank=True, verbose_name='Role')),
                ('organization', models.TextField(blank=True, verbose_name='Organization Name')),
                ('description', models.TextField(blank=True, verbose_name='Description')),
                ('tech_stack', models.JSONField(blank=True, verbose_name='Tech Stack Used')),
                ('time_duration', models.JSONField(blank=True, verbose_name='Time Duration')),
                ('relevance', models.IntegerField(default=0, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(10)], verbose_name='Relevance Score')),
                ('applicant', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='professional_experiences', to='api.applicant')),
            ],
        ),
        migrations.CreateModel(
            name='Project',
            fields=[
                ('u_id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)),
                ('title', models.TextField(blank=True, verbose_name='Project Title')),
                ('description', models.TextField(blank=True, verbose_name='Project Description')),
                ('tech_stack', models.JSONField(blank=True, verbose_name='Tech Stack Used')),
                ('time_duration', models.JSONField(blank=True, verbose_name='Time Duration')),
                ('relevance', models.IntegerField(default=0, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(5)], verbose_name='Relevance Score')),
                ('applicant', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='projects', to='api.applicant')),
            ],
        ),
    ]
