diff options
| author | Jeremy Kersten <jke@odoo.com> | 2016-10-25 20:44:12 +0200 |
|---|---|---|
| committer | Jeremy Kersten <jke@odoo.com> | 2016-11-21 11:22:05 +0100 |
| commit | c141fbb46feb3edd9250c7b073df40ceaea3ff5c (patch) | |
| tree | a8f067cc9dee36c14f9f49656dbcc64a9877e1d1 /addons/website_crm_partner_assign/models | |
| parent | 06fa5c64e00c316d27726feb6233098251b6f958 (diff) | |
[IMP] website_crm_partner_assign: add own opportunities management
Allow partners with grades to add their own opportunity in their own pipe.
Until now, it is their saleman which import the opp in csv.
Diffstat (limited to 'addons/website_crm_partner_assign/models')
| -rw-r--r-- | addons/website_crm_partner_assign/models/crm_lead.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/addons/website_crm_partner_assign/models/crm_lead.py b/addons/website_crm_partner_assign/models/crm_lead.py index a6302f5008b..fe2f42e156b 100644 --- a/addons/website_crm_partner_assign/models/crm_lead.py +++ b/addons/website_crm_partner_assign/models/crm_lead.py @@ -243,3 +243,30 @@ class CrmLead(models.Model): 'priority': values['priority'], 'date_deadline': values['date_deadline'] if values['date_deadline'] else False, }) + + @api.model + def create_opp_portal(self, values): + if self.env.user.partner_id.grade_id or self.env.user.commercial_partner_id.grade_id: + user = self.env.user + self = self.sudo() + if not (values['contact_name'] and values['description'] and values['title']): + return { + 'errors': _('All fields are required !') + } + tag_own = self.env.ref('website_crm_partner_assign.tag_portal_lead_own_opp', False) + values = { + 'contact_name': values['contact_name'], + 'name': values['title'], + 'description': values['description'], + 'priority': '2', + 'partner_assigned_id': user.partner_id.id, + } + if tag_own: + values['tag_ids'] = [(4, tag_own.id, False)] + + lead = self.create(values) + lead.assign_salesman_of_assigned_partner() + lead.convert_opportunity(lead.partner_id.id) + return { + 'id': lead.id + }
\ No newline at end of file |
