From 1469c56e6c0964ad279c3dfc621be8551407363b Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Wed, 26 Jul 2023 10:24:51 +0700 Subject: Add source on get checkout and post checkout API --- indoteknik_custom/models/website_user_cart.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'indoteknik_custom') diff --git a/indoteknik_custom/models/website_user_cart.py b/indoteknik_custom/models/website_user_cart.py index 73f39d23..4d85e64d 100644 --- a/indoteknik_custom/models/website_user_cart.py +++ b/indoteknik_custom/models/website_user_cart.py @@ -40,17 +40,24 @@ class WebsiteUserCart(models.Model): def get_products(self): return [x.get_product() for x in self] - def get_product_by_user(self, user_id, selected = False): + def get_product_by_user(self, user_id, selected=False, source=False): user_id = int(user_id) - parameters = [('user_id', '=', user_id)] + source = source if source else 'add_to_cart' + + parameters = [ + ('user_id', '=', user_id), + ('source', '=', source) + ] + if selected: parameters.append(('is_selected', '=', True)) + carts = self.search(parameters) products = carts.get_products() return products - def get_user_checkout(self, user_id, voucher=False): - products = self.get_product_by_user(user_id=user_id, selected=True) + def get_user_checkout(self, user_id, voucher=False, source=False): + products = self.get_product_by_user(user_id=user_id, selected=True, source=source) total_purchase = sum(x['price']['price'] * x['quantity'] for x in products) total_discount = sum((x['price']['price'] - x['price']['price_discount']) * x['quantity'] for x in products) subtotal = total_purchase - total_discount -- cgit v1.2.3