From 3bc6bf2d99d000d0c47b19a07cd39e65e878e43f Mon Sep 17 00:00:00 2001 From: Randhir Mayatra rma-openerp Date: Mon, 21 Apr 2014 16:40:57 +0530 Subject: [PATCH] [IMP] add demo data files --- addons/crm/crm.py | 9 +---- addons/crm/crm_case_section_view.xml | 1 - addons/crm/crm_lead_menu.xml | 2 +- addons/sale_crm/sale_crm_demo.xml | 24 +++++------ addons/sale_team/sale_team.py | 10 ++++- addons/sale_team/sale_team.xml | 1 + addons/sale_team/sale_team_data.xml | 11 +++++ addons/sale_team/sale_team_demo.xml | 20 ++++++++++ .../sale_team/security/sale_team_security.xml | 40 +++++++++++++++++++ 9 files changed, 95 insertions(+), 23 deletions(-) create mode 100644 addons/sale_team/sale_team_data.xml create mode 100644 addons/sale_team/sale_team_demo.xml create mode 100644 addons/sale_team/security/sale_team_security.xml diff --git a/addons/crm/crm.py b/addons/crm/crm.py index da57ae628b3..c43a3feabb8 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -93,6 +93,7 @@ class crm_case_section(osv.osv): _name = "crm.case.section" _inherit = 'crm.case.section' _description = "Sales Teams" + _alias_model_name = 'crm.lead' def _get_opportunities_data(self, cr, uid, ids, field_name, arg, context=None): """ Get opportunities-related data for salesteam kanban view @@ -140,14 +141,6 @@ class crm_case_section(osv.osv): 'stage_ids': _get_stage_common, 'use_leads': True, } - - def unlink(self, cr, uid, ids, context=None): - # Cascade-delete mail aliases as well, as they should not exist without the sales team. - mail_alias = self.pool.get('mail.alias') - alias_ids = [team.alias_id.id for team in self.browse(cr, uid, ids, context=context) if team.alias_id] - res = super(crm_case_section, self).unlink(cr, uid, ids, context=context) - mail_alias.unlink(cr, uid, alias_ids, context=context) - return res class crm_case_categ(osv.osv): """ Category of Case """ diff --git a/addons/crm/crm_case_section_view.xml b/addons/crm/crm_case_section_view.xml index 8cc9c0bcd56..10888377050 100644 --- a/addons/crm/crm_case_section_view.xml +++ b/addons/crm/crm_case_section_view.xml @@ -89,7 +89,6 @@ - diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index dffe03dd4b3..60dc307cc0f 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -81,7 +81,7 @@ action="crm_case_category_act_leads_all"/> + groups="base.group_sale_salesman,base.group_sale_manager"/> diff --git a/addons/sale_crm/sale_crm_demo.xml b/addons/sale_crm/sale_crm_demo.xml index 25f653548d1..9af5ae7ebce 100644 --- a/addons/sale_crm/sale_crm_demo.xml +++ b/addons/sale_crm/sale_crm_demo.xml @@ -2,12 +2,12 @@ - + 52700 60000 - + Indirect Sales IM 36000 @@ -21,7 +21,7 @@ - + draft in_invoice @@ -69,7 +69,7 @@ - + draft out_invoice @@ -98,32 +98,32 @@ - + - + - + - + - + - + - + - + diff --git a/addons/sale_team/sale_team.py b/addons/sale_team/sale_team.py index eb6c892c2e9..3c13514bd11 100644 --- a/addons/sale_team/sale_team.py +++ b/addons/sale_team/sale_team.py @@ -37,6 +37,7 @@ class crm_case_section(osv.osv): _inherits = {'mail.alias': 'alias_id'} _order = "complete_name" _period_number = 5 + _alias_model_name = 'mail.message' def get_full_name(self, cr, uid, ids, field_name, arg, context=None): return dict(self.name_get(cr, uid, ids, context=context)) @@ -120,11 +121,18 @@ class crm_case_section(osv.osv): def create(self, cr, uid, vals, context=None): if context is None: context = {} - create_context = dict(context, alias_model_name='res.user', alias_parent_model_name=self._name) + create_context = dict(context, alias_model_name=self._alias_model_name, alias_parent_model_name=self._name) section_id = super(crm_case_section, self).create(cr, uid, vals, context=create_context) section = self.browse(cr, uid, section_id, context=context) self.pool.get('mail.alias').write(cr, uid, [section.alias_id.id], {'alias_parent_thread_id': section_id, 'alias_defaults': {'section_id': section_id, 'type': 'lead'}}, context=context) return section_id + def unlink(self, cr, uid, ids, context=None): + # Cascade-delete mail aliases as well, as they should not exist without the sales team. + mail_alias = self.pool.get('mail.alias') + alias_ids = [team.alias_id.id for team in self.browse(cr, uid, ids, context=context) if team.alias_id] + res = super(crm_case_section, self).unlink(cr, uid, ids, context=context) + mail_alias.unlink(cr, uid, alias_ids, context=context) + return res class res_users(osv.Model): _inherit = 'res.users' diff --git a/addons/sale_team/sale_team.xml b/addons/sale_team/sale_team.xml index f2fea79a933..b3972e71342 100644 --- a/addons/sale_team/sale_team.xml +++ b/addons/sale_team/sale_team.xml @@ -42,6 +42,7 @@ + diff --git a/addons/sale_team/sale_team_data.xml b/addons/sale_team/sale_team_data.xml new file mode 100644 index 00000000000..eef5e5809a1 --- /dev/null +++ b/addons/sale_team/sale_team_data.xml @@ -0,0 +1,11 @@ + + + + + Direct Sales + DM + sales + + + + diff --git a/addons/sale_team/sale_team_demo.xml b/addons/sale_team/sale_team_demo.xml new file mode 100644 index 00000000000..b24c047fba1 --- /dev/null +++ b/addons/sale_team/sale_team_demo.xml @@ -0,0 +1,20 @@ + + + + + + + + Indirect Sales + IM + + + + + Marketing + SPD + + + + + \ No newline at end of file diff --git a/addons/sale_team/security/sale_team_security.xml b/addons/sale_team/security/sale_team_security.xml new file mode 100644 index 00000000000..53fb560e332 --- /dev/null +++ b/addons/sale_team/security/sale_team_security.xml @@ -0,0 +1,40 @@ + + + + + + User: Own Leads Only + + + the user will have access to his own data in the sales application. + + + + User: All Leads + + + the user will have access to all records of everyone in the sales application. + + + + Manager + the user will have an access to the sales configuration as well as statistic reports. + + + + + + + + + + + + + + + + + + +