diff --git a/mrp_multi_level/data/mrp_area_data.xml b/mrp_multi_level/data/mrp_area_data.xml index e0334955c..a7c357e6e 100644 --- a/mrp_multi_level/data/mrp_area_data.xml +++ b/mrp_multi_level/data/mrp_area_data.xml @@ -1,9 +1,10 @@ + WH/Stock - + diff --git a/mrp_multi_level/models/mrp_area.py b/mrp_multi_level/models/mrp_area.py index 630081a5e..0e400db6e 100644 --- a/mrp_multi_level/models/mrp_area.py +++ b/mrp_multi_level/models/mrp_area.py @@ -19,5 +19,8 @@ class MrpArea(models.Model): required=True, ) active = fields.Boolean(default=True) - calendar_id = fields.Many2one('resource.calendar', - 'Working Hours') + calendar_id = fields.Many2one( + comodel_name='resource.calendar', + string='Working Hours', + related='warehouse_id.calendar_id', + ) diff --git a/mrp_multi_level/readme/HISTORY.rst b/mrp_multi_level/readme/HISTORY.rst index 743376125..9ad7e0f12 100644 --- a/mrp_multi_level/readme/HISTORY.rst +++ b/mrp_multi_level/readme/HISTORY.rst @@ -3,6 +3,9 @@ * [FIX] User and system locales doesn't break MRP calculation. (`#290 `_) +* [FIX] Working Hours are now defined only at Warehouse level and displayed + as a related on MRP Areas. + (`#290 `__) 11.0.1.0.0 (2018-07-09) ~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/mrp_multi_level/tests/test_mrp_multi_level.py b/mrp_multi_level/tests/test_mrp_multi_level.py index 979893078..af5fd2268 100644 --- a/mrp_multi_level/tests/test_mrp_multi_level.py +++ b/mrp_multi_level/tests/test_mrp_multi_level.py @@ -38,6 +38,8 @@ class TestMrpMultiLevel(SavepointCase): cls.customer_location = cls.env.ref( 'stock.stock_location_customers') cls.calendar = cls.env.ref('resource.resource_calendar_std') + # Add calendar to WH: + cls.wh.calendar_id = cls.calendar # Partner: vendor1 = cls.partner_obj.create({'name': 'Vendor 1'}) @@ -367,9 +369,8 @@ class TestMrpMultiLevel(SavepointCase): ('product_id', '=', self.fp_1.id)]) self.assertTrue(mos) self.assertEqual(mos.product_qty, 100.0) - datetime_5 = fields.Datetime.to_string( - self.calendar.plan_days(5 + 1, datetime.today()).date()) - self.assertEqual(mos.date_planned_start, datetime_5) + mo_date_start = mos.date_planned_start.split(' ')[0] + self.assertEqual(mo_date_start, self.date_5) # TODO: test procure wizard: pos, multiple... # TODO: test multiple destination IDS:... diff --git a/mrp_multi_level/wizards/mrp_multi_level.py b/mrp_multi_level/wizards/mrp_multi_level.py index 0d1f35e3d..fbe837af6 100644 --- a/mrp_multi_level/wizards/mrp_multi_level.py +++ b/mrp_multi_level/wizards/mrp_multi_level.py @@ -274,11 +274,7 @@ class MultiLevelMrp(models.TransientModel): mrp_date_demand_2, bom, name) mrpmove_id2 = self.env['mrp.move'].create(move_data) - sql_stat = "INSERT INTO mrp_move_rel (" \ - "move_up_id, " \ - "move_down_id) values (%d, %d)" % \ - (mrpmove_id, mrpmove_id2, ) - self.env.cr.execute(sql_stat) + mrpmove_id.mrp_move_down_ids = [(4, mrpmove_id2.id)] values['qty_ordered'] = qty_ordered log_msg = '%s' % qty_ordered logger.info(log_msg)