[IMP] crm: lint data and menu entries
PURPOSE Prepare enhancements of sales team membership. SPECIFICATIONS Lint crm data and demo, notably about sales team and file organization. Also move crm menu entries declaration in a single file and remove some menu entries not imported anymore. LINKS Task ID 2086889 (sales team enhancements) Task ID 2234698 (preparation lint) Community PR odoo/odoo#49520
This commit is contained in:
+13
-11
@@ -26,33 +26,35 @@
|
||||
'security/crm_security.xml',
|
||||
'security/ir.model.access.csv',
|
||||
|
||||
'data/crm_data.xml',
|
||||
'data/crm_stage_data.xml',
|
||||
'data/crm_lead_data.xml',
|
||||
'data/digest_data.xml',
|
||||
'data/crm_lead_prediction_data.xml',
|
||||
'data/crm_lost_reason_data.xml',
|
||||
'data/crm_stage_data.xml',
|
||||
'data/crm_team_data.xml',
|
||||
'data/digest_data.xml',
|
||||
'data/mail_data.xml',
|
||||
|
||||
'wizard/crm_lead_lost_views.xml',
|
||||
'wizard/crm_lead_to_opportunity_views.xml',
|
||||
'wizard/crm_lead_to_opportunity_mass_views.xml',
|
||||
'wizard/crm_merge_opportunities_views.xml',
|
||||
|
||||
'views/crm_templates.xml',
|
||||
'views/res_config_settings_views.xml',
|
||||
'views/crm_views.xml',
|
||||
'views/assets.xml',
|
||||
'views/calendar_views.xml',
|
||||
'views/crm_menu_views.xml',
|
||||
'views/crm_lost_reason_views.xml',
|
||||
'views/crm_stage_views.xml',
|
||||
'views/crm_lead_views.xml',
|
||||
'views/calendar_views.xml',
|
||||
'views/digest_views.xml',
|
||||
'views/mail_activity_views.xml',
|
||||
'views/res_config_settings_views.xml',
|
||||
'views/res_partner_views.xml',
|
||||
'views/utm_campaign_views.xml',
|
||||
'report/crm_activity_report_views.xml',
|
||||
'report/crm_opportunity_report_views.xml',
|
||||
'views/crm_team_views.xml',
|
||||
'views/digest_views.xml',
|
||||
'views/utm_campaign_views.xml'
|
||||
],
|
||||
'demo': [
|
||||
'data/crm_demo.xml',
|
||||
'data/crm_team_demo.xml',
|
||||
'data/mail_activity_demo.xml',
|
||||
'data/crm_lead_demo.xml',
|
||||
],
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<record id="sales_team.salesteam_website_sales" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.pos_sales_team" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.ebay_sales_team" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
|
||||
<!--default alias for leads-->
|
||||
<record id="mail_alias_lead_info" model="mail.alias">
|
||||
<field name="alias_name"></field>
|
||||
<field name="alias_model_id" ref="model_crm_lead"/>
|
||||
<field name="alias_user_id" ref="base.user_admin"/>
|
||||
<field name="alias_parent_model_id" ref="model_crm_team"/>
|
||||
</record>
|
||||
|
||||
<!-- opportunities' lost causes -->
|
||||
<record id="lost_reason_1" model="crm.lost.reason">
|
||||
<field name="name">Too expensive</field>
|
||||
</record>
|
||||
<record id="lost_reason_2" model="crm.lost.reason">
|
||||
<field name="name">We don't have people/skills</field>
|
||||
</record>
|
||||
<record id="lost_reason_3" model="crm.lost.reason">
|
||||
<field name="name">Not enough stock</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo><data noupdate="1">
|
||||
<!-- opportunities' lost causes -->
|
||||
<record id="lost_reason_1" model="crm.lost.reason">
|
||||
<field name="name">Too expensive</field>
|
||||
</record>
|
||||
<record id="lost_reason_2" model="crm.lost.reason">
|
||||
<field name="name">We don't have people/skills</field>
|
||||
</record>
|
||||
<record id="lost_reason_3" model="crm.lost.reason">
|
||||
<field name="name">Not enough stock</field>
|
||||
</record>
|
||||
</data></odoo>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo><data noupdate="1">
|
||||
<record id="sales_team.salesteam_website_sales" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.pos_sales_team" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.ebay_sales_team" model="crm.team" forcecreate="False">
|
||||
<field name="use_opportunities" eval="False"/>
|
||||
</record>
|
||||
</data></odoo>
|
||||
@@ -1,14 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<record id="base.user_demo" model="res.users">
|
||||
<field name="groups_id" eval="[(4,ref('sales_team.group_sale_salesman'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.team_sales_department" model="crm.team" forcecreate="False">
|
||||
<field name="alias_name">sales</field>
|
||||
<field name="alias_user_id" ref="base.user_admin"/>
|
||||
<field name="company_id" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.crm_team_1" model="crm.team">
|
||||
@@ -1,6 +1,13 @@
|
||||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<!--default alias for leads-->
|
||||
<record id="mail_alias_lead_info" model="mail.alias">
|
||||
<field name="alias_name"></field>
|
||||
<field name="alias_model_id" ref="model_crm_lead"/>
|
||||
<field name="alias_user_id" ref="base.user_admin"/>
|
||||
<field name="alias_parent_model_id" ref="model_crm_team"/>
|
||||
</record>
|
||||
|
||||
<!-- CRM-related subtypes for messaging / Chatter -->
|
||||
<record id="mt_lead_create" model="mail.message.subtype">
|
||||
@@ -15,7 +15,9 @@ class Team(models.Model):
|
||||
|
||||
use_leads = fields.Boolean('Leads', help="Check this box to filter and qualify incoming requests as leads before converting them into opportunities and assigning them to a salesperson.")
|
||||
use_opportunities = fields.Boolean('Pipeline', default=True, help="Check this box to manage a presales process with opportunities.")
|
||||
alias_id = fields.Many2one('mail.alias', string='Alias', ondelete="restrict", required=True, help="The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.")
|
||||
alias_id = fields.Many2one(
|
||||
'mail.alias', string='Alias', ondelete="restrict", required=True,
|
||||
help="The email address associated with this channel. New emails received will automatically create new leads assigned to the channel.")
|
||||
# statistics about leads / opportunities / both
|
||||
lead_unassigned_count = fields.Integer(
|
||||
string='# Unassigned Leads', compute='_compute_lead_unassigned_count')
|
||||
@@ -118,6 +120,7 @@ class Team(models.Model):
|
||||
if not use_leads and not use_opportunities:
|
||||
return {'alias_name': False}
|
||||
return {}
|
||||
|
||||
# ------------------------------------------------------------
|
||||
# MESSAGING
|
||||
# ------------------------------------------------------------
|
||||
@@ -162,7 +165,7 @@ class Team(models.Model):
|
||||
return action
|
||||
|
||||
def _compute_dashboard_button_name(self):
|
||||
super(Team,self)._compute_dashboard_button_name()
|
||||
super(Team, self)._compute_dashboard_button_name()
|
||||
team_with_pipelines = self.filtered(lambda el: el.use_opportunities)
|
||||
team_with_pipelines.update({'dashboard_button_name': _("Pipeline")})
|
||||
|
||||
|
||||
@@ -123,11 +123,9 @@
|
||||
teams of the sales pipeline.</field>
|
||||
</record>
|
||||
|
||||
<menuitem id="crm_opportunity_report_menu"
|
||||
name="Pipeline"
|
||||
parent="crm_menu_report"
|
||||
action="crm_opportunity_report_action"
|
||||
sequence="2"/>
|
||||
<record id="crm_opportunity_report_menu" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_opportunity_report_action"/>
|
||||
</record>
|
||||
|
||||
<record id="crm_opportunity_report_action_lead" model="ir.actions.act_window">
|
||||
<field name="name">Leads Analysis</field>
|
||||
@@ -142,12 +140,8 @@
|
||||
<field name="help">This report analyses the source of your leads.</field>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
id="crm_opportunity_report_menu_lead"
|
||||
name="Leads"
|
||||
parent="crm_menu_report"
|
||||
action="crm_opportunity_report_action_lead"
|
||||
groups="crm.group_use_lead"
|
||||
sequence="1"/>
|
||||
<record id="crm_opportunity_report_menu_lead" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_opportunity_report_action_lead"/>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
|
||||
<menuitem
|
||||
id="menu_import_crm"
|
||||
name="Import & Synchronize"
|
||||
parent="crm_menu_root"/>
|
||||
|
||||
<record id="view_crm_meeting_search" model="ir.ui.view">
|
||||
<field name="name">calendar.event.form.inherit</field>
|
||||
<field name="model">calendar.event</field>
|
||||
|
||||
@@ -767,28 +767,6 @@ if record:
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Menu Actions
|
||||
-->
|
||||
<menuitem
|
||||
id="crm_menu_sales"
|
||||
name="Sales"
|
||||
parent="crm_menu_root"
|
||||
sequence="1"/>
|
||||
|
||||
<menuitem id="sales_team_menu_team_pipeline"
|
||||
name="Team Pipelines"
|
||||
parent="crm_menu_sales"
|
||||
action="sales_team.crm_team_salesteams_pipelines_act"
|
||||
groups="sales_team.group_sale_manager"
|
||||
sequence="4"/>
|
||||
|
||||
<menuitem id="res_partner_menu_customer"
|
||||
name="Customers"
|
||||
parent="crm_menu_sales"
|
||||
action="base.action_partner_form"
|
||||
sequence="5"/>
|
||||
|
||||
<!-- Lead Menu -->
|
||||
<record model="ir.actions.act_window" id="crm_lead_all_leads">
|
||||
<field name="name">Leads</field>
|
||||
@@ -839,12 +817,9 @@ if record:
|
||||
<field name="act_window_id" ref="crm_lead_all_leads"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="crm_menu_leads"
|
||||
name="Leads"
|
||||
parent="crm_menu_root"
|
||||
groups="crm.group_use_lead"
|
||||
action="crm_lead_all_leads"
|
||||
sequence="5"/>
|
||||
<record id="crm_menu_leads" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_lead_all_leads"/>
|
||||
</record>
|
||||
|
||||
<!-- 'My Pipeline' menu : Server action, act_window_views and act_windows -->
|
||||
<record model="ir.actions.act_window" id="crm_lead_opportunities">
|
||||
@@ -948,22 +923,10 @@ if record:
|
||||
<field name="act_window_id" ref="crm_lead_action_pipeline"/>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_opportunities"
|
||||
action="action_your_pipeline"
|
||||
name="My Pipeline"
|
||||
parent="crm_menu_sales"
|
||||
sequence="1"/>
|
||||
|
||||
<menuitem
|
||||
id="crm.crm_menu_root"
|
||||
name="CRM"
|
||||
action="action_your_pipeline"/>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_lead_categ"
|
||||
name="Tags"
|
||||
action="sales_team.sales_team_crm_tag_action"
|
||||
parent="menu_crm_config_lead"
|
||||
sequence="1"/>
|
||||
<record id="menu_crm_opportunities" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.action_your_pipeline"/>
|
||||
</record>
|
||||
<record id="crm_menu_root" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.action_your_pipeline"/>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
@@ -69,9 +69,7 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_lost_reason"
|
||||
action="crm_lost_reason_action"
|
||||
parent="menu_crm_config_lead"
|
||||
sequence="6"/>
|
||||
<record id="menu_crm_lost_reason" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_lost_reason_action"/>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
@@ -1,26 +1,126 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<menuitem
|
||||
id="crm_menu_sales"
|
||||
name="Sales"
|
||||
parent="crm_menu_root"
|
||||
sequence="1"/>
|
||||
|
||||
<menuitem id="sales_team_menu_team_pipeline"
|
||||
name="Team Pipelines"
|
||||
parent="crm_menu_sales"
|
||||
action="crm_team_salesteams_pipelines_act"
|
||||
sequence="4"/>
|
||||
<!-- Top menu item -->
|
||||
<!--
|
||||
This menu item's purpose is to overwrite another one defined in
|
||||
the base module in order to set new groups.
|
||||
-->
|
||||
<menuitem
|
||||
id="crm_menu_root"
|
||||
name="CRM"
|
||||
web_icon="crm,static/description/icon.png"
|
||||
groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"
|
||||
sequence="6"/>
|
||||
|
||||
<menuitem id="res_partner_menu_customer"
|
||||
name="Customers"
|
||||
parent="crm_menu_sales"
|
||||
action="base.action_partner_form"
|
||||
sequence="5"/>
|
||||
<!-- SALES (MAIN USER MENU) -->
|
||||
<menuitem
|
||||
id="crm_menu_sales"
|
||||
name="Sales"
|
||||
parent="crm_menu_root"
|
||||
sequence="1"/>
|
||||
<menuitem
|
||||
id="menu_crm_opportunities"
|
||||
name="My Pipeline"
|
||||
parent="crm_menu_sales"
|
||||
sequence="1"/>
|
||||
<menuitem
|
||||
id="sales_team_menu_team_pipeline"
|
||||
name="Team Pipelines"
|
||||
parent="crm_menu_sales"
|
||||
action="sales_team.crm_team_salesteams_pipelines_act"
|
||||
groups="sales_team.group_sale_manager"
|
||||
sequence="4"/>
|
||||
<menuitem
|
||||
id="res_partner_menu_customer"
|
||||
name="Customers"
|
||||
parent="crm_menu_sales"
|
||||
action="base.action_partner_form"
|
||||
sequence="5"/>
|
||||
|
||||
<menuitem id="crm_menu_leads"
|
||||
name="Leads"
|
||||
parent="crm_menu_root"
|
||||
groups="crm.group_use_lead"
|
||||
sequence="5"/>
|
||||
</odoo>
|
||||
<!-- LEADS (MAIN USER MENU) -->
|
||||
<menuitem
|
||||
id="crm_menu_leads"
|
||||
name="Leads"
|
||||
parent="crm_menu_root"
|
||||
groups="crm.group_use_lead"
|
||||
sequence="5"/>
|
||||
|
||||
<!-- REPORTING -->
|
||||
<menuitem
|
||||
id="crm_menu_report"
|
||||
name="Reporting"
|
||||
parent="crm_menu_root"
|
||||
sequence="20"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
<menuitem
|
||||
id="crm_opportunity_report_menu_lead"
|
||||
name="Leads"
|
||||
parent="crm_menu_report"
|
||||
groups="crm.group_use_lead"
|
||||
sequence="1"/>
|
||||
<menuitem
|
||||
id="crm_opportunity_report_menu"
|
||||
name="Pipeline"
|
||||
parent="crm_menu_report"
|
||||
sequence="2"/>
|
||||
|
||||
<!-- CONFIGURATION -->
|
||||
<menuitem
|
||||
id="crm_menu_config"
|
||||
name="Configuration"
|
||||
parent="crm_menu_root"
|
||||
sequence="25" groups="sales_team.group_sale_manager"/>
|
||||
<menuitem
|
||||
id="crm_config_settings_menu"
|
||||
name="Settings"
|
||||
parent="crm_menu_config"
|
||||
groups="base.group_system"
|
||||
sequence="0"/>
|
||||
<menuitem
|
||||
id="menu_crm_config_opportunity"
|
||||
name="Opportunities"
|
||||
parent="crm_menu_config"
|
||||
sequence="1"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
<menuitem
|
||||
id="crm_team_config"
|
||||
name="Sales Teams"
|
||||
parent="crm_menu_config"
|
||||
action="sales_team.sales_team_config_action"
|
||||
sequence="5"/>
|
||||
<menuitem
|
||||
id="crm_team_menu_config_activity_types"
|
||||
name="Activity Types"
|
||||
parent="crm_menu_config"
|
||||
action="sales_team.mail_activity_type_action_config_sales"
|
||||
sequence="10"/>
|
||||
<menuitem
|
||||
id="menu_crm_config_lead"
|
||||
name="Pipeline"
|
||||
parent="crm_menu_config"
|
||||
sequence="15"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
<menuitem
|
||||
id="menu_crm_lead_stage_act"
|
||||
name="Stages"
|
||||
sequence="0"
|
||||
parent="menu_crm_config_lead"
|
||||
groups="base.group_no_one"/>
|
||||
<menuitem
|
||||
id="menu_crm_lead_categ"
|
||||
name="Tags"
|
||||
action="sales_team.sales_team_crm_tag_action"
|
||||
parent="menu_crm_config_lead"
|
||||
sequence="1"/>
|
||||
<menuitem
|
||||
id="menu_crm_lost_reason"
|
||||
name="Lost Reasons"
|
||||
parent="menu_crm_config_lead"
|
||||
sequence="6"/>
|
||||
|
||||
<menuitem
|
||||
id="menu_import_crm"
|
||||
name="Import & Synchronize"
|
||||
parent="crm_menu_root"/>
|
||||
</odoo>
|
||||
|
||||
@@ -71,12 +71,8 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_lead_stage_act"
|
||||
name="Stages"
|
||||
sequence="0"
|
||||
action="crm_stage_action"
|
||||
parent="menu_crm_config_lead"
|
||||
groups="base.group_no_one"/>
|
||||
<record id="menu_crm_lead_stage_act" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_stage_action"/>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
@@ -268,9 +268,4 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="sales_team.mail_activity_type_action_config_sales" model="ir.actions.act_window">
|
||||
<field name="domain">['|', ('res_model_id', '=', False), ('res_model_id.model', 'in', ['crm.lead', 'res.partner'])]</field>
|
||||
<field name="context">{'default_res_model': 'crm.lead'}</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
|
||||
<!-- Top menu item -->
|
||||
<!--
|
||||
This menu item's purpose is to overwrite another one defined in
|
||||
the base module in order to set new groups.
|
||||
-->
|
||||
<menuitem
|
||||
id="crm_menu_root"
|
||||
name="CRM"
|
||||
web_icon="crm,static/description/icon.png"
|
||||
groups="sales_team.group_sale_salesman,sales_team.group_sale_manager"
|
||||
sequence="6"/>
|
||||
|
||||
<menuitem
|
||||
id="crm_menu_config"
|
||||
name="Configuration"
|
||||
parent="crm_menu_root"
|
||||
sequence="25" groups="sales_team.group_sale_manager"/>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_config_lead"
|
||||
name="Pipeline"
|
||||
parent="crm_menu_config"
|
||||
sequence="15"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
|
||||
<menuitem
|
||||
id="menu_crm_config_opportunity"
|
||||
name="Opportunities"
|
||||
parent="crm_menu_config"
|
||||
sequence="1"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
|
||||
<menuitem id="crm_config_settings_menu"
|
||||
name="Settings"
|
||||
parent="crm_menu_config"
|
||||
action="crm_config_settings_action"
|
||||
groups="base.group_system"
|
||||
sequence="0"/>
|
||||
|
||||
<menuitem id="crm_menu_report"
|
||||
name="Reporting"
|
||||
parent="crm_menu_root"
|
||||
sequence="20"
|
||||
groups="sales_team.group_sale_manager"/>
|
||||
|
||||
<menuitem id="crm_team_config"
|
||||
name="Sales Teams"
|
||||
parent="crm_menu_config"
|
||||
action="sales_team.sales_team_config_action"
|
||||
sequence="5"/>
|
||||
|
||||
<menuitem id="crm_team_menu_config_activity_types"
|
||||
name="Activity Types"
|
||||
parent="crm_menu_config"
|
||||
action="sales_team.mail_activity_type_action_config_sales"
|
||||
sequence="10"/>
|
||||
|
||||
</odoo>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="sales_team.mail_activity_type_action_config_sales" model="ir.actions.act_window">
|
||||
<field name="domain">['|', ('res_model_id', '=', False), ('res_model_id.model', 'in', ['crm.lead', 'res.partner'])]</field>
|
||||
<field name="context">{'default_res_model': 'crm.lead'}</field>
|
||||
</record>
|
||||
</odoo>
|
||||
@@ -133,4 +133,9 @@
|
||||
<field name="target">inline</field>
|
||||
<field name="context">{'module' : 'crm'}</field>
|
||||
</record>
|
||||
|
||||
<record id="crm_config_settings_menu" model="ir.ui.menu">
|
||||
<field name="action" ref="crm.crm_config_settings_action"/>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user