Merge pull request #1661 from expsa/odex25_realstate_dev

fix bug in contract
This commit is contained in:
esraa8mostafa 2024-10-30 15:55:07 +03:00 committed by GitHub
commit cf69eaf773
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 14 additions and 14 deletions

View File

@ -10,7 +10,6 @@ from datetime import datetime
from dateutil.relativedelta import relativedelta
class AnnualRaise(models.Model):
_name = 'annual.raise'
_description = 'Rent Annual Raise'
@ -18,7 +17,6 @@ class AnnualRaise(models.Model):
_order = "id desc"
_rec_name = "contract_id"
active = fields.Boolean(default=True)
name = fields.Char(string="Name")
contract_id = fields.Many2one('rental.contract', string='Contract')
@ -26,7 +24,7 @@ class AnnualRaise(models.Model):
string="Raise Type")
raise_on = fields.Selection([('meter', 'Meter'),
('rent_amount', 'Rent amount')],
string="Raise on", default="rent_amount")
string="Raise on", default="rent_amount")
raise_val = fields.Float(string="Raise Value")
raise_amount = fields.Float(string='Raise Percentage', compute='get_raise_amount', store=True)
year = fields.Integer(string='Number of Years')
@ -37,9 +35,7 @@ class AnnualRaise(models.Model):
compute='get_rent_amount_after_raise', store=True)
meter_price = fields.Float(string="Meter price", related='contract_id.meter_price')
meter_price_after_raise = fields.Float(string="Meter price after raise", compute='get_raise_amount', store=True)
due_date_raise = fields.Date(string='Due Date', compute='get_due_date')
due_date_raise = fields.Date(string='Due Date', compute='get_due_date', store=True)
@api.depends('raise_val', 'raise_type', 'raise_on', 'rent_amount')
def get_raise_amount(self):
@ -55,12 +51,18 @@ class AnnualRaise(models.Model):
for rec in self:
if rec.raise_type == 'percentage':
if rec.raise_on == 'rent_amount':
raise_amount = (rec.contract_id.rent_amount if rec.contract_id.change_price else rec.contract_id.cal_rent_amount) * (rec.raise_val/ 100)
raise_amount = (
rec.contract_id.rent_amount if rec.contract_id.change_price else rec.contract_id.cal_rent_amount) * (
rec.raise_val / 100)
rec.raise_amount = raise_amount
else:
raise_amount = ((rec.contract_id.new_price if rec.contract_id.change_price else rec.contract_id.meter_price) * (rec.raise_val / 100)) * rec.contract_id.space
raise_amount = ((
rec.contract_id.new_price if rec.contract_id.change_price else rec.contract_id.meter_price) * (
rec.raise_val / 100)) * rec.contract_id.space
rec.raise_amount = raise_amount
meter_price_after_raise = ((rec.contract_id.new_price if rec.contract_id.change_price else rec.contract_id.meter_price) * (rec.raise_val / 100)) + rec.meter_price
meter_price_after_raise = ((
rec.contract_id.new_price if rec.contract_id.change_price else rec.contract_id.meter_price) * (
rec.raise_val / 100)) + rec.meter_price
rec.meter_price_after_raise = meter_price_after_raise
elif rec.raise_type == 'fixed':
if rec.raise_on == 'rent_amount':
@ -85,6 +87,7 @@ class AnnualRaise(models.Model):
for rec in self:
rec.rent_amount_after_raise = rec.rent_amount + rec.raise_amount + rec.contract_id.service_cost
rec.rent_amount_after_raise_temp = rec.rent_amount + rec.raise_amount
#
# @api.onchange('raise_type')
# def onchange_raise_type(self):
@ -94,8 +97,8 @@ class AnnualRaise(models.Model):
@api.depends('year', 'contract_id')
def get_due_date(self):
# if self._context.get('contract_id'):
# contract_object = self.env['rental.contract'].search([('id', '=',self._context.get('contract_id') )])
if self._context.get('contract_id'):
contract_object = self.env['rental.contract'].search([('id', '=', self._context.get('contract_id'))])
for rec in self:
if not self._context.get('contract_id'):
contract_object = self.env['rental.contract'].search([('id', '=', rec.contract_id.id)])
@ -106,7 +109,6 @@ class AnnualRaise(models.Model):
due_date_raise = due_date.strftime('%Y-%m-%d')
rec.due_date_raise = due_date_raise
def check_concatenate_date_to(self, year, month, day):
concatenated_date = ''
if day < 10:
@ -119,5 +121,3 @@ class AnnualRaise(models.Model):
year += no_year
concatenated_date = str(year) + '-' + str(month) + '-' + str(day)
return concatenated_date