# Generated by Django 6.0.3 on 2026-04-01 01:57 import django.db.models.deletion import django.utils.timezone from django.db import migrations from django.db import models class Migration(migrations.Migration): """Initial migration for chzzk app, creating ChzzkCampaign and ChzzkReward models.""" initial = True dependencies = [] operations = [ migrations.CreateModel( name="ChzzkCampaign", fields=[ ( "id", models.BigAutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("campaign_no", models.BigIntegerField()), ("title", models.CharField(max_length=255)), ("image_url", models.URLField()), ("description", models.TextField()), ("category_type", models.CharField(max_length=64)), ("category_id", models.CharField(max_length=128)), ("category_value", models.CharField(max_length=128)), ("pc_link_url", models.URLField()), ("mobile_link_url", models.URLField()), ("service_id", models.CharField(max_length=128)), ("state", models.CharField(max_length=64)), ("start_date", models.DateTimeField()), ("end_date", models.DateTimeField()), ("has_ios_based_reward", models.BooleanField()), ("drops_campaign_not_started", models.BooleanField()), ( "campaign_reward_type", models.CharField(blank=True, default="", max_length=64), ), ( "reward_type", models.CharField(blank=True, default="", max_length=64), ), ("account_link_url", models.URLField()), ("scraped_at", models.DateTimeField(default=django.utils.timezone.now)), ("source_api", models.CharField(max_length=16)), ("scrape_status", models.CharField(default="success", max_length=32)), ("raw_json_v1", models.JSONField(blank=True, null=True)), ("raw_json_v2", models.JSONField(blank=True, null=True)), ], options={ "ordering": ["-start_date"], }, ), migrations.CreateModel( name="ChzzkReward", fields=[ ( "id", models.BigAutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("reward_no", models.BigIntegerField()), ("image_url", models.URLField()), ("title", models.CharField(max_length=255)), ("reward_type", models.CharField(max_length=64)), ( "campaign_reward_type", models.CharField(blank=True, default="", max_length=64), ), ("condition_type", models.CharField(max_length=64)), ("condition_for_minutes", models.IntegerField()), ("ios_based_reward", models.BooleanField()), ("code_remaining_count", models.IntegerField()), ( "campaign", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="rewards", to="chzzk.chzzkcampaign", ), ), ], options={ "unique_together": {("campaign", "reward_no")}, }, ), ]