[IMP] mrp_multi_level: safety stock

When a product has a safety stock in an area, and the current stock is
below safety, but there are moves in the future, mrp_multi_level does
not compute an immediate action to get back to the safety stock.

This PR changes this behavior: when the mrp_moves are considered, before
processing the first move in the future, we insert a resupply action to
rebuild the safety stock.

We also add some refactoring in the process:

* add extension point on the wizard to compute the quantity to reorder
(so we can choose in a separate module whether to rebuild safety stock
or not)
* add extension point on the wizard to get the date at which the safety
stock must be rebuilt (defaults to today)
* make the code of the wizard symetric between the groupes and non
grouped configuration
This commit is contained in:
Alexandre Fayolle
2023-11-06 15:32:24 +01:00
committed by JasminSForgeFlow
parent 2bbef8657c
commit 33329e0d5f
7 changed files with 194 additions and 29 deletions

View File

@@ -15,6 +15,7 @@ class TestMrpMultiLevelCommon(TransactionCase):
cls.po_obj = cls.env["purchase.order"]
cls.product_obj = cls.env["product.product"]
cls.loc_obj = cls.env["stock.location"]
cls.quant_obj = cls.env["stock.quant"]
cls.mrp_area_obj = cls.env["mrp.area"]
cls.product_mrp_area_obj = cls.env["product.mrp.area"]
cls.partner_obj = cls.env["res.partner"]