From 558ea98fa11603c646d3b93077c6fccd71ec2226 Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Wed, 3 Mar 2021 08:30:20 +1100 Subject: [PATCH] Add purchase order and sales order to search results --- InvenTree/order/api.py | 19 +++++++++++++++++++ InvenTree/templates/InvenTree/search.html | 16 ++++++++++++++++ InvenTree/templates/js/order.js | 8 ++++++-- 3 files changed, 41 insertions(+), 2 deletions(-) diff --git a/InvenTree/order/api.py b/InvenTree/order/api.py index 62225f93ea..e98302aab2 100644 --- a/InvenTree/order/api.py +++ b/InvenTree/order/api.py @@ -137,6 +137,13 @@ class POList(generics.ListCreateAPIView): 'supplier', ] + search_fields = [ + 'reference', + 'supplier__name', + 'supplier_reference', + 'description', + ] + ordering_fields = [ 'creation_date', 'reference', @@ -356,6 +363,18 @@ class SOList(generics.ListCreateAPIView): ordering_fields = [ 'creation_date', 'reference' + 'customer__name', + 'status', + 'target_date', + 'line_items', + 'shipment_date', + ] + + search_fields = [ + 'customer__name', + 'reference', + 'description', + 'customer_reference', ] ordering = '-creation_date' diff --git a/InvenTree/templates/InvenTree/search.html b/InvenTree/templates/InvenTree/search.html index 4fc7442856..355865d3ee 100644 --- a/InvenTree/templates/InvenTree/search.html +++ b/InvenTree/templates/InvenTree/search.html @@ -283,6 +283,14 @@ InvenTree | {% trans "Search Results" %} } }); + addItem('purchase-order', '{% trans "Purchase Orders" %}', 'fa-shopping-cart'); + + loadPurchaseOrderTable('#table-purchase-order', { + params: { + search: '{{ query }}', + } + }); + addItem('manufacturer', '{% trans "Manufacturers" %}', 'fa-industry'); loadCompanyTable('#table-manufacturer', "{% url 'api-company-list' %}", { @@ -305,6 +313,14 @@ InvenTree | {% trans "Search Results" %} } }); + addItem('sales-orders', '{% trans "Sales Orders" %}', 'fa-truck'); + + loadSalesOrderTable('#table-sales-orders', { + params: { + search: '{{ query }}', + } + }); + {% endif %} {% endif %} diff --git a/InvenTree/templates/js/order.js b/InvenTree/templates/js/order.js index 2782aa176f..7662ad71ec 100644 --- a/InvenTree/templates/js/order.js +++ b/InvenTree/templates/js/order.js @@ -124,6 +124,8 @@ function loadPurchaseOrderTable(table, options) { filters[key] = options.params[key]; } + options.url = options.url || '{% url "api-po-list" %}'; + setupFilterList("purchaseorder", $(table)); $(table).inventreeTable({ @@ -218,6 +220,8 @@ function loadSalesOrderTable(table, options) { filters[key] = options.params[key]; } + options.url = options.url || '{% url "api-so-list" %}'; + setupFilterList("salesorder", $(table)); $(table).inventreeTable({ @@ -258,6 +262,7 @@ function loadSalesOrderTable(table, options) { }, { sortable: true, + sortName: 'customer__name', field: 'customer_detail', title: '{% trans "Customer" %}', formatter: function(value, row, index, field) { @@ -267,10 +272,9 @@ function loadSalesOrderTable(table, options) { { field: 'customer_reference', title: '{% trans "Customer Reference" %}', - sotrable: true, }, { - sortable: true, + sortable: false, field: 'description', title: '{% trans "Description" %}', },