diff options
| author | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-03 10:17:40 +0700 |
|---|---|---|
| committer | Azka Nathan <darizkyfaz@gmail.com> | 2024-09-03 10:17:40 +0700 |
| commit | 0b2e64dd95b42eb26c5ae92d08b176591d542a0b (patch) | |
| tree | 1afeacc8c527a36a7ac5ba5e26975b3970ce4922 /indoteknik_api/controllers/api_v1 | |
| parent | 5b376d68e62b5d06ff5665b405acc99b89448f06 (diff) | |
cr api get user cart
Diffstat (limited to 'indoteknik_api/controllers/api_v1')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/cart.py | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/indoteknik_api/controllers/api_v1/cart.py b/indoteknik_api/controllers/api_v1/cart.py index f472a9b0..a2fd6286 100644 --- a/indoteknik_api/controllers/api_v1/cart.py +++ b/indoteknik_api/controllers/api_v1/cart.py @@ -17,10 +17,25 @@ class Cart(controller.Controller): query = [('user_id', '=', user_id)] carts = user_cart.search(query, limit=limit, offset=offset, order='create_date desc') carts.write({'source': 'add_to_cart'}) - data = { - 'product_total': user_cart.search_count(query), - 'products': carts.with_context(price_for="web").get_products() - } + data = [] + for cart in carts: + if cart.product_id: + price = cart.product_id._v2_get_website_price_include_tax() + if cart.product_id.active and price > 0: + data.append({ + 'products': cart.with_context(price_for="web").get_products() + }) + else: + data.append({ + 'product_inactive': cart.with_context(price_for="web").get_products() + }) + else: + data.append({ + 'products': cart.with_context(price_for="web").get_products() + }) + data.append({ + 'product_total': user_cart.search_count(query) + }) return self.response(data) @http.route(PREFIX_USER + 'cart/count', auth='public', methods=['GET', 'OPTIONS']) |
