From 2577c0888005ba36ff8c0db224a86fde15a6e7cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Taymans?= Date: Wed, 9 Sep 2020 20:56:48 +0200 Subject: [PATCH] [IMP] p_o_g: Filter product based on supplier --- purchase_order_generator/__manifest__.py | 2 +- .../models/purchase_order_generator_line.py | 17 +++++++++++++++++ .../views/purchase_order_generator.xml | 3 ++- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/purchase_order_generator/__manifest__.py b/purchase_order_generator/__manifest__.py index 2d5196a..c3491a0 100644 --- a/purchase_order_generator/__manifest__.py +++ b/purchase_order_generator/__manifest__.py @@ -4,7 +4,7 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html). { "name": "Purchase Order Generator", - "version": "12.0.2.0.0", + "version": "12.0.2.1.0", "category": "Purchase Order", "summary": "Generate purchase order from a product selection", "author": "Coop IT Easy SCRLfs", diff --git a/purchase_order_generator/models/purchase_order_generator_line.py b/purchase_order_generator/models/purchase_order_generator_line.py index c0bc044..35846ff 100644 --- a/purchase_order_generator/models/purchase_order_generator_line.py +++ b/purchase_order_generator/models/purchase_order_generator_line.py @@ -113,6 +113,23 @@ class PurchaseOrderGeneratorLine(models.Model): for cpol in self: cpol.purchase_quantity = cpol.minimum_purchase_qty + @api.onchange("product_template_id") + def _onchange_product_template_id(self): + """ + Change domain on product_template_id based on supplier given + in the cpo. + """ + default_supplier = self._context.get("cpo_seller_id") + product_ids = [] + if default_supplier: + product_ids = self.env["product.template"].search( + [ + ("main_seller_id", "=", default_supplier), + ("purchase_ok", "=", True), + ] + ).ids + return {"domain": {"product_template_id": [("id", "in", product_ids)]}} + @api.multi @api.depends("purchase_quantity") def _compute_coverage_and_subtotal(self): diff --git a/purchase_order_generator/views/purchase_order_generator.xml b/purchase_order_generator/views/purchase_order_generator.xml index a9c8581..ce77e9c 100644 --- a/purchase_order_generator/views/purchase_order_generator.xml +++ b/purchase_order_generator/views/purchase_order_generator.xml @@ -55,7 +55,8 @@ - +