diff --git a/InvenTree/InvenTree/api_version.py b/InvenTree/InvenTree/api_version.py index 934e20526bb3..4a50d1331f41 100644 --- a/InvenTree/InvenTree/api_version.py +++ b/InvenTree/InvenTree/api_version.py @@ -2,11 +2,14 @@ # InvenTree API version -INVENTREE_API_VERSION = 131 +INVENTREE_API_VERSION = 132 """ Increment this API version number whenever there is a significant change to the API that any clients need to know about +v132 -> 2023-09-07 : https://github.com/inventree/InvenTree/pull/5515 + - Add 'issued_by' filter to BuildOrder API list endpoint + v131 -> 2023-08-09 : https://github.com/inventree/InvenTree/pull/5415 - Annotate 'available_variant_stock' to the SalesOrderLine serializer diff --git a/InvenTree/build/api.py b/InvenTree/build/api.py index 8f00b1271618..3575f32ed754 100644 --- a/InvenTree/build/api.py +++ b/InvenTree/build/api.py @@ -35,6 +35,7 @@ class Meta: 'parent', 'sales_order', 'part', + 'issued_by', ] status = rest_filters.NumberFilter(label='Status') diff --git a/InvenTree/templates/js/translated/table_filters.js b/InvenTree/templates/js/translated/table_filters.js index fba4ff52d139..5ede6263411f 100644 --- a/InvenTree/templates/js/translated/table_filters.js +++ b/InvenTree/templates/js/translated/table_filters.js @@ -18,6 +18,30 @@ */ +// Construct a dynamic API filter for the "issued by" field +function constructIssuedByFilter() { + return { + title: '{% trans "Issued By" %}', + options: function() { + let users = {}; + + inventreeGet('{% url "api-user-list" %}', {}, { + async: false, + success: function(response) { + for (let user of response) { + users[user.pk] = { + key: user.pk, + value: user.username + }; + } + } + }); + + return users; + } + } +} + // Construct a dynamic API filter for the "project" field function constructProjectCodeFilter() { return { @@ -482,6 +506,7 @@ function getBuildTableFilters() { return ownersList; }, }, + issued_by: constructIssuedByFilter(), }; if (global_settings.PROJECT_CODES_ENABLED) {