summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1
diff options
context:
space:
mode:
authorIT Fixcomart <it@fixcomart.co.id>2022-11-16 09:17:22 +0700
committerIT Fixcomart <it@fixcomart.co.id>2022-11-16 09:17:22 +0700
commit33b9ec81f1ccd7d99da60c606e6bfce8d6627132 (patch)
treef9919db1b3c70b3bb1f8690577a9f0ed72845816 /indoteknik_api/controllers/api_v1
parentf98c6dce9552549f039133e8e99978b656076d17 (diff)
Update cart and wishlist endpoint
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
-rw-r--r--indoteknik_api/controllers/api_v1/cart.py20
-rw-r--r--indoteknik_api/controllers/api_v1/wishlist.py4
2 files changed, 11 insertions, 13 deletions
diff --git a/indoteknik_api/controllers/api_v1/cart.py b/indoteknik_api/controllers/api_v1/cart.py
index 29020d8b..6c540330 100644
--- a/indoteknik_api/controllers/api_v1/cart.py
+++ b/indoteknik_api/controllers/api_v1/cart.py
@@ -6,17 +6,15 @@ from odoo.http import request
class Cart(controller.Controller):
prefix = '/api/v1/'
- @http.route(prefix + 'cart/<user_id>', auth='public', methods=['GET'])
+ @http.route(prefix + 'cart', auth='public', methods=['GET'])
def get_cart_by_user_id(self, **kw):
if not self.authenticate():
return self.response(code=401, description='Unauthorized')
- user_id = int(kw.get('user_id'))
+ user_id = int(kw.get('user_id', 0))
limit = int(kw.get('limit', 0))
offset = int(kw.get('offset', 0))
- query = [
- ('user_id', '=', user_id)
- ]
+ query = [('user_id', '=', user_id)]
carts = request.env['website.user.cart'].search(query, limit=limit, offset=offset, order='create_date desc')
data = {
'product_total': request.env['website.user.cart'].search_count(query),
@@ -29,17 +27,17 @@ class Cart(controller.Controller):
data['products'].append(product)
return self.response(data)
- @http.route(prefix + 'cart/<user_id>/create-or-update', auth='public', methods=['POST'], csrf=False)
+ @http.route(prefix + 'cart/create-or-update', auth='public', methods=['POST'], csrf=False)
def create_or_update_cart(self, **kw):
if not self.authenticate():
return self.response(code=401, description='Unauthorized')
- user_id = int(kw.get('user_id'))
+ user_id = int(kw.get('user_id', 0))
product_id = int(kw.get('product_id', 0))
qty = int(kw.get('qty', 0))
- if not product_id or not qty:
- return self.response(code=400, description='product_id and qty is required')
+ if not user_id or not product_id or not qty:
+ return self.response(code=400, description='user_id, product_id and qty is required')
query = [('user_id', '=', user_id), ('product_id', '=', product_id)]
cart = request.env['website.user.cart'].search(query, limit=1)
result = {}
@@ -56,12 +54,12 @@ class Cart(controller.Controller):
return self.response(result)
- @http.route(prefix + 'cart/<user_id>', auth='public', methods=['DELETE'], csrf=False)
+ @http.route(prefix + 'cart', auth='public', methods=['DELETE'], csrf=False)
def delete_cart_by_user_id(self, **kw):
if not self.authenticate():
return self.response(code=401, description='Unauthorized')
- user_id = int(kw.get('user_id'))
+ user_id = int(kw.get('user_id', 0))
query = [('user_id', '=', user_id)]
product_ids = kw.get('product_ids')
if product_ids:
diff --git a/indoteknik_api/controllers/api_v1/wishlist.py b/indoteknik_api/controllers/api_v1/wishlist.py
index 3582c4ba..61fa960f 100644
--- a/indoteknik_api/controllers/api_v1/wishlist.py
+++ b/indoteknik_api/controllers/api_v1/wishlist.py
@@ -6,7 +6,7 @@ from odoo.http import request
class Wishlist(controller.Controller):
prefix = '/api/v1/'
- @http.route(prefix + 'wishlist/<user_id>', auth='public', methods=['GET'])
+ @http.route(prefix + 'wishlist', auth='public', methods=['GET'])
def get_wishlist_by_user_id(self, **kw):
if not self.authenticate():
return self.response(code=401, description='Unauthorized')
@@ -25,7 +25,7 @@ class Wishlist(controller.Controller):
}
return self.response(data)
- @http.route(prefix + 'wishlist/<user_id>/create-or-delete', auth='public', methods=['POST'], csrf=False)
+ @http.route(prefix + 'wishlist/create-or-delete', auth='public', methods=['POST'], csrf=False)
def create_or_delete_wishlist(self, **kw):
if not self.authenticate():
return self.response(code=401, description='Unauthorized')