# Generated by Django 6.1.1 on 2026-09-14 18:30

from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='Order',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('order_no', models.CharField(blank=True, db_index=True, max_length=20, unique=True, verbose_name='Order number')),
                ('customer_name', models.CharField(max_length=60, verbose_name='Customer name')),
                ('phone', models.CharField(db_index=True, help_text='Stored as 8801XXXXXXXXX', max_length=20, verbose_name='Mobile number')),
                ('phone_typed', models.CharField(blank=True, max_length=25, verbose_name='Number as typed')),
                ('address', models.TextField(max_length=300, verbose_name='Address')),
                ('country', models.CharField(default='BD', max_length=2, verbose_name='Country')),
                ('product_name', models.CharField(default='ইলেকট্রিক হট ওয়াটার ব্যাগ', max_length=120, verbose_name='Product')),
                ('product_name_en', models.CharField(blank=True, default='Electric Hot Water Bag', max_length=120, verbose_name='Product (English)')),
                ('product_sku', models.CharField(blank=True, default='EL-HWB-01', max_length=60, verbose_name='SKU / code')),
                ('color', models.CharField(blank=True, choices=[('grey', 'Grey'), ('purple', 'Purple'), ('brown', 'Brown'), ('pink', 'Pink'), ('red', 'Red')], db_index=True, help_text='Which colour the customer picked.', max_length=20, verbose_name='Colour')),
                ('quantity', models.PositiveSmallIntegerField(default=1, verbose_name='Quantity')),
                ('unit_price', models.PositiveIntegerField(default=0, verbose_name='Unit price (Tk)')),
                ('subtotal', models.PositiveIntegerField(default=0, verbose_name='Subtotal (Tk)')),
                ('delivery_area', models.CharField(choices=[('outside', 'Outside Dhaka'), ('inside', 'Inside Dhaka')], default='outside', max_length=10, verbose_name='Delivery area')),
                ('delivery_charge', models.PositiveIntegerField(default=0, verbose_name='Delivery charge (Tk)')),
                ('total', models.PositiveIntegerField(default=0, verbose_name='Total (Tk)')),
                ('gift', models.CharField(blank=True, max_length=120, verbose_name='Free gift')),
                ('gift_size', models.CharField(blank=True, max_length=10, verbose_name='T-shirt size')),
                ('status', models.CharField(choices=[('new', 'New'), ('confirmed', 'Confirmed'), ('shipped', 'Shipped'), ('delivered', 'Delivered'), ('cancelled', 'Cancelled')], db_index=True, default='new', max_length=12, verbose_name='Status')),
                ('admin_note', models.TextField(blank=True, help_text='Only you see this. The customer never does.', verbose_name='Your note')),
                ('ip_address', models.GenericIPAddressField(blank=True, null=True, verbose_name='IP address')),
                ('user_agent', models.CharField(blank=True, max_length=300, verbose_name='Browser')),
                ('created_at', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='Placed at')),
                ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Last updated')),
            ],
            options={
                'verbose_name': 'Order',
                'verbose_name_plural': 'Orders',
                'ordering': ['-created_at'],
            },
        ),
    ]
