diff --git a/res_partner_mails_count/__openerp__.py b/res_partner_mails_count/__openerp__.py index 250b763..8e67f6b 100644 --- a/res_partner_mails_count/__openerp__.py +++ b/res_partner_mails_count/__openerp__.py @@ -20,11 +20,12 @@ 'version': '0.1', # any module necessary for this one to work correctly - 'depends': ['base'], + 'depends': ['base', 'mail_sent'], # always loaded 'data': [ # 'security/ir.model.access.csv', + 'views/res_partner_mails_count.xml', 'templates.xml', ], # only loaded in demonstration mode diff --git a/res_partner_mails_count/models.py b/res_partner_mails_count/models.py index 1d667c0..f47cc99 100644 --- a/res_partner_mails_count/models.py +++ b/res_partner_mails_count/models.py @@ -22,29 +22,17 @@ logger = getlogger(__name__) class res_partner(models.Model): _inherit = 'res.partner' - income = fields.Integer(compute="_income") - sent = fields.Integer(compute="_sent") - - def _search_partner(self): - return self.env['res.partner'].search([('user_ids', '=', self._uid)]) - - def _search_letters(self, partner, param): - letters = self.env['mail.message'].search([(param, '=', partner.id)]) - # logger.debug('partner.id: %s' % partner.id) - # logger.debug('Income letters: %s' % letters) - return letters - - @api.multi - def _income(self): - partner = self._search_partner() - if partner: - letters = self._search_letters(partner, 'partner_ids') - partner.income = len(letters) - - @api.multi - def _sent(self): - partner = self._search_partner() - if partner: - letters = self._search_letters(partner, 'author_id') - partner.sent = len(letters) - + mails_from = fields.Integer(compute="_mails_from") + mails_to = fields.Integer(compute="_mails_to") + + @api.one + def _mails_from(self): + for r in self: + letters = self.env['mail.message'].search([('partner_ids', 'in', r.id)]) + self.mails_from = len(letters) + + @api.one + def _mails_to(self): + for r in self: + letters = self.env['mail.message'].search([('author_id', '=', r.id)]) + self.mails_to = len(letters) diff --git a/res_partner_mails_count/templates.xml b/res_partner_mails_count/templates.xml index abf0199..2cfcc3a 100644 --- a/res_partner_mails_count/templates.xml +++ b/res_partner_mails_count/templates.xml @@ -2,39 +2,29 @@ - res.partner.mails.count.income + res.partner.mails.count res.partner - - - - - - res.partner.mails.count.sent - res.partner - - - - - - -