refactor: sales analytics
This commit is contained in:
parent
4859574233
commit
36df21067c
@ -82,62 +82,42 @@ frappe.query_reports["Sales Analytics"] = {
|
||||
const tree_type = frappe.query_report.filters[0].value;
|
||||
if (data_doctype != tree_type) return;
|
||||
|
||||
row_name = data[2].content;
|
||||
length = data.length;
|
||||
|
||||
if (tree_type == "Customer") {
|
||||
row_values = data
|
||||
.slice(4, length - 1)
|
||||
.map(function (column) {
|
||||
return column.content;
|
||||
});
|
||||
} else if (tree_type == "Item") {
|
||||
row_values = data
|
||||
.slice(5, length - 1)
|
||||
.map(function (column) {
|
||||
return column.content;
|
||||
});
|
||||
} else {
|
||||
row_values = data
|
||||
.slice(3, length - 1)
|
||||
.map(function (column) {
|
||||
return column.content;
|
||||
});
|
||||
}
|
||||
|
||||
entry = {
|
||||
name: row_name,
|
||||
values: row_values,
|
||||
};
|
||||
|
||||
let raw_data = frappe.query_report.chart.data;
|
||||
let new_datasets = raw_data.datasets;
|
||||
|
||||
let element_found = new_datasets.some((element, index, array)=>{
|
||||
if(element.name == row_name){
|
||||
array.splice(index, 1)
|
||||
return true
|
||||
const row_name = data[2].content;
|
||||
const raw_data = frappe.query_report.chart.data;
|
||||
const new_datasets = raw_data.datasets;
|
||||
const element_found = new_datasets.some(
|
||||
(element, index, array) => {
|
||||
if (element.name == row_name) {
|
||||
array.splice(index, 1);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
return false
|
||||
})
|
||||
);
|
||||
const slice_at = { Customer: 4, Item: 5 }[tree_type] || 3;
|
||||
|
||||
if (!element_found) {
|
||||
new_datasets.push(entry);
|
||||
new_datasets.push({
|
||||
name: row_name,
|
||||
values: data
|
||||
.slice(slice_at, data.length - 1)
|
||||
.map(column => column.content),
|
||||
});
|
||||
}
|
||||
|
||||
let new_data = {
|
||||
const new_data = {
|
||||
labels: raw_data.labels,
|
||||
datasets: new_datasets,
|
||||
};
|
||||
chart_options = {
|
||||
|
||||
frappe.query_report.render_chart({
|
||||
data: new_data,
|
||||
type: "line",
|
||||
};
|
||||
frappe.query_report.render_chart(chart_options);
|
||||
});
|
||||
|
||||
frappe.query_report.raw_chart_data = new_data;
|
||||
},
|
||||
},
|
||||
});
|
||||
},
|
||||
}
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user