From 7dcc94b10664a5593cb3f8072e3bfa55a55fae0d Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Wed, 12 Feb 2020 12:44:52 +1100 Subject: [PATCH] Filter purchaseorder API by supplier part --- .../templates/company/supplier_part_orders.html | 14 +++++++++++++- InvenTree/order/api.py | 9 +++++++++ InvenTree/templates/stock_table.html | 2 -- 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/InvenTree/company/templates/company/supplier_part_orders.html b/InvenTree/company/templates/company/supplier_part_orders.html index 02d85b1d99..381a2941e9 100644 --- a/InvenTree/company/templates/company/supplier_part_orders.html +++ b/InvenTree/company/templates/company/supplier_part_orders.html @@ -10,10 +10,22 @@

{% trans "Supplier Part Orders" %}

-{% include "order/po_table.html" with orders=part.purchase_orders %} +
+
+ +
+
+ + +
{% endblock %} {% block js_ready %} {{ block.super }} + +loadPurchaseOrderTable($("#purchase-order-table"), { + url: "{% url 'api-po-list' %}?supplier_part={{ part.id }}", +}); + {% endblock %} \ No newline at end of file diff --git a/InvenTree/order/api.py b/InvenTree/order/api.py index 69580c3bb2..2e8deb05c8 100644 --- a/InvenTree/order/api.py +++ b/InvenTree/order/api.py @@ -18,6 +18,7 @@ from InvenTree.status_codes import OrderStatus import os from part.models import Part +from company.models import SupplierPart from .models import PurchaseOrder, PurchaseOrderLineItem from .serializers import POSerializer, POLineItemSerializer @@ -62,6 +63,14 @@ class POList(generics.ListCreateAPIView): except (Part.DoesNotExist, ValueError): pass + # Attempt to filter by supplier part + if 'supplier_part' in request.GET: + try: + supplier_part = SupplierPart.objects.get(pk=request.GET['supplier_part']) + queryset = queryset.filter(id__in=[p.id for p in supplier_part.purchase_orders()]) + except (ValueError, SupplierPart.DoesNotExist): + pass + data = queryset.values( 'pk', 'supplier', diff --git a/InvenTree/templates/stock_table.html b/InvenTree/templates/stock_table.html index b7e84f24dd..31eaf30bb7 100644 --- a/InvenTree/templates/stock_table.html +++ b/InvenTree/templates/stock_table.html @@ -3,9 +3,7 @@
- {% if 1 or not part or part.is_template == False %} - {% endif %}