diff --git a/models/__init__.py b/models/__init__.py index d9e71306bd7c40f36845b1645911f11d91957b4b..36bd4f25854a6433a33daef4be4dd29c31149a38 100644 --- a/models/__init__.py +++ b/models/__init__.py @@ -7,6 +7,7 @@ from . import res_company from . import res_config_settings from . import sale_order from . import stock_move +from . import stock_move_line from . import stock_picking from . import stock_production_lot from . import stock_quant diff --git a/models/stock_move_line.py b/models/stock_move_line.py new file mode 100644 index 0000000000000000000000000000000000000000..802942d3bd9d816fe2b4e3bc1823504f208ab1c4 --- /dev/null +++ b/models/stock_move_line.py @@ -0,0 +1,20 @@ +# Copyright 2021 Le Filament (<http://www.le-filament.com>) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import models, api + + +class StockMoveLine(models.Model): + _inherit = 'stock.move.line' + + @api.depends('product_id', 'picking_type_use_create_lots') + def _compute_expiration_date(self): + """ + We need to overide this compute to get expiration_date compute in + lot_id instead of basic calcul made by odoo + """ + for move_line in self: + if move_line.lot_id: + move_line.expiration_date = move_line.lot_id.expiration_date + else: + super(StockMoveLine, self)._compute_expiration_date()