diff --git a/addons/crm/models/crm_lead.py b/addons/crm/models/crm_lead.py index a029bda8fc5..64c443c3e0f 100644 --- a/addons/crm/models/crm_lead.py +++ b/addons/crm/models/crm_lead.py @@ -13,7 +13,7 @@ from odoo.addons.phone_validation.tools import phone_validation from odoo.exceptions import UserError, AccessError from odoo.osv import expression from odoo.tools.translate import _ -from odoo.tools import date_utils, email_re, email_split +from odoo.tools import date_utils, email_re, email_split, is_html_empty from . import crm_stage @@ -979,6 +979,13 @@ class Lead(models.Model): @api.model def get_empty_list_help(self, help): + """ This method returns the action helpers for the leads. If help is already provided + on the action, the same is returned. Otherwise, we build the help message which + contains the alias responsible for creating the lead (if available) and return it. + """ + if not is_html_empty(help): + return help + help_title, sub_title = "", "" if self._context.get('default_type') == 'lead': help_title = _('Create a new lead') diff --git a/addons/crm/report/crm_opportunity_report_views.xml b/addons/crm/report/crm_opportunity_report_views.xml index 52540651358..8f2187d0101 100644 --- a/addons/crm/report/crm_opportunity_report_views.xml +++ b/addons/crm/report/crm_opportunity_report_views.xml @@ -118,11 +118,13 @@ (0, 0, {'view_mode': 'graph', 'view_id': ref('crm_opportunity_report_view_graph')}), (0, 0, {'view_mode': 'pivot', 'view_id': ref('crm_opportunity_report_view_pivot')}), (0, 0, {'view_mode': 'tree', 'view_id': ref('crm_case_tree_view_oppor')})]"/> - Pipeline Analysis gives you an instant access to - your opportunities with information such as the expected revenue, planned cost, - missed deadlines or the number of interactions per opportunity. This report is - mainly used by the sales manager in order to do the periodic review with the - teams of the sales pipeline. + +

+ No data found! +

+ Use this menu to have an overview of your Pipeline. +

+
@@ -143,7 +145,13 @@ eval="[(5, 0, 0), (0, 0, {'view_mode': 'graph', 'view_id': ref('crm_opportunity_report_view_graph_lead')}), (0, 0, {'view_mode': 'pivot', 'view_id': ref('crm_opportunity_report_view_pivot_lead')})]"/> - This report analyses the source of your leads. + +

+ No data found! +

+ This analysis shows you how many leads have been created per month. +

+
diff --git a/addons/crm/views/crm_lead_views.xml b/addons/crm/views/crm_lead_views.xml index 7f0b83f84a7..83838fa8c5d 100644 --- a/addons/crm/views/crm_lead_views.xml +++ b/addons/crm/views/crm_lead_views.xml @@ -882,6 +882,13 @@ if record: 'search_default_to_process':1, } + +

+ Create a Lead +

+ Leads are the qualification step before the creation of an opportunity. +

+
@@ -934,6 +941,13 @@ if record: {'default_type': 'opportunity', 'search_default_assigned_to_me': 1} + +

+ Looks like nothing is planned. +

+ Schedule activities to keep track of everything you have to do. +

+
diff --git a/addons/crm_iap_lead/models/crm_iap_lead_mining_request.py b/addons/crm_iap_lead/models/crm_iap_lead_mining_request.py index e5a739ab53a..4416b8999ca 100644 --- a/addons/crm_iap_lead/models/crm_iap_lead_mining_request.py +++ b/addons/crm_iap_lead/models/crm_iap_lead_mining_request.py @@ -245,29 +245,52 @@ class CRMLeadMiningRequest(models.Model): if results: self._create_leads_from_response(results) self.state = 'done' - if self.lead_type == 'lead': - return self.action_get_lead_action() - elif self.lead_type == 'opportunity': - return self.action_get_opportunity_action() + if self.lead_type == 'lead': + return self.action_get_lead_action() + elif self.lead_type == 'opportunity': + return self.action_get_opportunity_action() + else: + return self._action_try_again() def action_get_lead_action(self): self.ensure_one() action = self.env["ir.actions.actions"]._for_xml_id("crm.crm_lead_all_leads") action['domain'] = [('id', 'in', self.lead_ids.ids), ('type', '=', 'lead')] - action['help'] = _("""

- No leads found -

- No leads could be generated according to your search criteria -

""") return action + def _action_try_again(self): + last_mining_request = self.env['crm.iap.lead.mining.request'].search([('user_id', '=', self.env.uid)], order='create_date desc', limit=1) + return { + 'name': _('Generate Leads'), + 'res_model': 'crm.iap.lead.mining.request', + 'views': [[False, 'form']], + 'target': 'new', + 'type': 'ir.actions.act_window', + 'context': { + 'show_warning': True, + 'is_modal': True, 'default_state': 'draft', + 'default_lead_type': last_mining_request.lead_type, + 'default_lead_number':last_mining_request.lead_number, + 'default_search_type': last_mining_request.search_type, + 'default_country_ids':last_mining_request.country_ids.ids, + 'default_state_ids': last_mining_request.state_ids.ids, + 'default_industry_ids':last_mining_request.industry_ids.ids, + 'default_filter_on_size':last_mining_request.filter_on_size, + 'default_company_size_min':last_mining_request.company_size_min, + 'default_company_size_max':last_mining_request.company_size_max, + 'default_team_id':last_mining_request.team_id.id, + 'default_user_id':last_mining_request.user_id.id, + 'default_tag_ids':last_mining_request.tag_ids.ids, + 'default_contact_number':last_mining_request.contact_number, + 'default_contact_filter_type':last_mining_request.contact_filter_type, + 'default_preferred_role_id':last_mining_request.preferred_role_id.id, + 'default_role_ids':last_mining_request.role_ids.ids, + 'default_seniority_id':last_mining_request.seniority_id.id, + } + } + def action_get_opportunity_action(self): self.ensure_one() action = self.env["ir.actions.actions"]._for_xml_id("crm.crm_lead_opportunities") action['domain'] = [('id', 'in', self.lead_ids.ids), ('type', '=', 'opportunity')] - action['help'] = _("""

- No opportunities found -

- No opportunities could be generated according to your search criteria -

""") return action diff --git a/addons/crm_iap_lead/views/crm_iap_lead_views.xml b/addons/crm_iap_lead/views/crm_iap_lead_views.xml index f1c7abb3612..8044e43f9af 100644 --- a/addons/crm_iap_lead/views/crm_iap_lead_views.xml +++ b/addons/crm_iap_lead/views/crm_iap_lead_views.xml @@ -10,6 +10,9 @@