[MIG] partner_favorite : Migration to 16.0
This commit is contained in:
committed by
Stéphan Sainléger
parent
f16f22fb34
commit
1c6f4a3d4c
1
partner_favorite/models/__init__.py
Normal file
1
partner_favorite/models/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from . import res_partner
|
39
partner_favorite/models/res_partner.py
Normal file
39
partner_favorite/models/res_partner.py
Normal file
@@ -0,0 +1,39 @@
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
||||
import logging
|
||||
from odoo import fields, models
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class ResPartner(models.Model):
|
||||
"""Adds last name and first name; name becomes a stored function field."""
|
||||
_inherit = 'res.partner'
|
||||
|
||||
def _compute_is_favorite(self):
|
||||
for partner in self:
|
||||
partner.is_favorite = self.env.user in partner.favorite_user_ids
|
||||
|
||||
def _inverse_is_favorite(self):
|
||||
favorite_partners = not_fav_partners = self.env['res.partner']
|
||||
for partner in self:
|
||||
if self.env.user in partner.favorite_user_ids:
|
||||
favorite_partners |= partner
|
||||
else:
|
||||
not_fav_partners |= partner
|
||||
|
||||
# partner User has no write access for partner.
|
||||
not_fav_partners.write({'favorite_user_ids': [(4, self.env.uid)]})
|
||||
favorite_partners.write({'favorite_user_ids': [(3, self.env.uid)]})
|
||||
|
||||
def _get_default_favorite_user_ids(self):
|
||||
return [(6, 0, [self.env.uid])]
|
||||
|
||||
favorite_user_ids = fields.Many2many(
|
||||
'res.users', 'partner_favorite_user_rel', 'partner_id', 'user_id',
|
||||
default=_get_default_favorite_user_ids,
|
||||
string='Members')
|
||||
is_favorite = fields.Boolean(
|
||||
compute='_compute_is_favorite',
|
||||
inverse='_inverse_is_favorite',
|
||||
string='Show Favorite Partner',
|
||||
help="Display this partner with favorite filter")
|
Reference in New Issue
Block a user