2
0
mirror of https://github.com/inventree/inventree-app.git synced 2026-01-22 10:49:41 +00:00

Default filters (#749)

* Bug fix for filters

- Fix key shadowing

* Adjust default filters for stock list

* Adjust default filter values

* Add "active" filter for stock items

* Code formatting
This commit is contained in:
Oliver
2026-01-15 13:20:24 +11:00
committed by GitHub
parent 9002fb78d3
commit 74f468dc1b
7 changed files with 24 additions and 9 deletions

View File

@@ -1,3 +1,9 @@
### x.xx.x - Month Year
---
- Fix default values for list sorting
### 0.21.2 - January 2026 ### 0.21.2 - January 2026
--- ---

View File

@@ -730,8 +730,6 @@ class InvenTreeModel {
var response = await api.get(URL, params: params); var response = await api.get(URL, params: params);
print("paginated: ${URL}: ${params}");
if (!response.isValid()) { if (!response.isValid()) {
return null; return null;
} }

View File

@@ -133,6 +133,7 @@ class _PaginatedPurchaseOrderListState
"label": L10().outstanding, "label": L10().outstanding,
"help_text": L10().outstandingOrderDetail, "help_text": L10().outstandingOrderDetail,
"tristate": true, "tristate": true,
"default": true,
}, },
"overdue": { "overdue": {
"label": L10().overdue, "label": L10().overdue,

View File

@@ -115,6 +115,7 @@ class _PaginatedSalesOrderListState
"label": L10().outstanding, "label": L10().outstanding,
"help_text": L10().outstandingOrderDetail, "help_text": L10().outstandingOrderDetail,
"tristate": true, "tristate": true,
"default": true,
}, },
"overdue": { "overdue": {
"label": L10().overdue, "label": L10().overdue,

View File

@@ -47,25 +47,28 @@ abstract class PaginatedSearchState<T extends PaginatedSearchWidget>
// Return the boolean value of a particular boolean filter // Return the boolean value of a particular boolean filter
Future<dynamic> getFilterValue(String key) async { Future<dynamic> getFilterValue(String key) async {
key = "${prefix}filter_${key}"; final String settings_key = "${prefix}filter_${key}";
Map<String, dynamic> opts = filterOptions[key] ?? {}; Map<String, dynamic> opts = filterOptions[key] ?? {};
bool tristate = (opts["tristate"] ?? true) as bool; bool tristate = (opts["tristate"] ?? true) as bool;
dynamic backup = tristate ? null : opts["default"]; dynamic backup = tristate ? opts["default"] : opts["default"] ?? false;
final result = await InvenTreeSettingsManager().getValue(key, backup); final result = await InvenTreeSettingsManager().getValue(
settings_key,
backup,
);
return result; return result;
} }
// Set the boolean value of a particular boolean filter // Set the boolean value of a particular boolean filter
Future<void> setFilterValue(String key, dynamic value) async { Future<void> setFilterValue(String key, dynamic value) async {
key = "${prefix}filter_${key}"; final String settings_key = "${prefix}filter_${key}";
if (value == null) { if (value == null) {
await InvenTreeSettingsManager().removeValue(key); await InvenTreeSettingsManager().removeValue(settings_key);
} else { } else {
await InvenTreeSettingsManager().setValue(key, value); await InvenTreeSettingsManager().setValue(settings_key, value);
} }
} }

View File

@@ -74,6 +74,7 @@ class _PaginatedPartListState extends PaginatedSearchState<PaginatedPartList> {
"label": L10().filterActive, "label": L10().filterActive,
"help_text": L10().filterActiveDetail, "help_text": L10().filterActiveDetail,
"tristate": true, "tristate": true,
"default": true,
}, },
"assembly": { "assembly": {
"label": L10().filterAssembly, "label": L10().filterAssembly,

View File

@@ -75,8 +75,13 @@ class _PaginatedStockItemListState
"help_text": L10().filterInStockDetail, "help_text": L10().filterInStockDetail,
"tristate": true, "tristate": true,
}, },
"active": {
"default": true,
"label": L10().filterActive,
"help_text": L10().filterActiveDetail,
},
"cascade": { "cascade": {
"default": false, "default": true,
"label": L10().includeSublocations, "label": L10().includeSublocations,
"help_text": L10().includeSublocationsDetail, "help_text": L10().includeSublocationsDetail,
"tristate": false, "tristate": false,