feat: add fixture for project dashboards
diff --git a/erpnext/projects/dashboard_fixtures.py b/erpnext/projects/dashboard_fixtures.py
new file mode 100644
index 0000000..63b3893
--- /dev/null
+++ b/erpnext/projects/dashboard_fixtures.py
@@ -0,0 +1,48 @@
+# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
+# License: GNU General Public License v3. See license.txt
+
+import frappe
+import json
+
+def get_company_for_dashboards():
+ company = frappe.defaults.get_defaults().company
+ if company:
+ return company
+ else:
+ company_list = frappe.get_list("Company")
+ if company_list:
+ return company_list[0].name
+ return None
+
+def get_data():
+ return frappe._dict({
+ "dashboards": get_dashboards(),
+ "charts": get_charts(),
+ })
+
+def get_dashboards():
+ return [{
+ "doctype": "Dashboard",
+ "name": "Project",
+ "dashboard_name": "Project",
+ "charts": [
+ { "chart": "Project Summary", "width": "Full" }
+ ]
+ }]
+
+def get_charts():
+ company = frappe.get_doc("Company", get_company_for_dashboards())
+
+ return [
+ {
+ 'doctype': 'Dashboard Chart',
+ 'name': 'Project Summary',
+ 'chart_name': 'Project Summary',
+ 'chart_type': 'Report',
+ 'report_name': 'Project Summary',
+ 'is_public': 1,
+ 'filters_json': json.dumps({"company": company.name, "status": "Open"}),
+ 'type': 'Bar',
+ 'custom_options': '{"type": "bar", "colors": ["#fc4f51", "#78d6ff", "#7575ff"], "axisOptions": { "shortenYAxisNumbers": 1}, "barOptions": { "stacked": 1 }}',
+ }
+ ]
\ No newline at end of file