CRM Onboarding
This commit is contained in:
parent
8b31b3ba00
commit
79a8bd1cdf
203
erpnext/crm/dashboard_fixtures.py
Normal file
203
erpnext/crm/dashboard_fixtures.py
Normal file
@ -0,0 +1,203 @@
|
||||
# Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
# License: GNU General Public License v3. See license.txt
|
||||
|
||||
import frappe, erpnext, json
|
||||
|
||||
def get_data():
|
||||
return frappe._dict({
|
||||
"dashboards": get_dashboards(),
|
||||
"charts": get_charts(),
|
||||
"number_cards": get_number_cards()
|
||||
})
|
||||
|
||||
def get_dashboards():
|
||||
return [{
|
||||
"doctype": "Dashboard",
|
||||
"name": "CRM",
|
||||
"dashboard_name": "CRM",
|
||||
"charts": [
|
||||
{ "chart": "Lead", "width": "Full" },
|
||||
{ "chart": "Opportunity", "width": "Full"},
|
||||
{ "chart": "Campaign", "width": "Half" },
|
||||
{ "chart": "Opportunities Won", "width": "Half" },
|
||||
{ "chart": "Territory Wise Opportunity", "width": "Half"},
|
||||
{ "chart": "Territory Wise Sales", "width": "Half"},
|
||||
{ "chart": "Qualified For Call", "width": "Full"},
|
||||
{ "chart": "Lead Source", "width": "Half"}
|
||||
],
|
||||
"cards": [
|
||||
{ "card": "New Lead" },
|
||||
{ "card": "New Opportunity" },
|
||||
{ "card": "Won Opportunity" },
|
||||
]
|
||||
}]
|
||||
|
||||
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_charts():
|
||||
company = get_company_for_dashboards()
|
||||
|
||||
return [{
|
||||
"name": "Lead",
|
||||
"doctype": "Dashboard Chart",
|
||||
"time_interval": "Yearly",
|
||||
"chart_type": "Count",
|
||||
"chart_name": "Lead",
|
||||
"timespan": "Last Quarter",
|
||||
"time_interval": "Weekly",
|
||||
"document_type": "Lead",
|
||||
"based_on": "creation",
|
||||
'is_public': 1,
|
||||
'timeseries': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False]]),
|
||||
"type": "Bar"
|
||||
},
|
||||
{
|
||||
"name": "Opportunity",
|
||||
"doctype": "Dashboard Chart",
|
||||
"time_interval": "Yearly",
|
||||
"chart_type": "Count",
|
||||
"chart_name": "Opportunity",
|
||||
"timespan": "Last Quarter",
|
||||
"time_interval": "Weekly",
|
||||
"document_type": "Opportunity",
|
||||
"based_on": "creation",
|
||||
'is_public': 1,
|
||||
'timeseries': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False]]),
|
||||
"type": "Bar"
|
||||
},
|
||||
{
|
||||
"name": "Campaign",
|
||||
"doctype": "Dashboard Chart",
|
||||
"time_interval": "Yearly",
|
||||
"chart_type": "Count",
|
||||
"chart_name": "Campaign",
|
||||
"timespan": "Last Year",
|
||||
"time_interval": "Monthly",
|
||||
"document_type": "Campaign",
|
||||
"based_on": "creation",
|
||||
'is_public': 1,
|
||||
'timeseries': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False]]),
|
||||
"type": "Line",
|
||||
"color": "#428b46"
|
||||
},
|
||||
{
|
||||
"name": "Opportunities Won",
|
||||
"doctype": "Dashboard Chart",
|
||||
"time_interval": "Yearly",
|
||||
"chart_type": "Count",
|
||||
"chart_name": "Opportunities Won",
|
||||
"timespan": "Last Year",
|
||||
"time_interval": "Monthly",
|
||||
"document_type": "Opportunity",
|
||||
"based_on": "modified",
|
||||
'is_public': 1,
|
||||
'timeseries': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False],["Opportunity", "sales_stage", "=", "Converted", False]]),
|
||||
"type": "Bar"
|
||||
},
|
||||
{
|
||||
"name": "Territory Wise Opportunity",
|
||||
"doctype": "Dashboard Chart",
|
||||
"chart_type": "Group By",
|
||||
"group_by_type": "Count",
|
||||
"group_by_based_on": "territory",
|
||||
"chart_name": "Territory Wise Opportunity",
|
||||
"document_type": "Opportunity",
|
||||
'is_public': 1,
|
||||
"owner": "Administrator",
|
||||
"type": "Line"
|
||||
},
|
||||
{
|
||||
"name": "Territory Wise Sales",
|
||||
"doctype": "Dashboard Chart",
|
||||
"chart_type": "Group By",
|
||||
"group_by_type": "Sum",
|
||||
"group_by_based_on": "territory",
|
||||
"chart_name": "Territory Wise Sales",
|
||||
"aggregate_function_based_on": "opportunity_amount",
|
||||
"document_type": "Opportunity",
|
||||
'is_public': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False],["Opportunity", "sales_stage", "=", "Converted", False]]),
|
||||
"type": "Bar",
|
||||
"color": "#7575ff"
|
||||
},
|
||||
{
|
||||
"name": "Qualified For Call",
|
||||
"doctype": "Dashboard Chart",
|
||||
"time_interval": "Yearly",
|
||||
"chart_type": "Count",
|
||||
"chart_name": "Qualified For Call",
|
||||
"timespan": "Last Quarter",
|
||||
"time_interval": "Weekly",
|
||||
"document_type": "Opportunity",
|
||||
"based_on": "modified",
|
||||
'is_public': 1,
|
||||
'timeseries': 1,
|
||||
"owner": "Administrator",
|
||||
"filters_json": json.dumps([["Opportunity", "company", "=", company, False],["Opportunity", "sales_stage", "=", "Qualification", False]]),
|
||||
"type": "Line",
|
||||
"color": "#fff168"
|
||||
},
|
||||
{
|
||||
"name": "Lead Source",
|
||||
"doctype": "Dashboard Chart",
|
||||
"chart_type": "Group By",
|
||||
"group_by_type": "Count",
|
||||
"group_by_based_on": "source",
|
||||
"chart_name": "Lead Source",
|
||||
"document_type": "Lead",
|
||||
'is_public': 1,
|
||||
"owner": "Administrator",
|
||||
"type": "Donut"
|
||||
}]
|
||||
|
||||
def get_number_cards():
|
||||
return [{
|
||||
"doctype": "Number Card",
|
||||
"document_type": "Lead",
|
||||
"name": "New Lead",
|
||||
"filters_json": json.dumps([["Lead","status","=","Lead",False]]),
|
||||
"function": "Count",
|
||||
"is_public": 1,
|
||||
"label": "New Lead",
|
||||
"show_percentage_stats": 1,
|
||||
"stats_time_interval": "Daily"
|
||||
},
|
||||
{
|
||||
"doctype": "Number Card",
|
||||
"document_type": "Opportunity",
|
||||
"name": "New Opportunity",
|
||||
"filters_json": json.dumps([["Opportunity","status","=","Open",False]]),
|
||||
"function": "Count",
|
||||
"is_public": 1,
|
||||
"label": "New Opportunity",
|
||||
"show_percentage_stats": 1,
|
||||
"stats_time_interval": "Daily"
|
||||
},
|
||||
{
|
||||
"doctype": "Number Card",
|
||||
"document_type": "Opportunity",
|
||||
"name": "Won Opportunity",
|
||||
"filters_json": json.dumps([["Opportunity","status","=","Converted",False]]),
|
||||
"function": "Count",
|
||||
"is_public": 1,
|
||||
"label": "Won Opportunity",
|
||||
"show_percentage_stats": 1,
|
||||
"stats_time_interval": "Daily"
|
||||
}]
|
@ -27,21 +27,25 @@
|
||||
}
|
||||
],
|
||||
"category": "Modules",
|
||||
"charts": [],
|
||||
"charts": [
|
||||
{
|
||||
"chart_name": "Territory Wise Sales"
|
||||
}
|
||||
],
|
||||
"creation": "2020-01-23 14:48:30.183272",
|
||||
"developer_mode_only": 0,
|
||||
"disable_user_customization": 0,
|
||||
"docstatus": 0,
|
||||
"doctype": "Desk Page",
|
||||
"extends_another_page": 0,
|
||||
"icon": "",
|
||||
"idx": 0,
|
||||
"is_standard": 1,
|
||||
"label": "CRM",
|
||||
"modified": "2020-04-27 22:32:26.682911",
|
||||
"modified": "2020-05-14 17:20:07.636751",
|
||||
"modified_by": "Administrator",
|
||||
"module": "CRM",
|
||||
"name": "CRM",
|
||||
"onboarding": "CRM",
|
||||
"owner": "Administrator",
|
||||
"pin_to_bottom": 0,
|
||||
"pin_to_top": 0,
|
||||
|
45
erpnext/crm/module_onboarding/crm/crm.json
Normal file
45
erpnext/crm/module_onboarding/crm/crm.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"allow_roles": [
|
||||
{
|
||||
"role": "Sales Master Manager"
|
||||
},
|
||||
{
|
||||
"role": "Administrator"
|
||||
},
|
||||
{
|
||||
"role": "Sales Manager"
|
||||
}
|
||||
],
|
||||
"creation": "2020-05-09 23:42:50.901548",
|
||||
"docstatus": 0,
|
||||
"doctype": "Module Onboarding",
|
||||
"documentation_url": "https://docs.erpnext.com/docs/user/manual/en/CRM",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"modified": "2020-05-14 17:41:11.083917",
|
||||
"modified_by": "Administrator",
|
||||
"module": "CRM",
|
||||
"name": "CRM",
|
||||
"owner": "Administrator",
|
||||
"steps": [
|
||||
{
|
||||
"step": "Introduction to CRM"
|
||||
},
|
||||
{
|
||||
"step": "Start Campaign"
|
||||
},
|
||||
{
|
||||
"step": "Create Lead"
|
||||
},
|
||||
{
|
||||
"step": "Create Opportunity"
|
||||
},
|
||||
{
|
||||
"step": "Create and Send Quotation"
|
||||
}
|
||||
],
|
||||
"subtitle": "Campaign, Lead, Opportunity, Customer and more",
|
||||
"success_message": "CRM Module is all setup!",
|
||||
"title": "Let's Setup Your CRM",
|
||||
"user_can_dismiss": 1
|
||||
}
|
45
erpnext/crm/onboarding/crm/crm.json
Normal file
45
erpnext/crm/onboarding/crm/crm.json
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
"allow_roles": [
|
||||
{
|
||||
"role": "Sales Master Manager"
|
||||
},
|
||||
{
|
||||
"role": "Administrator"
|
||||
},
|
||||
{
|
||||
"role": "Sales Manager"
|
||||
}
|
||||
],
|
||||
"creation": "2020-05-09 23:42:50.901548",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding",
|
||||
"documentation_url": "https://docs.erpnext.com/docs/user/manual/en/CRM",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"modified": "2020-05-09 23:42:50.901548",
|
||||
"modified_by": "Administrator",
|
||||
"module": "CRM",
|
||||
"name": "CRM",
|
||||
"owner": "Administrator",
|
||||
"steps": [
|
||||
{
|
||||
"step": "Introduction to CRM"
|
||||
},
|
||||
{
|
||||
"step": "Start Campaign"
|
||||
},
|
||||
{
|
||||
"step": "Create Lead"
|
||||
},
|
||||
{
|
||||
"step": "Convert Lead to Customer"
|
||||
},
|
||||
{
|
||||
"step": "Create and Send Quotation"
|
||||
}
|
||||
],
|
||||
"subtitle": "Campaign, Lead, Opportunity, Customer and more",
|
||||
"success_message": "CRM Module is all setup!",
|
||||
"title": "Let's Setup Your CRM",
|
||||
"user_can_dismiss": 1
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"action": "Create Entry",
|
||||
"creation": "2020-05-09 23:42:46.592075",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding Step",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"is_mandatory": 0,
|
||||
"is_single": 0,
|
||||
"is_skipped": 0,
|
||||
"modified": "2020-05-14 17:30:07.887411",
|
||||
"modified_by": "Administrator",
|
||||
"name": "Create and Send Quotation",
|
||||
"owner": "Administrator",
|
||||
"reference_document": "Quotation",
|
||||
"title": "Create and Send Quotation"
|
||||
}
|
17
erpnext/crm/onboarding_step/create_lead/create_lead.json
Normal file
17
erpnext/crm/onboarding_step/create_lead/create_lead.json
Normal file
@ -0,0 +1,17 @@
|
||||
{
|
||||
"action": "Create Entry",
|
||||
"creation": "2020-05-09 23:40:25.192503",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding Step",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"is_mandatory": 0,
|
||||
"is_single": 0,
|
||||
"is_skipped": 0,
|
||||
"modified": "2020-05-14 17:28:36.441387",
|
||||
"modified_by": "Administrator",
|
||||
"name": "Create Lead",
|
||||
"owner": "Administrator",
|
||||
"reference_document": "Lead",
|
||||
"title": "Create Lead"
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"action": "Create Entry",
|
||||
"creation": "2020-05-14 17:38:27.496696",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding Step",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"is_mandatory": 0,
|
||||
"is_single": 0,
|
||||
"is_skipped": 0,
|
||||
"modified": "2020-05-14 17:38:27.496696",
|
||||
"modified_by": "Administrator",
|
||||
"name": "Create Opportunity",
|
||||
"owner": "Administrator",
|
||||
"reference_document": "Opportunity",
|
||||
"title": "Create Opportunity"
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"action": "Watch Video",
|
||||
"creation": "2020-05-09 23:37:08.926812",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding Step",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"is_mandatory": 0,
|
||||
"is_single": 0,
|
||||
"is_skipped": 0,
|
||||
"modified": "2020-05-14 17:28:16.448676",
|
||||
"modified_by": "Administrator",
|
||||
"name": "Introduction to CRM",
|
||||
"owner": "Administrator",
|
||||
"title": "Introduction to CRM",
|
||||
"video_url": "https://www.youtube.com/watch?v=o9XCSZHJfpA"
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"action": "Create Entry",
|
||||
"creation": "2020-05-09 23:38:10.284957",
|
||||
"docstatus": 0,
|
||||
"doctype": "Onboarding Step",
|
||||
"idx": 0,
|
||||
"is_complete": 0,
|
||||
"is_mandatory": 0,
|
||||
"is_single": 0,
|
||||
"is_skipped": 0,
|
||||
"modified": "2020-05-14 17:28:54.285958",
|
||||
"modified_by": "Administrator",
|
||||
"name": "Start Campaign",
|
||||
"owner": "Administrator",
|
||||
"reference_document": "Campaign",
|
||||
"title": "Start Campaign"
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user