diff --git a/addons/crm/data/crm_lead_demo.xml b/addons/crm/data/crm_lead_demo.xml
index e1b3c7edf1d..144ed8e5789 100644
--- a/addons/crm/data/crm_lead_demo.xml
+++ b/addons/crm/data/crm_lead_demo.xml
@@ -343,7 +343,7 @@ Andrew
]]>
opportunity
Quote for 12 Tables
- 40000
+ 40000
10.0
Will McEncroe
Rediff Mail
@@ -367,7 +367,7 @@ Andrew]]>
opportunity
Office Design Project
7
- 24000
+ 24000
10.0
Deco Addict
info@agrolait.com
@@ -392,7 +392,7 @@ Andrew]]>
opportunity
Info about services
- 25000
+ 25000
30.0
virginie@agrolait.com
@@ -484,7 +484,7 @@ Andrew]]>
opportunity
Global Solutions: Furnitures
- 3800
+ 3800
90.0
Robin Smith
Global Solutions
@@ -508,7 +508,7 @@ Andrew]]>
opportunity
Balmer Inc: Potential Distributor
- 1000
+ 1000
35.0
BalmerInc S.A.
Oliver Passot
@@ -542,7 +542,7 @@ Andrew]]>
opportunity
DeltaPC: 10 Computer Desks
-
+
Leland Martinez
info@deltapc.com
@@ -589,7 +589,7 @@ Andrew]]>
opportunity
Customizable Desk
3
- 15000
+ 15000
65.5
Nhomar
Vauxoo
@@ -617,7 +617,7 @@ Andrew]]>
opportunity
Distributor Contract
- 19800
+ 19800
John M. Brown
Epic Technologies
john.b@tech.info
@@ -640,7 +640,7 @@ Andrew]]>
opportunity
Office Design and Architecture
- 9000
+ 9000
Birmingham
@@ -660,7 +660,7 @@ Andrew]]>
opportunity
5 VP Chairs
- 5600
+ 5600
30.0
Benjamin Flores
Nebula Business
@@ -679,7 +679,7 @@ Andrew]]>
opportunity
Access to Online Catalog
- 2000
+ 2000
80.0
0
@@ -696,7 +696,7 @@ Andrew]]>
opportunity
Need 20 Desks
- 60000
+ 60000
90.0
info@mycompany.net
@@ -715,7 +715,7 @@ Andrew]]>
opportunity
Modern Open Space
- 4500
+ 4500
60
Henry Jordan
E-light Industry
@@ -739,7 +739,7 @@ Andrew]]>
opportunity
Open Space Design
- 11000
+ 11000
45
Deco Addict
info@agrolait.com
@@ -763,7 +763,7 @@ Andrew]]>
opportunity
Interest in your products
- 2000
+ 2000
80
Deco Addict
info@agrolait.com
@@ -787,7 +787,7 @@ Andrew]]>
opportunity
Furnish a 60m² office
- 7500
+ 7500
20
Deco Addict
info@agrolait.com
@@ -852,7 +852,7 @@ Andrew]]>
opportunity
Quote for 150 carpets
- 40000
+ 40000
10.0
Erik N. French
ErikNFrench@armyspy.com
@@ -874,7 +874,7 @@ Andrew]]>
opportunity
Quote for 600 Chairs
- 22500
+ 22500
20.0
Erik N. French
ErikNFrench@armyspy.com
@@ -896,7 +896,7 @@ Andrew]]>
lead
Recurring delivery contract
-36221
+36221
20
Max Johnson
max123@itconsult.com
@@ -915,7 +915,7 @@ Andrew]]>
lead
Need info about pricing
-28443
+28443
80
Aloysius Akred
aakreda@theglobeandmail.com
@@ -935,7 +935,7 @@ Andrew]]>
lead
Trelian New Offices
-88715
+88715
12
Rosalynd Oxshott
Photobug
@@ -955,7 +955,7 @@ Andrew]]>
lead
Branded Furniture
-7784
+7784
20
Myrna Limprecht
mlimprecht8@fastcompany.com
@@ -974,7 +974,7 @@ Andrew]]>
lead
Design New Shelves
-54587
+54587
81
Alys Kalinovich
Jaloo
@@ -994,7 +994,7 @@ Andrew]]>
lead
Office chairs
-5474
+5474
20
Jennine Jobbins
Shufflebeat
@@ -1014,7 +1014,7 @@ Andrew]]>
lead
Cleaning subscription
-11475
+11475
25
Elmo Espinazo
Realblab
@@ -1034,7 +1034,7 @@ Andrew]]>
lead
Custom Desks (100 pieces)
-9987
+9987
20
Chalmers Redford
Muxo
@@ -1056,7 +1056,7 @@ Andrew]]>
lead
Need a price: urgent
-4482
+4482
90
Itch Kirvell
Skibox
@@ -1076,7 +1076,7 @@ Andrew]]>
lead
Furnitures for new location
-22500
+22500
20
Napoleon Grabert
Twinte
@@ -1096,7 +1096,7 @@ Andrew]]>
lead
Modernize old offices
-99755
+99755
20
Franny Seiller
Yozio
@@ -1117,7 +1117,7 @@ Andrew]]>
lead
Quote for 35 windows
-41421
+41421
20
Tommi Brockhouse
Gabcube
diff --git a/addons/crm/models/crm_lead.py b/addons/crm/models/crm_lead.py
index 57e08c62d29..12b39893342 100644
--- a/addons/crm/models/crm_lead.py
+++ b/addons/crm/models/crm_lead.py
@@ -38,7 +38,7 @@ CRM_LEAD_FIELDS_TO_MERGE = [
'partner_name',
'phone',
'probability',
- 'planned_revenue',
+ 'expected_revenue',
'street',
'street2',
'zip',
@@ -125,8 +125,8 @@ class Lead(models.Model):
help="Classify and analyze your lead/opportunity categories like: Training, Service")
color = fields.Integer('Color Index', default=0)
# Opportunity specific
- planned_revenue = fields.Monetary('Expected Revenue', currency_field='company_currency', tracking=True)
- expected_revenue = fields.Monetary('Prorated Revenue', currency_field='company_currency', store=True, compute="_compute_expected_revenue")
+ expected_revenue = fields.Monetary('Expected Revenue', currency_field='company_currency', tracking=True)
+ prorated_revenue = fields.Monetary('Prorated Revenue', currency_field='company_currency', store=True, compute="_compute_prorated_revenue")
company_currency = fields.Many2one("res.currency", string='Currency', related='company_id.currency_id', readonly=True)
# Dates
date_closed = fields.Datetime('Closed Date', readonly=True, copy=False)
@@ -366,10 +366,10 @@ class Lead(models.Model):
if was_automated:
lead.probability = lead.automated_probability
- @api.depends('planned_revenue', 'probability')
- def _compute_expected_revenue(self):
+ @api.depends('expected_revenue', 'probability')
+ def _compute_prorated_revenue(self):
for lead in self:
- lead.expected_revenue = round((lead.planned_revenue or 0.0) * (lead.probability or 0) / 100.0, 2)
+ lead.prorated_revenue = round((lead.expected_revenue or 0.0) * (lead.probability or 0) / 100.0, 2)
def _compute_meeting_count(self):
if self.ids:
@@ -721,14 +721,14 @@ class Lead(models.Model):
self.ensure_one()
self.action_set_won()
- if self.user_id and self.team_id and self.planned_revenue:
+ if self.user_id and self.team_id and self.expected_revenue:
query = """
SELECT
SUM(CASE WHEN user_id = %(user_id)s THEN 1 ELSE 0 END) as total_won,
- MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '30 days' AND user_id = %(user_id)s THEN planned_revenue ELSE 0 END) as max_user_30,
- MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '7 days' AND user_id = %(user_id)s THEN planned_revenue ELSE 0 END) as max_user_7,
- MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '30 days' AND team_id = %(team_id)s THEN planned_revenue ELSE 0 END) as max_team_30,
- MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '7 days' AND team_id = %(team_id)s THEN planned_revenue ELSE 0 END) as max_team_7
+ MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '30 days' AND user_id = %(user_id)s THEN expected_revenue ELSE 0 END) as max_user_30,
+ MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '7 days' AND user_id = %(user_id)s THEN expected_revenue ELSE 0 END) as max_user_7,
+ MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '30 days' AND team_id = %(team_id)s THEN expected_revenue ELSE 0 END) as max_team_30,
+ MAX(CASE WHEN date_closed >= CURRENT_DATE - INTERVAL '7 days' AND team_id = %(team_id)s THEN expected_revenue ELSE 0 END) as max_team_7
FROM crm_lead
WHERE
type = 'opportunity'
@@ -748,13 +748,13 @@ class Lead(models.Model):
message = False
if query_result['total_won'] == 1:
message = _('Go, go, go! Congrats for your first deal.')
- elif query_result['max_team_30'] == self.planned_revenue:
+ elif query_result['max_team_30'] == self.expected_revenue:
message = _('Boom! Team record for the past 30 days.')
- elif query_result['max_team_7'] == self.planned_revenue:
+ elif query_result['max_team_7'] == self.expected_revenue:
message = _('Yeah! Deal of the last 7 days for the team.')
- elif query_result['max_user_30'] == self.planned_revenue:
+ elif query_result['max_user_30'] == self.expected_revenue:
message = _('You just beat your personal record for the past 30 days.')
- elif query_result['max_user_7'] == self.planned_revenue:
+ elif query_result['max_user_7'] == self.expected_revenue:
message = _('You just beat your personal record for the past 7 days.')
if message:
diff --git a/addons/crm/models/crm_team.py b/addons/crm/models/crm_team.py
index 695823a0d80..5d0b8267d43 100644
--- a/addons/crm/models/crm_team.py
+++ b/addons/crm/models/crm_team.py
@@ -63,14 +63,14 @@ class Team(models.Model):
('team_id', 'in', self.ids),
('probability', '<', 100),
('type', '=', 'opportunity'),
- ]).read(['planned_revenue', 'team_id'])
+ ]).read(['expected_revenue', 'team_id'])
counts = {}
amounts = {}
for datum in opportunity_data:
counts.setdefault(datum['team_id'][0], 0)
amounts.setdefault(datum['team_id'][0], 0)
counts[datum['team_id'][0]] += 1
- amounts[datum['team_id'][0]] += (datum.get('planned_revenue', 0))
+ amounts[datum['team_id'][0]] += (datum.get('expected_revenue', 0))
for team in self:
team.opportunities_count = counts.get(team.id, 0)
team.opportunities_amount = amounts.get(team.id, 0)
@@ -81,9 +81,9 @@ class Team(models.Model):
('probability', '<', 100),
('type', '=', 'opportunity'),
('date_deadline', '<', fields.Date.to_string(fields.Datetime.now()))
- ], ['planned_revenue', 'team_id'], ['team_id'])
+ ], ['expected_revenue', 'team_id'], ['team_id'])
counts = {datum['team_id'][0]: datum['team_id_count'] for datum in opportunity_data}
- amounts = {datum['team_id'][0]: (datum['planned_revenue']) for datum in opportunity_data}
+ amounts = {datum['team_id'][0]: (datum['expected_revenue']) for datum in opportunity_data}
for team in self:
team.opportunities_overdue_count = counts.get(team.id, 0)
team.opportunities_overdue_amount = amounts.get(team.id, 0)
diff --git a/addons/crm/report/crm_opportunity_report_views.xml b/addons/crm/report/crm_opportunity_report_views.xml
index f8b101e02c7..b97a0f6fc14 100644
--- a/addons/crm/report/crm_opportunity_report_views.xml
+++ b/addons/crm/report/crm_opportunity_report_views.xml
@@ -10,7 +10,7 @@
-
+
@@ -35,7 +35,7 @@
-
+
diff --git a/addons/crm/static/src/js/tours/crm.js b/addons/crm/static/src/js/tours/crm.js
index db1ff6d1e8e..6af1e0207af 100644
--- a/addons/crm/static/src/js/tours/crm.js
+++ b/addons/crm/static/src/js/tours/crm.js
@@ -35,7 +35,7 @@ tour.register('crm_tour', {
trigger: ".o_kanban_quick_create .o_field_widget[name='name']",
auto: true,
}, {
- trigger: '.o_kanban_quick_create .o_field_monetary[name="planned_revenue"]',
+ trigger: '.o_kanban_quick_create .o_field_monetary[name="expected_revenue"]',
content: _t("Define here the Expected Revenue of this Opportunity."),
position: 'right',
}, {
diff --git a/addons/crm/views/crm_lead_views.xml b/addons/crm/views/crm_lead_views.xml
index 749187354a2..67bc4f41e67 100644
--- a/addons/crm/views/crm_lead_views.xml
+++ b/addons/crm/views/crm_lead_views.xml
@@ -47,10 +47,10 @@
@@ -387,7 +387,7 @@
-
+
@@ -405,9 +405,9 @@
-
+
-
+
@@ -441,7 +441,7 @@
-
+
@@ -459,7 +459,7 @@
-
+
@@ -470,7 +470,7 @@
-
+
@@ -490,8 +490,8 @@
-
-
+
+
-
@@ -644,7 +644,7 @@
-
+
@@ -730,7 +730,7 @@
-
+
diff --git a/addons/website_crm_partner_assign/controllers/main.py b/addons/website_crm_partner_assign/controllers/main.py
index 314257fe69d..85bc2e7cc88 100644
--- a/addons/website_crm_partner_assign/controllers/main.py
+++ b/addons/website_crm_partner_assign/controllers/main.py
@@ -109,7 +109,7 @@ class WebsiteAccount(CustomerPortal):
'date': {'label': _('Newest'), 'order': 'create_date desc'},
'name': {'label': _('Name'), 'order': 'name'},
'contact_name': {'label': _('Contact Name'), 'order': 'contact_name'},
- 'revenue': {'label': _('Expected Revenue'), 'order': 'planned_revenue desc'},
+ 'revenue': {'label': _('Expected Revenue'), 'order': 'expected_revenue desc'},
'probability': {'label': _('Probability'), 'order': 'probability desc'},
'stage': {'label': _('Stage'), 'order': 'stage_id'},
}
diff --git a/addons/website_crm_partner_assign/models/crm_lead.py b/addons/website_crm_partner_assign/models/crm_lead.py
index 287832ecf70..09735aed057 100644
--- a/addons/website_crm_partner_assign/models/crm_lead.py
+++ b/addons/website_crm_partner_assign/models/crm_lead.py
@@ -208,7 +208,7 @@ class CrmLead(models.Model):
self.check_access_rights('write')
for lead in self:
lead_values = {
- 'planned_revenue': values['planned_revenue'],
+ 'expected_revenue': values['expected_revenue'],
'probability': values['probability'],
'priority': values['priority'],
'date_deadline': values['date_deadline'] or False,
diff --git a/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js b/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js
index 59a835945a0..c034ecf3eee 100644
--- a/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js
+++ b/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js
@@ -143,7 +143,7 @@ publicWidget.registry.crmPartnerAssign = publicWidget.Widget.extend({
method: 'update_lead_portal',
args: [[parseInt($('.edit_opp_form .opportunity_id').val())], {
date_deadline: this._parse_date($('.edit_opp_form .date_deadline').val()),
- planned_revenue: parseFloat($('.edit_opp_form .planned_revenue').val()),
+ expected_revenue: parseFloat($('.edit_opp_form .expected_revenue').val()),
probability: parseFloat($('.edit_opp_form .probability').val()),
activity_type_id: parseInt($('.edit_opp_form .next_activity').find(':selected').attr('data')),
activity_summary: $('.edit_opp_form .activity_summary').val(),
diff --git a/addons/website_crm_partner_assign/views/website_crm_partner_assign_templates.xml b/addons/website_crm_partner_assign/views/website_crm_partner_assign_templates.xml
index 13ad7f7267a..c9a13fca304 100644
--- a/addons/website_crm_partner_assign/views/website_crm_partner_assign_templates.xml
+++ b/addons/website_crm_partner_assign/views/website_crm_partner_assign_templates.xml
@@ -320,7 +320,7 @@
|
- at %
+ at %
|
@@ -529,7 +529,7 @@
at
|