summaryrefslogtreecommitdiff
path: root/addons/purchase_requisition/models/product.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/purchase_requisition/models/product.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/purchase_requisition/models/product.py')
-rw-r--r--addons/purchase_requisition/models/product.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/addons/purchase_requisition/models/product.py b/addons/purchase_requisition/models/product.py
new file mode 100644
index 00000000..36f6a421
--- /dev/null
+++ b/addons/purchase_requisition/models/product.py
@@ -0,0 +1,34 @@
+# -*- encoding: utf-8 -*-
+# Part of Odoo. See LICENSE file for full copyright and licensing details.
+
+from odoo import fields, models
+
+
+class SupplierInfo(models.Model):
+ _inherit = 'product.supplierinfo'
+
+ purchase_requisition_id = fields.Many2one('purchase.requisition', related='purchase_requisition_line_id.requisition_id', string='Agreement', readonly=False)
+ purchase_requisition_line_id = fields.Many2one('purchase.requisition.line')
+
+
+class ProductProduct(models.Model):
+ _inherit = 'product.product'
+
+ def _prepare_sellers(self, params=False):
+ sellers = super(ProductProduct, self)._prepare_sellers(params=params)
+ if params and params.get('order_id'):
+ return sellers.filtered(lambda s: not s.purchase_requisition_id or s.purchase_requisition_id == params['order_id'].requisition_id)
+ else:
+ return sellers
+
+
+class ProductTemplate(models.Model):
+ _inherit = 'product.template'
+
+ purchase_requisition = fields.Selection(
+ [('rfq', 'Create a draft purchase order'),
+ ('tenders', 'Propose a call for tenders')],
+ string='Procurement', default='rfq',
+ help="Create a draft purchase order: Based on your product configuration, the system will create a draft "
+ "purchase order.Propose a call for tender : If the 'purchase_requisition' module is installed and this option "
+ "is selected, the system will create a draft call for tender.")