2
0
mirror of https://github.com/inventree/InvenTree.git synced 2026-02-05 21:05:51 +00:00

[API] BOM active filter (#11242)

* Add 'sub_part_active' filter for BOM list

* Add UI filter

* Bump API version
This commit is contained in:
Oliver
2026-02-03 09:11:57 +11:00
committed by GitHub
parent 619da6e619
commit 05b8c812f5
3 changed files with 19 additions and 7 deletions

View File

@@ -1,11 +1,14 @@
"""InvenTree API version information."""
# InvenTree API version
INVENTREE_API_VERSION = 446
INVENTREE_API_VERSION = 447
"""Increment this API version number whenever there is a significant change to the API that any clients need to know about."""
INVENTREE_API_TEXT = """
v447 -> 2026-02-02 : https://github.com/inventree/InvenTree/pull/11242
- Adds "sub_part_active" filter to BomItem API endpoint
v446 -> 2026-02-01 : https://github.com/inventree/InvenTree/pull/11232
- Allow ordering of test results by started_datetime and finished_datetime fields
- Allow ordering of test results by test_station field

View File

@@ -1247,11 +1247,11 @@ class BomFilter(FilterSet):
# Filters for linked 'part'
part_active = rest_filters.BooleanFilter(
label='Assembly part is active', field_name='part__active'
label=_('Assembly part is active'), field_name='part__active'
)
part_trackable = rest_filters.BooleanFilter(
label='Assembly part is trackable', field_name='part__trackable'
label=_('Assembly part is trackable'), field_name='part__trackable'
)
part_testable = rest_filters.BooleanFilter(
@@ -1259,8 +1259,12 @@ class BomFilter(FilterSet):
)
# Filters for linked 'sub_part'
sub_part_active = rest_filters.BooleanFilter(
label=_('Component part is active'), field_name='sub_part__active'
)
sub_part_trackable = rest_filters.BooleanFilter(
label='Component part is trackable', field_name='sub_part__trackable'
label=_('Component part is trackable'), field_name='sub_part__trackable'
)
sub_part_testable = rest_filters.BooleanFilter(
@@ -1268,15 +1272,15 @@ class BomFilter(FilterSet):
)
sub_part_assembly = rest_filters.BooleanFilter(
label='Component part is an assembly', field_name='sub_part__assembly'
label=_('Component part is an assembly'), field_name='sub_part__assembly'
)
sub_part_virtual = rest_filters.BooleanFilter(
label='Component part is virtual', field_name='sub_part__virtual'
label=_('Component part is virtual'), field_name='sub_part__virtual'
)
available_stock = rest_filters.BooleanFilter(
label='Has available stock', method='filter_available_stock'
label=_('Has available stock'), method='filter_available_stock'
)
def filter_available_stock(self, queryset, name, value):

View File

@@ -425,6 +425,11 @@ export function BomTable({
label: t`Trackable Part`,
description: t`Show trackable items`
},
{
name: 'sub_part_active',
label: t`Active Part`,
description: t`Show active items`
},
{
name: 'sub_part_assembly',
label: t`Assembled Part`,