summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/website_user_cart.py
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2024-11-28 10:43:58 +0700
committerit-fixcomart <it@fixcomart.co.id>2024-11-28 10:43:58 +0700
commitb1af79a0ed73a7af2557c8269d82bbc99afaa601 (patch)
tree6bf2ef8aec570bcb05b59a504ebeece215383845 /indoteknik_custom/models/website_user_cart.py
parent56f2deda9cdf2a51d5a53aade7758a0ac9313e05 (diff)
parent58bec36c52b223c12fd15511a56ab417ebbd7257 (diff)
Merge branch 'production' into iman/switch-account
# Conflicts: # indoteknik_api/models/res_users.py
Diffstat (limited to 'indoteknik_custom/models/website_user_cart.py')
-rw-r--r--indoteknik_custom/models/website_user_cart.py19
1 files changed, 15 insertions, 4 deletions
diff --git a/indoteknik_custom/models/website_user_cart.py b/indoteknik_custom/models/website_user_cart.py
index 26e217cb..44393cf1 100644
--- a/indoteknik_custom/models/website_user_cart.py
+++ b/indoteknik_custom/models/website_user_cart.py
@@ -65,9 +65,11 @@ class WebsiteUserCart(models.Model):
if stock_quant:
res['is_in_bu'] = True
res['on_hand_qty'] = sum(stock_quant.mapped('quantity'))
+ res['available_quantity'] = sum(stock_quant.mapped('available_quantity'))
else:
res['is_in_bu'] = False
res['on_hand_qty'] = 0
+ res['available_quantity'] = 0
flashsales = self.product_id._get_active_flash_sale()
res['has_flashsale'] = True if len(flashsales) > 0 else False
@@ -93,22 +95,31 @@ class WebsiteUserCart(models.Model):
def get_product_by_user(self, user_id, selected=False, source=False):
user_id = int(user_id)
-
+
if source == 'buy':
source = ['buy']
else:
source = ['add_to_cart', 'buy']
parameters = [
- ('user_id', '=', user_id),
+ ('user_id', '=', user_id),
('source', 'in', source)
]
+ carts = self.search(parameters)
+
+ for cart in carts:
+ if cart.product_id:
+ price = cart.product_id._v2_get_website_price_include_tax()
+ if not cart.product_id.active or price < 1:
+ cart.is_selected = False
if selected:
parameters.append(('is_selected', '=', True))
- carts = self.search(parameters)
- products = carts.get_products()
+ products_active = self.search(parameters)
+
+ products = products_active.get_products()
+
return products
def get_user_checkout(self, user_id, voucher=False, voucher_shipping=False, source=False):