# Generated by Django 5.2.1 on 2025-05-29 10:19 import django.db.models.deletion from decimal import Decimal from django.conf import settings from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('name_en', models.CharField(max_length=200, verbose_name='Name (English)')), ('slug', models.SlugField(unique=True)), ], options={ 'verbose_name': 'Category', 'verbose_name_plural': 'Categories', }, ), migrations.CreateModel( name='DesignTemplate', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('name_en', models.CharField(max_length=200, verbose_name='Name (English)')), ('description', models.TextField(verbose_name='Description')), ('description_en', models.TextField(verbose_name='Description (English)')), ('image', models.ImageField(upload_to='designs/')), ('model_3d', models.FileField(blank=True, null=True, upload_to='3d_models/', verbose_name='3D Model')), ('created_at', models.DateTimeField(auto_now_add=True)), ], ), migrations.CreateModel( name='FursuitGallery', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('slug', models.SlugField(unique=True)), ('description', models.TextField(verbose_name='Description')), ('description_en', models.TextField(verbose_name='Description (English)')), ('created_at', models.DateTimeField(auto_now_add=True)), ], options={ 'verbose_name': 'Fursuit Gallery', 'verbose_name_plural': 'Fursuit Galleries', }, ), migrations.CreateModel( name='CustomerDesign', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200, verbose_name='Design Name')), ('design_file', models.FileField(upload_to='customer_designs/')), ('notes', models.TextField(blank=True, verbose_name='Notes')), ('created_at', models.DateTimeField(auto_now_add=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='GalleryImage', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('image', models.ImageField(upload_to='gallery/')), ('title', models.CharField(blank=True, max_length=200, verbose_name='Title')), ('description', models.TextField(blank=True, verbose_name='Description')), ('order', models.PositiveIntegerField(default=0)), ('created_at', models.DateTimeField(auto_now_add=True)), ('gallery', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='images', to='shop.fursuitgallery')), ], options={ 'ordering': ['order', 'created_at'], }, ), migrations.CreateModel( name='Order', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.CharField(choices=[('pending', 'Pending'), ('confirmed', 'Confirmed'), ('in_progress', 'In Progress'), ('completed', 'Completed'), ('cancelled', 'Cancelled')], default='pending', max_length=20)), ('payment_method', models.CharField(choices=[('paypal', 'PayPal'), ('credit_card', 'Credit Card'), ('bank_transfer', 'Bank Transfer')], max_length=20)), ('special_instructions', models.TextField(blank=True)), ('measurements', models.JSONField(blank=True, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('total_price', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=10)), ('customer_design', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='shop.customerdesign')), ('design_template', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='shop.designtemplate')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='OrderProgress', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=200, verbose_name='Title')), ('description', models.TextField(verbose_name='Description')), ('image', models.ImageField(blank=True, null=True, upload_to='progress/')), ('created_at', models.DateTimeField(auto_now_add=True)), ('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_updates', to='shop.order')), ], options={ 'ordering': ['-created_at'], }, ), migrations.CreateModel( name='Product', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('product_type', models.CharField(choices=[('fursuit', 'Fursuit'), ('printed', 'Printed Item')], default='printed', max_length=10, verbose_name='Product Type')), ('name', models.CharField(max_length=200, verbose_name='Name')), ('name_en', models.CharField(max_length=200, verbose_name='Name (English)')), ('description', models.TextField(verbose_name='Description')), ('description_en', models.TextField(verbose_name='Description (English)')), ('base_price', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=10, verbose_name='Base Price')), ('image', models.ImageField(upload_to='products/')), ('model_3d', models.FileField(blank=True, null=True, upload_to='3d_models/', verbose_name='3D Model')), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='shop.category')), ('gallery', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='shop.fursuitgallery')), ], ), migrations.AddField( model_name='order', name='product', field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='shop.product'), ), ]