86 lines
3.3 KiB
Python
86 lines
3.3 KiB
Python
# Generated by Codex on 2026-07-06
|
|
|
|
import django.db.models.deletion
|
|
from django.db import migrations, models
|
|
|
|
|
|
def seed_procurement_settings(apps, schema_editor):
|
|
ProcurementSettings = apps.get_model("procurement", "ProcurementSettings")
|
|
Department = apps.get_model("employees", "Department")
|
|
|
|
supply_department = Department.objects.filter(name__iexact="Снабжение").first()
|
|
ProcurementSettings.objects.get_or_create(
|
|
defaults={
|
|
"name": "Основные настройки",
|
|
"default_processing_department": supply_department,
|
|
}
|
|
)
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
dependencies = [
|
|
("procurement", "0013_procurementrequestview"),
|
|
]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name="ProcurementSettings",
|
|
fields=[
|
|
(
|
|
"id",
|
|
models.BigAutoField(
|
|
auto_created=True,
|
|
primary_key=True,
|
|
serialize=False,
|
|
verbose_name="ID",
|
|
),
|
|
),
|
|
(
|
|
"name",
|
|
models.CharField(
|
|
default="Основные настройки",
|
|
max_length=100,
|
|
verbose_name="Название",
|
|
),
|
|
),
|
|
(
|
|
"updated_at",
|
|
models.DateTimeField(
|
|
auto_now=True,
|
|
verbose_name="Обновлено",
|
|
),
|
|
),
|
|
(
|
|
"default_processing_department",
|
|
models.ForeignKey(
|
|
blank=True,
|
|
help_text="Этот отдел будет автоматически выбран в новой заявке.",
|
|
null=True,
|
|
on_delete=django.db.models.deletion.SET_NULL,
|
|
related_name="default_procurement_processing_settings",
|
|
to="employees.department",
|
|
verbose_name="Отдел-исполнитель по умолчанию",
|
|
),
|
|
),
|
|
(
|
|
"available_processing_departments",
|
|
models.ManyToManyField(
|
|
blank=True,
|
|
help_text=(
|
|
"Если список пуст, в форме заявки доступны все отделы. "
|
|
"Заполните список, чтобы ограничить выбор."
|
|
),
|
|
related_name="procurement_processing_settings",
|
|
to="employees.department",
|
|
verbose_name="Доступные отделы-исполнители",
|
|
),
|
|
),
|
|
],
|
|
options={
|
|
"verbose_name": "Настройки закупок",
|
|
"verbose_name_plural": "Настройки закупок",
|
|
},
|
|
),
|
|
migrations.RunPython(seed_procurement_settings, migrations.RunPython.noop),
|
|
]
|