fix bug in contract
This commit is contained in:
parent
19bb9f8734
commit
f5e05cb9f3
|
|
@ -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
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue