diff --git a/backend/procurement/serializers.py b/backend/procurement/serializers.py index b60194b1..c6ef9420 100644 --- a/backend/procurement/serializers.py +++ b/backend/procurement/serializers.py @@ -231,7 +231,7 @@ class ProcurementRequestDetailSerializer(serializers.ModelSerializer): class ProcurementRequestCreateSerializer(serializers.ModelSerializer): """Сериализатор для создания заявки с позициями.""" - items = ProcurementItemCreateSerializer(many=True) + items = ProcurementItemCreateSerializer(many=True, required=False) class Meta: model = ProcurementRequest @@ -251,7 +251,7 @@ class ProcurementRequestCreateSerializer(serializers.ModelSerializer): def create(self, validated_data): """Создать заявку с позициями.""" - items_data = validated_data.pop('items') + items_data = validated_data.pop('items', []) request = self.context['request'] # Создаем заявку @@ -260,7 +260,7 @@ class ProcurementRequestCreateSerializer(serializers.ModelSerializer): **validated_data ) - # Создаем позиции + # Создаем позиции (если они переданы) for item_data in items_data: ProcurementItem.objects.create( request=procurement_request, diff --git a/backend/procurement/views_frontend.py b/backend/procurement/views_frontend.py index 7dfa488b..04bdff38 100644 --- a/backend/procurement/views_frontend.py +++ b/backend/procurement/views_frontend.py @@ -67,6 +67,7 @@ def dashboard(request): 'budget': budget, 'recent_requests': recent_requests, 'can_approve': can_approve, + 'departments': Department.objects.all().order_by('name'), } return render(request, 'procurement/dashboard.html', context) diff --git a/backend/templates/procurement/dashboard.html b/backend/templates/procurement/dashboard.html index 45337ac4..251f75d0 100644 --- a/backend/templates/procurement/dashboard.html +++ b/backend/templates/procurement/dashboard.html @@ -242,6 +242,16 @@ placeholder="Опишите необходимость закупки..." maxlength="2000"> +
+ + +
+
+ + {% for dept in departments %} + + {% endfor %} + +
+