2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-06-18 21:15:41 +00:00

Merge pull request #1397 from SchrodingersGat/order-report

Order report
This commit is contained in:
Oliver
2021-03-12 14:44:10 +11:00
committed by GitHub
16 changed files with 863 additions and 37 deletions

View File

@ -138,9 +138,9 @@ function loadPurchaseOrderTable(table, options) {
formatNoMatches: function() { return '{% trans "No purchase orders found" %}'; },
columns: [
{
field: 'pk',
title: 'ID',
visible: false,
title: '',
visible: true,
checkbox: true,
switchable: false,
},
{
@ -234,9 +234,9 @@ function loadSalesOrderTable(table, options) {
formatNoMatches: function() { return '{% trans "No sales orders found" %}'; },
columns: [
{
field: 'pk',
title: 'ID',
visible: false,
title: '',
checkbox: true,
visible: true,
switchable: false,
},
{

View File

@ -247,3 +247,111 @@ function printBomReports(parts, options={}) {
}
)
}
function printPurchaseOrderReports(orders, options={}) {
/**
* Print PO reports for the provided purchase order(s)
*/
if (orders.length == 0) {
showAlertDialog(
'{% trans "Select Purchase Orders" %}',
'{% trans "Purchase Order(s) must be selected before printing report" %}',
);
return;
}
// Request avaiable report templates
inventreeGet(
'{% url "api-po-report-list" %}',
{
enabled: true,
orders: orders,
},
{
success: function(response) {
if (response.length == 0) {
showAlertDialog(
'{% trans "No Reports Found" %}',
'{% trans "No report templates found which match selected orders" %}',
);
return;
}
// Select report template
selectReport(
response,
orders,
{
success: function(pk) {
var href = `/api/report/po/${pk}/print/?`;
orders.forEach(function(order) {
href += `order=${order}&`;
});
window.location.href = href;
}
}
)
}
}
)
}
function printSalesOrderReports(orders, options={}) {
/**
* Print SO reports for the provided purchase order(s)
*/
if (orders.length == 0) {
showAlertDialog(
'{% trans "Select Sales Orders" %}',
'{% trans "Sales Order(s) must be selected before printing report" %}',
);
return;
}
// Request avaiable report templates
inventreeGet(
'{% url "api-so-report-list" %}',
{
enabled: true,
orders: orders,
},
{
success: function(response) {
if (response.length == 0) {
showAlertDialog(
'{% trans "No Reports Found" %}',
'{% trans "No report templates found which match selected orders" %}',
);
return;
}
// Select report template
selectReport(
response,
orders,
{
success: function(pk) {
var href = `/api/report/so/${pk}/print/?`;
orders.forEach(function(order) {
href += `order=${order}&`;
});
window.location.href = href;
}
}
)
}
}
)
}