Update res_partner.py

This commit is contained in:
zainab2097 2024-09-29 16:42:48 +03:00 committed by GitHub
parent 1353e5e790
commit 085925d94b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 13 additions and 7 deletions

View File

@ -18,17 +18,17 @@ class Partner(models.Model):
is_member = fields.Boolean(string='Is Member')
membership_count = fields.Integer(string="Membership Count", compute="_get_membership_count")
active_membership_id = fields.Many2one('dev.membership', string='Membership', compute='check_active_membership')
membrship_level = fields.Many2one('membership.level',string='Membrship level',compute='_compute_membership_level')
membrship_level = fields.Many2one('membership.level',string='Membrship level',store=True,compute='_compute_membership_level')
nationality_id = fields.Many2one('res.country', string="Nationality",default=lambda self: self.env.user.company_id.country_id)
is_membership_expire = fields.Boolean('Expire Membership',store=True, compute='check_active_membership')
memebership_status = fields.Char('Membership Status', compute='check_memebership_status')
memebership_status = fields.Char('Membership Status',store=True,compute='check_memebership_status')
membrship_no = fields.Char('Membership Number')
birth_date = fields.Date(string='Birth Date')
join_date = fields.Date(string='Join Date')
memebership_end_date = fields.Date(string='Memebership End Date', compute='_compute_membership_end')
memebership_end_date = fields.Date(string='Memebership End Date',store=True, compute='_compute_membership_end')
age = fields.Integer(string='Age',compute='_compute_age')
employer = fields.Char(string='Employer',)
product_id = fields.Many2one('product.product', string="Membership Type",related='active_membership_id.product_id')
product_id = fields.Many2one('product.product', string="Membership Type",store=True,compute="check_active_membership")
gender = fields.Selection(
selection=[("male", "Male"), ("female", "Female")], default="male",string='Gender'
)
@ -42,8 +42,12 @@ class Partner(models.Model):
def check_active_membership(self):
for partner in self:
partner.active_membership_id = False
partner.product_id = False
partner.is_membership_expire = False
if partner.membership_count > 0:
partner._compute_membership_level()
partner.check_memebership_status()
partner._compute_membership_end()
c_date = datetime.now().date()
membership_id = self.env['dev.membership'].sudo().search([('partner_id', '=', partner.id),
('state', '=', 'active'),
@ -51,9 +55,11 @@ class Partner(models.Model):
('to_date', '>=', c_date)], order='to_date desc', limit=1)
if membership_id:
partner.active_membership_id = membership_id and membership_id.id or False
partner.product_id = membership_id and membership_id.product_id.id or False
else:
partner.is_membership_expire = True
@api.depends('active_membership_id')
def _compute_membership_end(self):
for partner in self:
partner.memebership_end_date = False
@ -72,7 +78,7 @@ class Partner(models.Model):
if membership_id:
partner.memebership_end_date = membership_id.to_date
@api.depends('active_membership_id')
def _compute_membership_level(self):
for partner in self:
partner.membrship_level = False
@ -82,7 +88,7 @@ class Partner(models.Model):
('state', 'in', ('active','expire','cancel'))], order='to_date desc', limit=1)
if membership_id:
partner.membrship_level = membership_id.membrship_level
@api.depends('active_membership_id')
def check_memebership_status(self):
for partner in self:
partner.memebership_status = ''