Update end_rental_contract.py
This commit is contained in:
parent
412bc051d3
commit
f074230f90
|
|
@ -58,11 +58,11 @@ class EndOfRent(models.Model):
|
||||||
'account_id': end.contract_id.debit_account_id.id,
|
'account_id': end.contract_id.debit_account_id.id,
|
||||||
|
|
||||||
})],
|
})],
|
||||||
'line_ids': [(0, 0, {'account_id':end.contract_id.debit_account_id.id, 'debit': 0.0, 'credit': amount,
|
# 'line_ids': [(0, 0, {'account_id':end.contract_id.debit_account_id.id, 'debit': 0.0, 'credit': amount,
|
||||||
'name': end.name + ' - ' + str(end.date),
|
# 'name': end.name + ' - ' + str(end.date),
|
||||||
'quantity': 1}),
|
# 'quantity': 1}),
|
||||||
(0, 0,
|
# (0, 0,
|
||||||
{'account_id': end.contract_id.accrued_account_id.id , 'debit': amount, 'credit': 0.0, 'quantity': 1})]
|
# {'account_id': end.contract_id.accrued_account_id.id , 'debit': amount, 'credit': 0.0, 'quantity': 1})]
|
||||||
}
|
}
|
||||||
return invoice_vals
|
return invoice_vals
|
||||||
|
|
||||||
|
|
@ -84,11 +84,11 @@ class EndOfRent(models.Model):
|
||||||
|
|
||||||
|
|
||||||
})],
|
})],
|
||||||
'line_ids': [(0, 0, {'account_id':end.contract_id.revenue_account_id.id, 'debit': 0.0, 'credit': amount,
|
# 'line_ids': [(0, 0, {'account_id':end.contract_id.revenue_account_id.id, 'debit': 0.0, 'credit': amount,
|
||||||
'name': end.name + ' - ' + str(end.date),
|
# 'name': end.name + ' - ' + str(end.date),
|
||||||
'quantity': 1}),
|
# 'quantity': 1}),
|
||||||
(0, 0,
|
# (0, 0,
|
||||||
{'account_id': end.contract_id.debit_account_id.id, 'debit': amount, 'credit': 0.0, 'quantity': 1})]
|
# {'account_id': end.contract_id.debit_account_id.id, 'debit': amount, 'credit': 0.0, 'quantity': 1})]
|
||||||
}
|
}
|
||||||
return invoice_vals
|
return invoice_vals
|
||||||
|
|
||||||
|
|
@ -109,10 +109,10 @@ class EndOfRent(models.Model):
|
||||||
if (rec.remain_amount > 0.0) or (rec.remain_amount > 0.0 and rec.maintenance):
|
if (rec.remain_amount > 0.0) or (rec.remain_amount > 0.0 and rec.maintenance):
|
||||||
invoice_vals = rec._prepare_out_refund_invoice_values(rec, rec.remain_amount)
|
invoice_vals = rec._prepare_out_refund_invoice_values(rec, rec.remain_amount)
|
||||||
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
||||||
if len(invoice.invoice_line_ids) > 1:
|
# if len(invoice.invoice_line_ids) > 1:
|
||||||
line_id = invoice.invoice_line_ids[1].id
|
# line_id = invoice.invoice_line_ids[1].id
|
||||||
commands = [(2, line_id, 0)]
|
# commands = [(2, line_id, 0)]
|
||||||
invoice.write({'invoice_line_ids': commands})
|
# invoice.write({'invoice_line_ids': commands})
|
||||||
rec.invoice_id = invoice.id
|
rec.invoice_id = invoice.id
|
||||||
rec.write({'state': 'done'})
|
rec.write({'state': 'done'})
|
||||||
elif (rec.insurance_amount == 0.0 or rec.remain_amount==0.0) and not rec.maintenance:
|
elif (rec.insurance_amount == 0.0 or rec.remain_amount==0.0) and not rec.maintenance:
|
||||||
|
|
@ -120,20 +120,20 @@ class EndOfRent(models.Model):
|
||||||
elif (rec.insurance_amount == 0.0 or rec.remain_amount==0.0) and rec.maintenance:
|
elif (rec.insurance_amount == 0.0 or rec.remain_amount==0.0) and rec.maintenance:
|
||||||
invoice_vals = rec._prepare_invoice_values(rec, abs(rec.remain_amount))
|
invoice_vals = rec._prepare_invoice_values(rec, abs(rec.remain_amount))
|
||||||
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
||||||
if len(invoice.invoice_line_ids) > 1:
|
# if len(invoice.invoice_line_ids) > 1:
|
||||||
line_id = invoice.invoice_line_ids[1].id
|
# line_id = invoice.invoice_line_ids[1].id
|
||||||
commands = [(2, line_id, 0)]
|
# commands = [(2, line_id, 0)]
|
||||||
invoice.write({'invoice_line_ids': commands})
|
# invoice.write({'invoice_line_ids': commands})
|
||||||
rec.invoice_id = invoice.id
|
rec.invoice_id = invoice.id
|
||||||
rec.write({'state': 'done'})
|
rec.write({'state': 'done'})
|
||||||
|
|
||||||
elif (rec.remain_amount < 0.0) or (rec.remain_amount<0.0 and rec.maintenance):
|
elif (rec.remain_amount < 0.0) or (rec.remain_amount<0.0 and rec.maintenance):
|
||||||
invoice_vals = rec._prepare_invoice_values(rec, abs(rec.remain_amount))
|
invoice_vals = rec._prepare_invoice_values(rec, abs(rec.remain_amount))
|
||||||
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
invoice = self.env['account.move'].sudo().create(invoice_vals).with_user(self.env.uid)
|
||||||
if len(invoice.invoice_line_ids) > 1:
|
# if len(invoice.invoice_line_ids) > 1:
|
||||||
line_id = invoice.invoice_line_ids[1].id
|
# line_id = invoice.invoice_line_ids[1].id
|
||||||
commands = [(2, line_id, 0)]
|
# commands = [(2, line_id, 0)]
|
||||||
invoice.write({'invoice_line_ids': commands})
|
# invoice.write({'invoice_line_ids': commands})
|
||||||
rec.invoice_id = invoice.id
|
rec.invoice_id = invoice.id
|
||||||
rec.write({'state': 'done'})
|
rec.write({'state': 'done'})
|
||||||
if rec.contract_state == 'before':
|
if rec.contract_state == 'before':
|
||||||
|
|
@ -281,8 +281,8 @@ class PropertyManagementMaintenance(models.Model):
|
||||||
_('Hand Cost') + ' ' + maintenance.name +' '+self.property_id.name+' ' +unit_name+' ' + maintenance.vendor_id.name,
|
_('Hand Cost') + ' ' + maintenance.name +' '+self.property_id.name+' ' +unit_name+' ' + maintenance.vendor_id.name,
|
||||||
'quantity': 1.0,
|
'quantity': 1.0,
|
||||||
'price_unit': self.hand_cost,
|
'price_unit': self.hand_cost,
|
||||||
'account_id': payment.contract_id.revenue_account_id.id,
|
# 'account_id': maintenance.contract_id.revenue_account_id.id,
|
||||||
'analytic_account_id': payment.property_id.account_analy_id.id if payment.property_id.account_analy_id else False,
|
'analytic_account_id': maintenance.property_id.account_analy_id.id if payment.property_id.account_analy_id else False,
|
||||||
'tax_ids': [(6, 0, [payment.tax_id.id])] if payment.tax_id else False, # Assigning tax_id to tax_ids
|
'tax_ids': [(6, 0, [payment.tax_id.id])] if payment.tax_id else False, # Assigning tax_id to tax_ids
|
||||||
}))
|
}))
|
||||||
invoice_vals = {
|
invoice_vals = {
|
||||||
|
|
@ -351,6 +351,5 @@ class PropertyManagementMaintenance(models.Model):
|
||||||
@api.depends('maintenance_cost', 'hand_cost', 'end_line_ids','end_line_ids.cost', 'end_line_ids.total')
|
@api.depends('maintenance_cost', 'hand_cost', 'end_line_ids','end_line_ids.cost', 'end_line_ids.total')
|
||||||
def _get_total_amount(self):
|
def _get_total_amount(self):
|
||||||
for rec in self:
|
for rec in self:
|
||||||
# تأكد من إعادة حساب maintenance_cost باستخدام المجموع الصحيح لجميع الأسطر
|
|
||||||
rec.maintenance_cost = sum(line.total for line in rec.end_line_ids)
|
rec.maintenance_cost = sum(line.total for line in rec.end_line_ids)
|
||||||
rec.total_amount = rec.maintenance_cost + rec.hand_cost
|
rec.total_amount = rec.maintenance_cost + rec.hand_cost
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue