Shivam Mishra | 20a1d37 | 2020-05-06 20:26:00 +0530 | [diff] [blame] | 1 | # Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors |
| 2 | # License: GNU General Public License v3. See license.txt |
| 3 | |
| 4 | import frappe |
| 5 | import json |
Nabin Hait | 6277367 | 2020-05-19 21:18:26 +0530 | [diff] [blame] | 6 | from frappe import _ |
Shivam Mishra | 20a1d37 | 2020-05-06 20:26:00 +0530 | [diff] [blame] | 7 | |
| 8 | def get_company_for_dashboards(): |
| 9 | company = frappe.defaults.get_defaults().company |
| 10 | if company: |
| 11 | return company |
| 12 | else: |
| 13 | company_list = frappe.get_list("Company") |
| 14 | if company_list: |
| 15 | return company_list[0].name |
| 16 | return None |
| 17 | |
| 18 | def get_data(): |
| 19 | return frappe._dict({ |
| 20 | "dashboards": get_dashboards(), |
| 21 | "charts": get_charts(), |
| 22 | }) |
| 23 | |
| 24 | def get_dashboards(): |
| 25 | return [{ |
| 26 | "doctype": "Dashboard", |
| 27 | "name": "Project", |
| 28 | "dashboard_name": "Project", |
| 29 | "charts": [ |
| 30 | { "chart": "Project Summary", "width": "Full" } |
| 31 | ] |
| 32 | }] |
| 33 | |
| 34 | def get_charts(): |
| 35 | company = frappe.get_doc("Company", get_company_for_dashboards()) |
| 36 | |
| 37 | return [ |
| 38 | { |
| 39 | 'doctype': 'Dashboard Chart', |
| 40 | 'name': 'Project Summary', |
Nabin Hait | 6277367 | 2020-05-19 21:18:26 +0530 | [diff] [blame] | 41 | 'chart_name': _('Project Summary'), |
Shivam Mishra | 20a1d37 | 2020-05-06 20:26:00 +0530 | [diff] [blame] | 42 | 'chart_type': 'Report', |
| 43 | 'report_name': 'Project Summary', |
| 44 | 'is_public': 1, |
Nabin Hait | 6277367 | 2020-05-19 21:18:26 +0530 | [diff] [blame] | 45 | 'is_custom': 1, |
Shivam Mishra | 20a1d37 | 2020-05-06 20:26:00 +0530 | [diff] [blame] | 46 | 'filters_json': json.dumps({"company": company.name, "status": "Open"}), |
| 47 | 'type': 'Bar', |
| 48 | 'custom_options': '{"type": "bar", "colors": ["#fc4f51", "#78d6ff", "#7575ff"], "axisOptions": { "shortenYAxisNumbers": 1}, "barOptions": { "stacked": 1 }}', |
| 49 | } |
| 50 | ] |