mirror of
https://github.com/OCA/account-financial-tools.git
synced 2025-02-02 12:47:26 +02:00
@@ -263,6 +263,7 @@ class AccountLoanLine(models.Model):
|
||||
)
|
||||
|
||||
def _move_vals(self, journal=False, account=False):
|
||||
self.ensure_one()
|
||||
return {
|
||||
"loan_line_id": self.id,
|
||||
"loan_id": self.loan_id.id,
|
||||
@@ -274,8 +275,8 @@ class AccountLoanLine(models.Model):
|
||||
],
|
||||
}
|
||||
|
||||
def _move_line_vals(self, account=False):
|
||||
vals = []
|
||||
def _add_basic_values(self, vals, account):
|
||||
self.ensure_one()
|
||||
partner = self.loan_id.partner_id.with_company(self.loan_id.company_id)
|
||||
vals.append(
|
||||
{
|
||||
@@ -286,7 +287,10 @@ class AccountLoanLine(models.Model):
|
||||
"debit": 0,
|
||||
}
|
||||
)
|
||||
if self.interests_amount:
|
||||
return vals
|
||||
|
||||
def _add_interests_values(self, vals):
|
||||
self.ensure_one()
|
||||
vals.append(
|
||||
{
|
||||
"account_id": self.loan_id.interest_expenses_account_id.id,
|
||||
@@ -294,6 +298,10 @@ class AccountLoanLine(models.Model):
|
||||
"debit": self.interests_amount,
|
||||
}
|
||||
)
|
||||
return vals
|
||||
|
||||
def _add_short_term_account_values(self, vals):
|
||||
self.ensure_one()
|
||||
vals.append(
|
||||
{
|
||||
"account_id": self.loan_id.short_term_loan_account_id.id,
|
||||
@@ -301,6 +309,10 @@ class AccountLoanLine(models.Model):
|
||||
"debit": self.payment_amount - self.interests_amount,
|
||||
}
|
||||
)
|
||||
return vals
|
||||
|
||||
def _add_long_term_account_values(self, vals):
|
||||
self.ensure_one()
|
||||
if self.long_term_loan_account_id and self.long_term_principal_amount:
|
||||
vals.append(
|
||||
{
|
||||
@@ -318,7 +330,20 @@ class AccountLoanLine(models.Model):
|
||||
)
|
||||
return vals
|
||||
|
||||
def _move_line_vals(self, account=False):
|
||||
self.ensure_one()
|
||||
vals = []
|
||||
vals = self._add_basic_values(vals, account)
|
||||
if self.interests_amount:
|
||||
vals = self._add_interests_values(vals)
|
||||
|
||||
vals = self._add_short_term_account_values(vals)
|
||||
vals = self._add_long_term_account_values(vals)
|
||||
|
||||
return vals
|
||||
|
||||
def _invoice_vals(self):
|
||||
self.ensure_one()
|
||||
return {
|
||||
"loan_line_id": self.id,
|
||||
"loan_id": self.loan_id.id,
|
||||
@@ -332,8 +357,7 @@ class AccountLoanLine(models.Model):
|
||||
],
|
||||
}
|
||||
|
||||
def _invoice_line_vals(self):
|
||||
vals = list()
|
||||
def _add_basic_values_invoice_line(self, vals):
|
||||
vals.append(
|
||||
{
|
||||
"product_id": self.loan_id.product_id.id,
|
||||
@@ -343,6 +367,9 @@ class AccountLoanLine(models.Model):
|
||||
"account_id": self.loan_id.short_term_loan_account_id.id,
|
||||
}
|
||||
)
|
||||
return vals
|
||||
|
||||
def _add_interests_values_invoice_line(self, vals):
|
||||
vals.append(
|
||||
{
|
||||
"product_id": self.loan_id.interests_product_id.id,
|
||||
@@ -354,6 +381,12 @@ class AccountLoanLine(models.Model):
|
||||
)
|
||||
return vals
|
||||
|
||||
def _invoice_line_vals(self):
|
||||
vals = list()
|
||||
vals = self._add_basic_values_invoice_line(vals)
|
||||
vals = self._add_interests_values_invoice_line(vals)
|
||||
return vals
|
||||
|
||||
def _generate_move(self, journal=False, account=False):
|
||||
"""
|
||||
Computes and post the moves of loans
|
||||
|
||||
Reference in New Issue
Block a user