From d1e5f1d5d640ec685809faaa9bc677f14665b5fe Mon Sep 17 00:00:00 2001 From: "ajay javiya (OpenERP)" Date: Tue, 26 Jun 2012 16:51:09 +0530 Subject: [PATCH] [Add]: Implement mail.alias feature for crm bzr revid: aja@tinyerp.com-20120626112109-bt72oh4z6m6vuutq --- addons/crm/crm.py | 14 ++++++++++++++ addons/crm/crm_data.xml | 12 ++++++++++++ addons/crm/crm_view.xml | 1 + 3 files changed, 27 insertions(+) diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 65af3f9e530..88d70a61935 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -97,6 +97,7 @@ class crm_case_stage(osv.osv): class crm_case_section(osv.osv): """ Model for sales teams. """ _name = "crm.case.section" + _inherits = {'mail.alias': 'alias_id'} _description = "Sales Teams" _order = "complete_name" @@ -120,6 +121,7 @@ class crm_case_section(osv.osv): 'note': fields.text('Description'), 'working_hours': fields.float('Working Hours', digits=(16,2 )), 'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'), + 'alias_id': fields.many2one('mail.alias', 'Mail Alias'), } def _get_stage_common(self, cr, uid, context): @@ -155,6 +157,18 @@ class crm_case_section(osv.osv): name = record['parent_id'][1] + ' / ' + name res.append((record['id'], name)) return res + + def create(self, cr, uid, vals, context=None): + model_pool = self.pool.get('ir.model.data') + alias_pool = self.pool.get('mail.alias') + model, res_id = model_pool.get_object_reference( cr, uid, "crm", "model_crm_lead") + vals.update({'alias_name': "sales", + 'alias_model_id': res_id}) + name = alias_pool.create_unique_alias(cr, uid, vals, context=context) + res = super(crm_case_section, self).create(cr, uid, vals, context) + record = self.read(cr, uid, res, context) + alias_pool.write(cr, uid, [record['alias_id']],{'alias_defaults':{'section_id':res,'type':'lead'}},context) + return res class crm_case_categ(osv.osv): """ Category of Case """ diff --git a/addons/crm/crm_data.xml b/addons/crm/crm_data.xml index bab3e4bca5f..b5d40c55099 100644 --- a/addons/crm/crm_data.xml +++ b/addons/crm/crm_data.xml @@ -17,5 +17,17 @@ Sales Department Sales + + sales@openerp.my.openerp.com + + + {'type':'lead'} + + + info@openerp.my.openerp.com + + + {'type':'lead'} + diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml index 257d1cd93f7..b0db330cca9 100644 --- a/addons/crm/crm_view.xml +++ b/addons/crm/crm_view.xml @@ -76,6 +76,7 @@ +