From 2ae508f5755c1f90434636a2caecc15f050dce13 Mon Sep 17 00:00:00 2001 From: zainab2097 <149927291+zainab2097@users.noreply.github.com> Date: Mon, 5 Aug 2024 13:39:36 +0300 Subject: [PATCH] Update rent_payment.py --- .../models/rent_payment.py | 35 ++++++++++++++----- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/odex25_realstate/property_management/models/rent_payment.py b/odex25_realstate/property_management/models/rent_payment.py index 2c92de902..35bd56367 100644 --- a/odex25_realstate/property_management/models/rent_payment.py +++ b/odex25_realstate/property_management/models/rent_payment.py @@ -78,6 +78,28 @@ class RentPayment(models.Model): def _prepare_invoice_values(self, payment, amount): self.renter_id.property_account_receivable_id = payment.contract_id.debit_account_id.id + line_invoice=[] + if payment.amount>=0.00: + line_invoice.append((0, 0, { + 'name':'قيمة الإيجار '+'- '+ payment.name + ' - ' + payment.code + ' - ' + str(payment.due_date), + 'price_unit': amount, + 'quantity': 1.0, + 'account_id': payment.contract_id.accrued_account_id.id, + })) + if payment.water_cost>0.00: + line_invoice.append((0, 0, { + 'name': 'تكلفة المياه'+' -'+payment.name + ' - ' + payment.code + ' - ' + str(payment.due_date), + 'price_unit': payment.water_cost, + 'quantity': 1.0, + 'account_id': payment.contract_id.accrued_account_id.id, + }),) + if payment.service_cost>0.00: + line_invoice.append((0, 0, { + 'name':'قيمة الخدمات'+' - '+ payment.name + ' - ' + payment.code + ' - ' + str(payment.due_date), + 'price_unit': payment.service_cost, + 'quantity': 1.0, + 'account_id': payment.contract_id.accrued_account_id.id, + })) invoice_vals = { 'ref': payment.name, 'move_type': 'out_invoice', @@ -85,12 +107,7 @@ class RentPayment(models.Model): 'invoice_user_id': payment.user_id.id, 'narration': payment.note, 'partner_id': payment.contract_id.partner_id.id, - 'invoice_line_ids': [(0, 0, { - 'name': payment.name + ' - ' + payment.code + ' - ' + str(payment.due_date), - 'price_unit': amount, - 'quantity': 1.0, - 'account_id': payment.contract_id.accrued_account_id.id, - })], + invoice_line_ids = line_invoice, 'line_ids': [ (0, 0, { 'account_id': payment.contract_id.revenue_account_id.id, @@ -159,12 +176,12 @@ class RentPayment(models.Model): # tax_value = rec.tax_id.amount / 100 # rec.tax_amount = rec.untaxed_amount * tax_value - @api.depends('amount', 'water_cost', 'service_cost') + @api.depends('amount', 'water_cost', '') def get_untaxed_amount(self): for rec in self: - rec.untaxed_amount = rec.amount + rec.water_cost + rec.service_cost + rec.untaxed_amount = rec.amount + rec.water_cost + rec. - @api.depends('amount', 'water_cost', 'service_cost') + @api.depends('amount', 'water_cost', '') def get_total_amount(self): for rec in self: rec.total_amount = rec.amount + rec.water_cost + rec.service_cost