# Generated by Django 4.1.2 on 2025-04-16 22:09

from django.db import migrations, models


class Migration(migrations.Migration):

    initial = True

    dependencies = [
    ]

    operations = [
        migrations.CreateModel(
            name='DeviceModel',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('device_id', models.CharField(max_length=255, verbose_name='Device ID')),
                ('device_name', models.CharField(max_length=255, verbose_name='Device Name')),
                ('device_type', models.CharField(max_length=255, verbose_name='Device Type')),
                ('ip_address', models.CharField(max_length=255, verbose_name='IP Address')),
                ('port', models.IntegerField(verbose_name='Port')),
                ('status', models.CharField(max_length=255, verbose_name='Status')),
                ('create_time', models.DateTimeField(auto_now_add=True, verbose_name='Create Time')),
                ('update_time', models.DateTimeField(auto_now=True, null=True, verbose_name='Update Time')),
            ],
            options={
                'verbose_name': 'Device',
                'verbose_name_plural': 'Device',
                'db_table': 'device',
                'ordering': ['-id'],
            },
        ),
        migrations.CreateModel(
            name='LocationChangeLog',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('operation_type', models.CharField(choices=[('put', '上架'), ('pick', '下架'), ('move_in', '移入'), ('move_out', '移出')], max_length=10, verbose_name='操作类型')),
                ('timestamp', models.DateTimeField(auto_now_add=True, verbose_name='操作时间')),
            ],
            options={
                'verbose_name': 'Location Change Log',
                'verbose_name_plural': 'Location Change Log',
                'db_table': 'location_change_log',
                'ordering': ['-id'],
            },
        ),
        migrations.CreateModel(
            name='LocationContainerLink',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('put_time', models.DateTimeField(auto_now_add=True, verbose_name='上架时间')),
                ('operator', models.CharField(max_length=50, verbose_name='操作人')),
                ('is_active', models.BooleanField(default=True, verbose_name='是否有效')),
            ],
            options={
                'verbose_name': 'Location-Container Link',
                'verbose_name_plural': 'Location-Container Link',
                'db_table': 'location_container_link',
                'ordering': ['-id'],
            },
        ),
        migrations.CreateModel(
            name='LocationGroupModel',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('warehouse_code', models.CharField(max_length=50, verbose_name='仓库编码')),
                ('group_name', models.CharField(max_length=50, verbose_name='库位组名称')),
                ('group_type', models.CharField(choices=[('T5', '5货位'), ('T4', '4货位'), ('S4', '4单货位'), ('T2', '2货位'), ('T1', '散货位')], max_length=50, verbose_name='库位组类型')),
                ('group_code', models.CharField(max_length=50, verbose_name='库位组编码')),
                ('status', models.CharField(choices=[('available', '可用'), ('occupied', '占用'), ('disabled', '禁用'), ('reserved', '预留'), ('maintenance', '维护中')], default='available', max_length=20, verbose_name='库位状态')),
                ('max_capacity', models.PositiveIntegerField(verbose_name='最大容量')),
                ('current_quantity', models.PositiveIntegerField(default=0, verbose_name='当前托盘数')),
                ('current_goods_quantity', models.PositiveIntegerField(default=0, verbose_name='当前货物数')),
                ('current_batch', models.CharField(default='', max_length=50, verbose_name='当前批次')),
                ('current_goods_code', models.CharField(default='', max_length=50, verbose_name='当前货物编码')),
            ],
            options={
                'verbose_name': 'Location Group',
                'verbose_name_plural': 'Location Group',
                'db_table': 'location_group',
                'ordering': ['-id'],
            },
        ),
        migrations.CreateModel(
            name='LocationModel',
            fields=[
                ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('warehouse_code', models.CharField(max_length=255, verbose_name='Warehouse code')),
                ('warehouse_name', models.CharField(max_length=255, verbose_name='Warehouse Name')),
                ('shelf_type', models.CharField(default='storage', max_length=255, verbose_name='Shelf Type')),
                ('row', models.IntegerField(verbose_name='Row')),
                ('col', models.IntegerField(verbose_name='Column')),
                ('layer', models.IntegerField(verbose_name='Layer')),
                ('update_time', models.DateTimeField(auto_now=True, null=True, verbose_name='Update Time')),
                ('empty_label', models.BooleanField(default=True, verbose_name='Empty Flag')),
                ('location_code', models.CharField(max_length=20, unique=True, verbose_name='库位编码')),
                ('location_group', models.CharField(max_length=20, verbose_name='库位组')),
                ('location_type', models.CharField(choices=[('T5', '5货位'), ('T4', '4货位'), ('S4', '4单货位'), ('T2', '2货位'), ('T1', '散货位'), ('M1', '通道区'), ('E1', '提升机'), ('C1', '输送机'), ('B1', '充电桩')], max_length=3, verbose_name='货位类型')),
                ('status', models.CharField(choices=[('available', '可用'), ('occupied', '占用'), ('disabled', '禁用'), ('reserved', '预留'), ('maintenance', '维护中')], default='available', max_length=20, verbose_name='库位状态')),
                ('max_capacity', models.PositiveIntegerField(verbose_name='最大容量')),
                ('current_quantity', models.PositiveIntegerField(default=0, verbose_name='当前托盘数')),
                ('c_number', models.IntegerField(default=1, verbose_name='库位远近排序')),
                ('coordinate', models.CharField(max_length=50, verbose_name='三维坐标')),
                ('access_priority', models.IntegerField(default=0, help_text='值越大表示越远离主通道,应优先使用', verbose_name='访问优先级')),
                ('is_active', models.BooleanField(default=True, verbose_name='是否有效')),
            ],
            options={
                'verbose_name': 'Location',
                'verbose_name_plural': 'Location',
                'db_table': 'location',
                'ordering': ['-id'],
            },
        ),
    ]