Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.
Module: Email Marketing
Entity: mailing.contact
Compute Method: _compute_clicks_ratio
| Inputs | Method | Outputs |
|---|---|---|
|
+ grouped_traces = dict(self.env['mailing.trace'].sudo()._read_group( + domain=[('model', '=', 'mailing.contact'), ('res_id', 'in', self.ids)], + groupby=[('res_id')], + aggregates=[('id:count_distinct')] + )) + grouped_clicks = dict(self.env['link.tracker.click'].sudo()._read_group( + domain=[('mailing_trace_id.model', '=', 'mailing.contact'), ('mailing_trace_id.res_id', 'in', self.ids)], + groupby=[('mailing_trace_id.res_id')], + aggregates=[('mailing_trace_id:count_distinct')] + )) + for contact in self: + contact.clicks_ratio = float_round(100 * grouped_clicks.get(contact.id, 0) / grouped_traces.get(contact.id, 1), precision_digits=2) |
|
