Skip to content
Snippets Groups Projects

Draft: 14.0 qg

Closed Ghost User requested to merge 14.0-QG into 14.0
2 files
+ 42
0
Compare changes
  • Side-by-side
  • Inline
Files
2
+ 33
0
# Copyright 2021 Le Filament (<http://www.le-filament.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from dateutil.relativedelta import relativedelta
from odoo import api, fields, models
@@ -17,6 +18,20 @@ class AccountMove(models.Model):
default=False,
help="Affiche le n° SIRET sur la facture client",
)
fee_start_date = fields.Date(
string="Date de début de redevance",
compute="inverse_date_deadline",
readonly=False,
store=True,
default=False
)
fee_deadline_date = fields.Date(
string="Date de fin de redevance",
compute="compute_date_deadline",
readonly=False,
store=True,
default=False
)
# ------------------------------------------------------
# Override Parent
@@ -52,3 +67,21 @@ class AccountMove(models.Model):
for line in self.line_ids:
if line.account_id.user_type_id.type in ("receivable", "payable"):
line.account_id = self.third_account_id
@api.depends("fee_start_date")
def compute_date_deadline(self):
"""
Calcule la date de fin de redevance si la date de début de redevance est modifiée
"""
for invoice in self:
if invoice.fee_start_date:
invoice.fee_deadline_date = invoice.fee_start_date + relativedelta(days=365)
@api.depends("fee_deadline_date")
def inverse_date_deadline(self):
"""
Calcule la date de début de redevance si la date de fin de redevance est modifiée
"""
for invoice in self:
if invoice.fee_deadline_date:
invoice.fee_start_date = invoice.fee_deadline_date - relativedelta(days=365)
Loading