# Generated by Django 6.0.3 on 2026-03-29 14:16 import django.db.models.deletion from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='MaterialCategory', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, unique=True, verbose_name='Название категории')), ], options={ 'verbose_name': 'Категория материала', 'verbose_name_plural': 'Категории материалов', }, ), migrations.CreateModel( name='SteelGrade', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, unique=True, verbose_name='Марка стали')), ('gost_standard', models.CharField(blank=True, help_text='Основной стандарт для этой марки', max_length=255, verbose_name='ГОСТ/ТУ')), ('certificate_pdf', models.FileField(blank=True, null=True, upload_to='certificates/', verbose_name='Сертификат/ГОСТ (PDF)')), ], options={ 'verbose_name': 'Марка стали', 'verbose_name_plural': 'Марки стали', }, ), migrations.CreateModel( name='Material', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255, verbose_name='Наименование (размер/характеристики)')), ('full_name', models.CharField(blank=True, help_text='Генерируется автоматически, если пусто', max_length=500, verbose_name='Полное наименование')), ('category', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='warehouse.materialcategory', verbose_name='Категория')), ('steel_grade', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='warehouse.steelgrade', verbose_name='Марка стали')), ], options={ 'verbose_name': 'Материал (номенклатура)', 'verbose_name_plural': 'Материалы', }, ), ]