summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/website_user_cart.py
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2024-11-13 16:13:18 +0700
committerit-fixcomart <it@fixcomart.co.id>2024-11-13 16:13:18 +0700
commitee8f00646d8a1d6faa1d91c82e9c3778cc8e41f8 (patch)
tree926f1a022fd5ca18ac23f53b32abcd370f0bf5c1 /indoteknik_custom/models/website_user_cart.py
parentbe2bc04768f9f423c66a612f4f183d20e70a3145 (diff)
parente7a18de25926714222159cd9b9281b2fab62063b (diff)
Merge branch 'production' into iman/pengajuan-tempo
# Conflicts: # indoteknik_custom/__manifest__.py # indoteknik_custom/models/__init__.py # indoteknik_custom/security/ir.model.access.csv
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..494f32f3 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'] = stock_quant.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):