diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-04-18 15:45:05 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-04-18 15:45:05 +0700 |
| commit | 60d754cb1b2044adafddd4893212028a3264f620 (patch) | |
| tree | 4b034580ffe571245c3b7b51810a50952b70d53d /indoteknik_api/controllers | |
| parent | 456d4b07e52c3664fd2c22e2b7748cbb2912539d (diff) | |
price tier on user session, variant and product
Diffstat (limited to 'indoteknik_api/controllers')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/sale_order.py | 9 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v2/product.py | 6 | ||||
| -rw-r--r-- | indoteknik_api/controllers/api_v2/product_variant.py | 4 |
3 files changed, 12 insertions, 7 deletions
diff --git a/indoteknik_api/controllers/api_v1/sale_order.py b/indoteknik_api/controllers/api_v1/sale_order.py index e237ebaa..44986166 100644 --- a/indoteknik_api/controllers/api_v1/sale_order.py +++ b/indoteknik_api/controllers/api_v1/sale_order.py @@ -213,10 +213,11 @@ class SaleOrder(controller.Controller): @http.route(PREFIX_PARTNER + 'sale_order/checkout', auth='public', method=['POST', 'OPTIONS'], csrf=False) @controller.Controller.must_authorized(private=True, private_key='partner_id') def create_partner_sale_order(self, **kw): - product_pricelist_default_discount_id = int(request.env['ir.config_parameter'].get_param('product.pricelist.default_discount_id')) - product_pricelist_tier1 = int(request.env['ir.config_parameter'].get_param('product.pricelist.tier1')) - product_pricelist_tier2 = int(request.env['ir.config_parameter'].get_param('product.pricelist.tier2')) - product_pricelist_tier3 = int(request.env['ir.config_parameter'].get_param('product.pricelist.tier3')) + config = request.env['ir.config_parameter'] + product_pricelist_default_discount_id = int(config.get_param('product.pricelist.default_discount_id')) + product_pricelist_tier1 = int(config.get_param('product.pricelist.tier1')) + product_pricelist_tier2 = int(config.get_param('product.pricelist.tier2')) + product_pricelist_tier3 = int(config.get_param('product.pricelist.tier3')) params = self.get_request_params(kw, { 'partner_id': ['number'], diff --git a/indoteknik_api/controllers/api_v2/product.py b/indoteknik_api/controllers/api_v2/product.py index 772906f6..d9b43bda 100644 --- a/indoteknik_api/controllers/api_v2/product.py +++ b/indoteknik_api/controllers/api_v2/product.py @@ -5,17 +5,19 @@ from odoo.http import request class V2Product(controller.Controller): prefix = '/api/v2/' - @http.route(prefix + 'product/<id>', auth='public', methods=['GET']) + @http.route(prefix + 'product/<id>', auth='public', methods=['GET', 'OPTIONS']) @controller.Controller.must_authorized() def v2_get_product_by_id(self, **kw): id = kw.get('id') if not id: return self.response(code=400, description='id is required') + + pricelist = self.user_pricelist() data = [] id = [int(x) for x in id.split(',')] product_templates = request.env['product.template'].search([('id', 'in', id)]) if product_templates: - data = [request.env['product.template'].v2_api_single_response(x, with_detail='DEFAULT') for x in product_templates] + data = [request.env['product.template'].v2_api_single_response(x, pricelist=pricelist, with_detail='DEFAULT') for x in product_templates] return self.response(data)
\ No newline at end of file diff --git a/indoteknik_api/controllers/api_v2/product_variant.py b/indoteknik_api/controllers/api_v2/product_variant.py index b74e4936..8a5bbeb1 100644 --- a/indoteknik_api/controllers/api_v2/product_variant.py +++ b/indoteknik_api/controllers/api_v2/product_variant.py @@ -12,11 +12,13 @@ class V2ProductVariant(controller.Controller): if not id: return self.response(code=400, description='id is required') + pricelist = self.user_pricelist() + data = [] id = [int(x) for x in id.split(',')] product_products = request.env['product.product'].search([('id', 'in', id)]) if product_products: - data = [request.env['product.product'].v2_api_single_response(x) for x in product_products] + data = [request.env['product.product'].v2_api_single_response(x, pricelist=pricelist) for x in product_products] return self.response(data) |
