diff --git a/myproject/orders/forms.py b/myproject/orders/forms.py index 75516d5..839ff2f 100644 --- a/myproject/orders/forms.py +++ b/myproject/orders/forms.py @@ -420,6 +420,17 @@ class OrderStatusForm(forms.ModelForm): self.fields['code'].widget.attrs['readonly'] = True self.fields['code'].help_text = "Код системного статуса нельзя менять" + # КРИТИЧНО: Блокируем изменение флагов is_positive_end и is_negative_end + # Эти флаги используются в сигналах для управления резервами и списаниями + # Изменение может привести к: + # - Неправильному освобождению резервов + # - Двойному резервированию товара + # - Блокировке товара навсегда + self.fields['is_positive_end'].disabled = True + self.fields['is_negative_end'].disabled = True + self.fields['is_positive_end'].help_text = "Нельзя изменять для системных статусов (влияет на резервирование)" + self.fields['is_negative_end'].help_text = "Нельзя изменять для системных статусов (влияет на резервирование)" + # === ВРЕМЕННЫЕ КОМПЛЕКТЫ === diff --git a/myproject/orders/templates/orders/status_form.html b/myproject/orders/templates/orders/status_form.html index 474fe22..ed0c905 100644 --- a/myproject/orders/templates/orders/status_form.html +++ b/myproject/orders/templates/orders/status_form.html @@ -15,8 +15,14 @@ {% endif %} {% if is_system %} -
- Это системный статус. Некоторые поля не могут быть изменены. +
+ + ВНИМАНИЕ! Это системный статус, используемый в бизнес-логике системы. +
{% endif %}