diff --git a/addons/purchase_stock/models/stock_rule.py b/addons/purchase_stock/models/stock_rule.py index 1e8ea560107..51c68706d31 100644 --- a/addons/purchase_stock/models/stock_rule.py +++ b/addons/purchase_stock/models/stock_rule.py @@ -44,11 +44,6 @@ class StockRule(models.Model): def _run_buy(self, procurements): procurements_by_po_domain = defaultdict(list) errors = [] - # Origins we don't want to appear in the PO source field. - origins_to_hide = [ - _('Manual Replenishment'), - _('Replenishment Report'), - ] for procurement, rule in procurements: # Get the schedule date in order to find a valid seller @@ -93,7 +88,7 @@ class StockRule(models.Model): procurements, rules = zip(*procurements_rules) # Get the set of procurement origin for the current domain. - origins = set([p.origin for p in procurements if p.origin not in origins_to_hide]) + origins = set([p.origin for p in procurements]) # Check if a PO exists for the current domain. po = self.env['purchase.order'].sudo().search([dom for dom in domain], limit=1) company_id = procurements[0].company_id diff --git a/addons/purchase_stock/tests/test_replenish_wizard.py b/addons/purchase_stock/tests/test_replenish_wizard.py index 36f14d7a2c3..bdb126dd57a 100644 --- a/addons/purchase_stock/tests/test_replenish_wizard.py +++ b/addons/purchase_stock/tests/test_replenish_wizard.py @@ -44,8 +44,9 @@ class TestReplenishWizard(TestStockCommon): }) replenish_wizard.launch_replenishment() last_po_id = self.env['purchase.order'].search([ + ('origin', 'ilike', '%Manual Replenishment%'), ('partner_id', '=', self.vendor.id) - ], order="id desc", limit=1) + ])[-1] self.assertTrue(last_po_id, 'Purchase Order not found') order_line = last_po_id.order_line.search([('product_id', '=', self.product1.id)]) self.assertTrue(order_line, 'The product is not in the Purchase Order') @@ -92,7 +93,9 @@ class TestReplenishWizard(TestStockCommon): 'warehouse_id': self.wh.id, }) replenish_wizard.launch_replenishment() - last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1) + last_po_id = self.env['purchase.order'].search([ + ('origin', 'ilike', '%Manual Replenishment%'), + ])[-1] self.assertEqual(last_po_id.partner_id, vendor1) self.assertEqual(last_po_id.order_line.price_unit, 100) @@ -145,7 +148,9 @@ class TestReplenishWizard(TestStockCommon): 'warehouse_id': self.wh.id, }) replenish_wizard.launch_replenishment() - last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1) + last_po_id = self.env['purchase.order'].search([ + ('origin', 'ilike', '%Manual Replenishment%'), + ])[-1] self.assertEqual(last_po_id.partner_id, vendor1) self.assertEqual(last_po_id.order_line.price_unit, 100) @@ -188,7 +193,9 @@ class TestReplenishWizard(TestStockCommon): 'warehouse_id': self.wh.id, }) replenish_wizard.launch_replenishment() - last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1) + last_po_id = self.env['purchase.order'].search([ + ('origin', 'ilike', '%Manual Replenishment%'), + ])[-1] self.assertEqual(last_po_id.partner_id, vendor2) def test_chose_supplier_4(self): @@ -234,7 +241,9 @@ class TestReplenishWizard(TestStockCommon): 'warehouse_id': self.wh.id, }) replenish_wizard.launch_replenishment() - last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1) + last_po_id = self.env['purchase.order'].search([ + ('origin', 'ilike', '%Manual Replenishment%'), + ])[-1] self.assertEqual(last_po_id.partner_id, vendor1) self.assertEqual(last_po_id.order_line.price_unit, 60)