diff --git a/crm_usability/__init__.py b/crm_usability/__init__.py new file mode 100644 index 0000000..c6e6f19 --- /dev/null +++ b/crm_usability/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import crm diff --git a/crm_usability/__manifest__.py b/crm_usability/__manifest__.py new file mode 100644 index 0000000..78e0ac6 --- /dev/null +++ b/crm_usability/__manifest__.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +# © 2016 Akretion (http://www.akretion.com) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# @author Alexis de Lattre + +{ + 'name': 'CRM Usability', + 'version': '10.0.1.0.0', + 'category': 'Customer Relationship Management', + 'license': 'AGPL-3', + 'summary': 'CRM usability enhancements', + 'description': """ +CRM Usability +============= + +Some enhancements in the *Merge Partners* wizard: + +* take into account the unaccent option of the server config file +* add optional group by on 'customer' and 'supplier' (active by default) + +This module has been written by Alexis de Lattre from Akretion +. + """, + 'author': 'Akretion', + 'website': 'http://www.akretion.com', + 'depends': ['crm'], + 'data': [ + #'wizard/base_partner_merge_view.xml', + 'crm_view.xml', + ], + 'installable': True, +} diff --git a/crm_usability/crm.py b/crm_usability/crm.py new file mode 100644 index 0000000..a754312 --- /dev/null +++ b/crm_usability/crm.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +# © 2017 Akretion (http://www.akretion.com) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# @author Alexis de Lattre + +from odoo import models, fields, api + + +class CrmLead(models.Model): + _inherit = 'crm.lead' + + probability = fields.Float(track_visibility='onchange') + date_deadline = fields.Date(track_visibility='onchange') + # Change from 'always' to 'onchange' + planned_revenue = fields.Float(track_visibility='onchange') + type = fields.Selection(track_visibility='onchange') + name = fields.Char(track_visibility='onchange') + probable_revenue = fields.Monetary( + compute='_compute_probable_revenue', + string='Probable Revenue', + help="Probable Revenue = Expected Revenue x Probability", + currency_field='company_currency', readonly=True, store=True) + + @api.multi + @api.depends('probability', 'planned_revenue') + def _compute_probable_revenue(self): + for lead in self: + rev_prob = lead.probability * lead.planned_revenue / 100.0 + lead.probable_revenue = rev_prob diff --git a/crm_usability/crm_view.xml b/crm_usability/crm_view.xml new file mode 100644 index 0000000..f08291a --- /dev/null +++ b/crm_usability/crm_view.xml @@ -0,0 +1,32 @@ + + + + + + + usability.crm.lead.form.opportunity + crm.lead + + + + + + + + + + usability.crm.lead.tree.opportunity + crm.lead + + + + + + + + + +