Commit d4477c71 by Damien Moulard

[REC] for grouped orders display order in list for ordering

parent 6cf814b0
Pipeline #2170 passed with stage
in 1 minute 28 seconds
...@@ -188,6 +188,11 @@ div#container_edition { ...@@ -188,6 +188,11 @@ div#container_edition {
padding-bottom: 15px; padding-bottom: 15px;
} }
.title_partner_key {
font-weight: bolder;
font-size: 2rem;
}
/* Accordion style */ /* Accordion style */
/* Style the buttons that are used to open and close the accordion panel */ /* Style the buttons that are used to open and close the accordion panel */
......
...@@ -365,9 +365,7 @@ function display_orders_table() { ...@@ -365,9 +365,7 @@ function display_orders_table() {
table_orders.clear().destroy(); table_orders.clear().destroy();
$('#orders').empty(); $('#orders').empty();
} }
for (let j in orders) {
console.log(orders[j].id);
}
table_orders = $('#orders').DataTable({ table_orders = $('#orders').DataTable({
data: orders, data: orders,
columns:[ columns:[
......
...@@ -282,6 +282,11 @@ function fetch_data() { ...@@ -282,6 +282,11 @@ function fetch_data() {
} }
} else { } else {
// Add order key in products
let order_full_data = orders[order_data.id_po];
order_data.po[i].order_key = order_full_data.key;
// Add product to list_to_process // Add product to list_to_process
list_to_process.push(order_data.po[i]); list_to_process.push(order_data.po[i]);
...@@ -310,7 +315,7 @@ function fetch_data() { ...@@ -310,7 +315,7 @@ function fetch_data() {
// Init Data & listeners // Init Data & listeners
function initLists() { function initLists() {
try { try {
// Un-disable validation buttons now the data's here // Enable validation buttons now the data's here
if (reception_status == "False") { if (reception_status == "False") {
document.getElementById("valid_qty").disabled = false; document.getElementById("valid_qty").disabled = false;
document.getElementById("valid_all_qties").disabled = false; document.getElementById("valid_all_qties").disabled = false;
...@@ -344,10 +349,17 @@ function initLists() { ...@@ -344,10 +349,17 @@ function initLists() {
} }
} }
// Init table for to_process content let columns_to_process = [];
table_to_process = $('#table_to_process').DataTable({ let columns_processed = [];
data: list_to_process,
columns:[ // In case of group orders, add "Order" as first column for ordering
if (Object.keys(orders).length > 1) {
columns_to_process.push({
data:"order_key", title: "Comm- ande", className: "dt-body-center"
});
}
columns_to_process = columns_to_process.concat([
{data:"product_id.0", title: "id", visible: false}, {data:"product_id.0", title: "id", visible: false},
{data:"shelf_sortorder", title: "Rayon", className: "dt-body-center"}, {data:"shelf_sortorder", title: "Rayon", className: "dt-body-center"},
{ {
...@@ -399,24 +411,9 @@ function initLists() { ...@@ -399,24 +411,9 @@ function initLists() {
orderable: false, orderable: false,
visible: display_autres === "True" visible: display_autres === "True"
} }
], ]);
rowId : "product_id.0",
order: [ columns_processed = [
[
0,
"asc"
]
],
scrollY: "33vh",
scrollCollapse: true,
paging: false,
dom: 'lrtip', // Remove the search input from that table
language: {url : '/static/js/datatables/french.json'}
});
// Init table for processed content
table_processed = $('#table_processed').DataTable({
data: list_processed,
columns:[
{data:"row_counter", title:"row_counter", visible: false}, // Hidden counter to display last row first {data:"row_counter", title:"row_counter", visible: false}, // Hidden counter to display last row first
{data:"shelf_sortorder", title: "Rayon", className:"dt-body-center"}, {data:"shelf_sortorder", title: "Rayon", className:"dt-body-center"},
{ {
...@@ -487,7 +484,33 @@ function initLists() { ...@@ -487,7 +484,33 @@ function initLists() {
+ "</select>"; + "</select>";
} }
} }
];
console.log(columns_to_process);
// Init table for to_process content
table_to_process = $('#table_to_process').DataTable({
data: list_to_process,
columns: columns_to_process,
rowId : "product_id.0",
order: [
[
0,
"asc"
]
], ],
scrollY: "33vh",
scrollCollapse: true,
paging: false,
dom: 'lrtip', // Remove the search input from that table
language: {url : '/static/js/datatables/french.json'}
});
// Init table for processed content
table_processed = $('#table_processed').DataTable({
data: list_processed,
columns: columns_processed,
rowId : "product_id.0", rowId : "product_id.0",
order: [ order: [
[ [
...@@ -1657,7 +1680,7 @@ function init_dom(partners_display_data) { ...@@ -1657,7 +1680,7 @@ function init_dom(partners_display_data) {
}; };
} }
dbc.bulkDocs(Object.values(orders)).then((response) => { dbc.bulkDocs(Object.values(orders)).then(() => {
back(); back();
}) })
.catch((err) => { .catch((err) => {
...@@ -1964,12 +1987,13 @@ $(document).ready(function() { ...@@ -1964,12 +1987,13 @@ $(document).ready(function() {
include_docs: true include_docs: true
}).then(function (result) { }).then(function (result) {
// for each order in the group // for each order in the group
for (let order_id of group_ids) { for (let i in group_ids) {
// find order // find order
let order_id = group_ids[i];
let order = result.rows.find(el => el.id == 'order_' + order_id); let order = result.rows.find(el => el.id == 'order_' + order_id);
order = order.doc; order = order.doc;
order.key = parseInt(i) + 1;
orders[order_id] = order; orders[order_id] = order;
// Add each order's already updated and validated products to common list // Add each order's already updated and validated products to common list
...@@ -1982,7 +2006,7 @@ $(document).ready(function() { ...@@ -1982,7 +2006,7 @@ $(document).ready(function() {
} }
// Prepare data to display in 'partner name' area // Prepare data to display in 'partner name' area
partners_display_data.push(order['partner'] + ' du ' + order['date_order']); partners_display_data.push(`<span class="title_partner_key">${order.key}.</span> ${order.partner} du ${order.date_order}`);
} }
// Set current reception status: take first order's // Set current reception status: take first order's
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment