[FIX] stock_warehouse: _get_all_routes() override
Usecase to reproduce: - Install stock, mrp, purchase - Go on warehouse form view - Click on Routes button Either one of the route manufacture or buy is missing. All implementations/overrides of stock.warehouse._get_all_routes() call their parent's implementation of get_all_routes_for_wh(). which is a reference to stock.warehouse._get_all_routes() but that means that the route 'mixin' behavior can be skipped. (the reference is to the base implementation of _get_all_routes()) Fixes #33286 Fixes #33288 Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
This commit is contained in:
committed by
Arnold Moyaux
parent
5d0d6e4827
commit
b0ea06ab91
@@ -251,7 +251,7 @@ class StockWarehouse(models.Model):
|
||||
|
||||
@api.multi
|
||||
def _get_all_routes(self):
|
||||
routes = super(StockWarehouse, self).get_all_routes_for_wh()
|
||||
routes = super(StockWarehouse, self)._get_all_routes()
|
||||
routes |= self.filtered(lambda self: self.manufacture_to_resupply and self.manufacture_pull_id and self.manufacture_pull_id.route_id).mapped('manufacture_pull_id').mapped('route_id')
|
||||
return routes
|
||||
|
||||
|
||||
@@ -145,7 +145,7 @@ class StockWarehouse(models.Model):
|
||||
|
||||
@api.multi
|
||||
def _get_all_routes(self):
|
||||
routes = super(StockWarehouse, self).get_all_routes_for_wh()
|
||||
routes = super(StockWarehouse, self)._get_all_routes()
|
||||
routes |= self.filtered(lambda self: self.buy_to_resupply and self.buy_pull_id and self.buy_pull_id.route_id).mapped('buy_pull_id').mapped('route_id')
|
||||
return routes
|
||||
|
||||
|
||||
@@ -850,7 +850,6 @@ class Warehouse(models.Model):
|
||||
|
||||
@api.returns('self')
|
||||
def _get_all_routes(self):
|
||||
# TDE FIXME: check overrides
|
||||
routes = self.mapped('route_ids') | self.mapped('mto_pull_id').mapped('route_id')
|
||||
routes |= self.env["stock.location.route"].search([('supplied_wh_id', 'in', self.ids)])
|
||||
return routes
|
||||
|
||||
Reference in New Issue
Block a user