summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Lejeune <sle@openerp.com>2019-09-19 12:02:11 +0000
committerSimon Lejeune <sle@openerp.com>2019-09-19 15:03:21 +0000
commit2425c7b223398fa2bc43ecbb95111be15e1599ce (patch)
treefc6b1e2cae437590b44bfab0a3dee6e755f5f181
parentc101708636edf5a89ccae2e7325248fbc7e512aa (diff)
[FIX] mrp: set planned date when creating order through procurement
If it isn't set manually, it defaults to now and the result is not consistent with planned date end. We make it an hour before totally subjectively. closes odoo/odoo#37173 Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
-rw-r--r--addons/mrp/models/stock_rule.py1
-rw-r--r--addons/mrp/tests/test_procurement.py5
2 files changed, 4 insertions, 2 deletions
diff --git a/addons/mrp/models/stock_rule.py b/addons/mrp/models/stock_rule.py
index 01b66fda14c..cb8966f263a 100644
--- a/addons/mrp/models/stock_rule.py
+++ b/addons/mrp/models/stock_rule.py
@@ -84,6 +84,7 @@ class StockRule(models.Model):
'bom_id': bom.id,
'date_deadline': fields.Datetime.to_string(self._get_date_planned(product_id, company_id, values)),
'date_planned_finished': values['date_planned'],
+ 'date_planned_start': values['date_planned'] - relativedelta(hours=1),
'procurement_group_id': False,
'propagate_cancel': self.propagate_cancel,
'propagate_date': self.propagate_date,
diff --git a/addons/mrp/tests/test_procurement.py b/addons/mrp/tests/test_procurement.py
index 1b4f711b856..789985930ed 100644
--- a/addons/mrp/tests/test_procurement.py
+++ b/addons/mrp/tests/test_procurement.py
@@ -194,5 +194,6 @@ class TestProcurement(TestMrpCommon):
move_dest_scheduled_date = move_dest.date_expected
mo.date_planned_start += timedelta(days=5)
-
- self.assertAlmostEqual(move_dest.date_expected, move_dest_scheduled_date + timedelta(days=5), delta=timedelta(seconds=1), msg='date is not propagated')
+ # Adding 5 days to the date planned start makes the next move's date 4 days and 23 hours
+ # later since the date planned start was set one hour before the date_planned_end.
+ self.assertAlmostEqual(move_dest.date_expected, move_dest_scheduled_date + timedelta(days=4, hours=23), delta=timedelta(seconds=1), msg='date is not propagated')