mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Merge pull request #1385 from SchrodingersGat/order-filtering
Order filtering
This commit is contained in:
commit
fb5d7c415b
@ -38,6 +38,22 @@ class BuildList(generics.ListCreateAPIView):
|
||||
'sales_order',
|
||||
]
|
||||
|
||||
ordering_fields = [
|
||||
'reference',
|
||||
'part__name',
|
||||
'status',
|
||||
'creation_date',
|
||||
'target_date',
|
||||
'completion_date',
|
||||
'quantity',
|
||||
]
|
||||
|
||||
search_fields = [
|
||||
'reference',
|
||||
'part__name',
|
||||
'title',
|
||||
]
|
||||
|
||||
def get_queryset(self):
|
||||
"""
|
||||
Override the queryset filtering,
|
||||
|
@ -33,7 +33,6 @@ loadBuildTable($('#sub-build-table'), {
|
||||
url: '{% url "api-build-list" %}',
|
||||
filterTarget: "#filter-list-sub-build",
|
||||
params: {
|
||||
part_detail: true,
|
||||
ancestor: {{ build.pk }},
|
||||
}
|
||||
});
|
||||
|
@ -179,9 +179,6 @@ $("#new-build").click(function() {
|
||||
|
||||
loadBuildTable($("#build-table"), {
|
||||
url: "{% url 'api-build-list' %}",
|
||||
params: {
|
||||
part_detail: "true",
|
||||
},
|
||||
});
|
||||
|
||||
$('#multi-build-print').click(function() {
|
||||
|
@ -56,10 +56,13 @@ class CompanyList(generics.ListCreateAPIView):
|
||||
search_fields = [
|
||||
'name',
|
||||
'description',
|
||||
'website',
|
||||
]
|
||||
|
||||
ordering_fields = [
|
||||
'name',
|
||||
'parts_supplied',
|
||||
'parts_manufactured',
|
||||
]
|
||||
|
||||
ordering = 'name'
|
||||
|
@ -137,9 +137,20 @@ class POList(generics.ListCreateAPIView):
|
||||
'supplier',
|
||||
]
|
||||
|
||||
search_fields = [
|
||||
'reference',
|
||||
'supplier__name',
|
||||
'supplier_reference',
|
||||
'description',
|
||||
]
|
||||
|
||||
ordering_fields = [
|
||||
'creation_date',
|
||||
'reference',
|
||||
'supplier__name',
|
||||
'target_date',
|
||||
'line_items',
|
||||
'status',
|
||||
]
|
||||
|
||||
ordering = '-creation_date'
|
||||
@ -351,7 +362,20 @@ class SOList(generics.ListCreateAPIView):
|
||||
|
||||
ordering_fields = [
|
||||
'creation_date',
|
||||
'reference'
|
||||
'reference',
|
||||
'customer__name',
|
||||
'customer_reference',
|
||||
'status',
|
||||
'target_date',
|
||||
'line_items',
|
||||
'shipment_date',
|
||||
]
|
||||
|
||||
search_fields = [
|
||||
'customer__name',
|
||||
'reference',
|
||||
'description',
|
||||
'customer_reference',
|
||||
]
|
||||
|
||||
ordering = '-creation_date'
|
||||
|
@ -27,7 +27,6 @@ loadBuildTable($("#builds-table"), {
|
||||
url: "{% url 'api-build-list' %}",
|
||||
params: {
|
||||
sales_order: {{ order.id }},
|
||||
part_detail: true,
|
||||
},
|
||||
});
|
||||
|
||||
|
@ -43,7 +43,6 @@
|
||||
loadBuildTable($("#build-table"), {
|
||||
url: "{% url 'api-build-list' %}",
|
||||
params: {
|
||||
part_detail: "true",
|
||||
part: {{ part.id }},
|
||||
}
|
||||
});
|
||||
|
@ -185,7 +185,6 @@ addHeaderAction('build-overdue', '{% trans "Overdue Build Orders" %}', 'fa-calen
|
||||
loadBuildTable("#table-build-pending", {
|
||||
url: "{% url 'api-build-list' %}",
|
||||
params: {
|
||||
part_detail: true,
|
||||
active: true,
|
||||
},
|
||||
disableFilters: true,
|
||||
@ -194,7 +193,6 @@ loadBuildTable("#table-build-pending", {
|
||||
loadBuildTable("#table-build-overdue", {
|
||||
url: "{% url 'api-build-list' %}",
|
||||
params: {
|
||||
part_detail: true,
|
||||
overdue: true,
|
||||
},
|
||||
disableFilters: true,
|
||||
|
@ -162,6 +162,20 @@ InvenTree | {% trans "Search Results" %}
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% if roles.build.view %}
|
||||
|
||||
addItemTitle('{% trans "Build" %}');
|
||||
|
||||
addItem('build-order', '{% trans "Build Orders" %}', 'fa-tools');
|
||||
|
||||
loadBuildTable('#table-build-order', {
|
||||
params: {
|
||||
search: '{{ query }}',
|
||||
}
|
||||
});
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% if roles.stock.view %}
|
||||
addItemTitle('{% trans "Stock" %}');
|
||||
|
||||
@ -283,6 +297,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 +327,14 @@ InvenTree | {% trans "Search Results" %}
|
||||
}
|
||||
});
|
||||
|
||||
addItem('sales-orders', '{% trans "Sales Orders" %}', 'fa-truck');
|
||||
|
||||
loadSalesOrderTable('#table-sales-orders', {
|
||||
params: {
|
||||
search: '{{ query }}',
|
||||
}
|
||||
});
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% endif %}
|
||||
|
@ -609,6 +609,8 @@ function loadBuildTable(table, options) {
|
||||
var params = options.params || {};
|
||||
|
||||
var filters = {};
|
||||
|
||||
params['part_detail'] = true;
|
||||
|
||||
if (!options.disableFilters) {
|
||||
filters = loadTableFilters("build");
|
||||
@ -618,6 +620,8 @@ function loadBuildTable(table, options) {
|
||||
filters[key] = params[key];
|
||||
}
|
||||
|
||||
options.url = options.url || '{% url "api-build-list" %}';
|
||||
|
||||
var filterTarget = options.filterTarget || null;
|
||||
|
||||
setupFilterList("build", table, filterTarget);
|
||||
@ -671,12 +675,12 @@ function loadBuildTable(table, options) {
|
||||
{
|
||||
field: 'title',
|
||||
title: '{% trans "Description" %}',
|
||||
sortable: true,
|
||||
},
|
||||
{
|
||||
field: 'part',
|
||||
title: '{% trans "Part" %}',
|
||||
sortable: true,
|
||||
sortName: 'part__name',
|
||||
formatter: function(value, row, index, field) {
|
||||
|
||||
var html = imageHoverIcon(row.part_detail.thumbnail);
|
||||
|
@ -54,7 +54,6 @@ function loadCompanyTable(table, url, options={}) {
|
||||
{
|
||||
field: 'description',
|
||||
title: '{% trans "Description" %}',
|
||||
sortable: true,
|
||||
},
|
||||
{
|
||||
field: 'website',
|
||||
|
@ -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({
|
||||
@ -167,6 +169,7 @@ function loadPurchaseOrderTable(table, options) {
|
||||
field: 'supplier_detail',
|
||||
title: '{% trans "Supplier" %}',
|
||||
sortable: true,
|
||||
sortName: 'supplier__name',
|
||||
formatter: function(value, row, index, field) {
|
||||
return imageHoverIcon(row.supplier_detail.image) + renderLink(row.supplier_detail.name, `/company/${row.supplier}/purchase-orders/`);
|
||||
}
|
||||
@ -174,12 +177,10 @@ function loadPurchaseOrderTable(table, options) {
|
||||
{
|
||||
field: 'supplier_reference',
|
||||
title: '{% trans "Supplier Reference" %}',
|
||||
sortable: true,
|
||||
},
|
||||
{
|
||||
field: 'description',
|
||||
title: '{% trans "Description" %}',
|
||||
sortable: true,
|
||||
},
|
||||
{
|
||||
field: 'status',
|
||||
@ -219,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({
|
||||
@ -259,6 +262,7 @@ function loadSalesOrderTable(table, options) {
|
||||
},
|
||||
{
|
||||
sortable: true,
|
||||
sortName: 'customer__name',
|
||||
field: 'customer_detail',
|
||||
title: '{% trans "Customer" %}',
|
||||
formatter: function(value, row, index, field) {
|
||||
@ -266,12 +270,12 @@ function loadSalesOrderTable(table, options) {
|
||||
}
|
||||
},
|
||||
{
|
||||
sortable: true,
|
||||
field: 'customer_reference',
|
||||
title: '{% trans "Customer Reference" %}',
|
||||
sotrable: true,
|
||||
},
|
||||
{
|
||||
sortable: true,
|
||||
sortable: false,
|
||||
field: 'description',
|
||||
title: '{% trans "Description" %}',
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user