[IMP] purchase_stock: hide replenishment origin

When a Purchase Order is created by the replenishment report, doesn't
pass the origin ("Manual Replenishment" or "Replenishment Report").

task-2328830

closes odoo/odoo#59398

X-original-commit: 170729ee58b199041d7545e7789ac9474e86f998
Related: odoo/enterprise#13876
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
This commit is contained in:
svs-odoo
2020-10-07 11:22:58 +00:00
parent 9178d9f9c7
commit b2de706ae6
2 changed files with 11 additions and 15 deletions
+6 -1
View File
@@ -44,6 +44,11 @@ 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
@@ -88,7 +93,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])
origins = set([p.origin for p in procurements if p.origin not in origins_to_hide])
# 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
@@ -44,9 +44,8 @@ class TestReplenishWizard(TestStockCommon):
})
replenish_wizard.launch_replenishment()
last_po_id = self.env['purchase.order'].search([
('origin', 'ilike', '%Manual Replenishment%'),
('partner_id', '=', self.vendor.id)
])[-1]
], order="id desc", limit=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')
@@ -93,9 +92,7 @@ class TestReplenishWizard(TestStockCommon):
'warehouse_id': self.wh.id,
})
replenish_wizard.launch_replenishment()
last_po_id = self.env['purchase.order'].search([
('origin', 'ilike', '%Manual Replenishment%'),
])[-1]
last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1)
self.assertEqual(last_po_id.partner_id, vendor1)
self.assertEqual(last_po_id.order_line.price_unit, 100)
@@ -148,9 +145,7 @@ class TestReplenishWizard(TestStockCommon):
'warehouse_id': self.wh.id,
})
replenish_wizard.launch_replenishment()
last_po_id = self.env['purchase.order'].search([
('origin', 'ilike', '%Manual Replenishment%'),
])[-1]
last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1)
self.assertEqual(last_po_id.partner_id, vendor1)
self.assertEqual(last_po_id.order_line.price_unit, 100)
@@ -193,9 +188,7 @@ class TestReplenishWizard(TestStockCommon):
'warehouse_id': self.wh.id,
})
replenish_wizard.launch_replenishment()
last_po_id = self.env['purchase.order'].search([
('origin', 'ilike', '%Manual Replenishment%'),
])[-1]
last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1)
self.assertEqual(last_po_id.partner_id, vendor2)
def test_chose_supplier_4(self):
@@ -241,9 +234,7 @@ class TestReplenishWizard(TestStockCommon):
'warehouse_id': self.wh.id,
})
replenish_wizard.launch_replenishment()
last_po_id = self.env['purchase.order'].search([
('origin', 'ilike', '%Manual Replenishment%'),
])[-1]
last_po_id = self.env['purchase.order'].search([], order="id desc", limit=1)
self.assertEqual(last_po_id.partner_id, vendor1)
self.assertEqual(last_po_id.order_line.price_unit, 60)