feat(dashboard): Add missing dates
diff --git a/erpnext/accounts/dashboard.py b/erpnext/accounts/dashboard.py
index 26a53da..df152f0 100644
--- a/erpnext/accounts/dashboard.py
+++ b/erpnext/accounts/dashboard.py
@@ -5,7 +5,7 @@
from itertools import groupby
from operator import itemgetter
import frappe
-from frappe.utils import add_to_date
+from frappe.utils import add_to_date, date_diff, getdate, nowdate
from erpnext.accounts.report.general_ledger.general_ledger import execute
@@ -31,6 +31,8 @@
results = [list(values)[-1] for key, values in grouped_results]
+ results = add_missing_dates(results, from_date, to_date)
+
return {
"labels": [result[0] for result in results],
"datasets": [{
@@ -51,3 +53,17 @@
years = -1
return add_to_date(None, years=years, months=months, days=days,
as_string=True, as_datetime=True)
+
+def add_missing_dates(incomplete_results, from_date, to_date):
+ dates = [r[0] for r in incomplete_results]
+ day_count = date_diff(to_date, from_date)
+
+ results_dict = dict(incomplete_results)
+ last_date, last_balance = incomplete_results[0]
+ results = []
+ for date in (add_to_date(getdate(from_date), days=n) for n in range(day_count + 1)):
+ if date in results_dict:
+ last_date = date
+ last_balance = results_dict[date]
+ results.append([date, last_balance])
+ return results