first
This commit is contained in:
commit
89a5d70512
284 files changed
+8364
No files matched your search
@@ -0,0 +1,36 @@
|
||||
from rest_framework import exceptions
|
||||
from decimal import Decimal
|
||||
from django.db import transaction
|
||||
from apps.shop.models import Cart as CartModel
|
||||
|
||||
|
||||
def add_to_cart(product_id: int, quantity: int, workspace, cuser_role) -> CartModel:
|
||||
try:
|
||||
|
||||
try:
|
||||
cart_obj = CartModel.objects.get(product_id=product_id, sys_ws=workspace, cuser_role=cuser_role)
|
||||
except Exception as exp:
|
||||
cart_obj = CartModel()
|
||||
|
||||
cart_obj.product_id = product_id
|
||||
cart_obj.quantity = quantity
|
||||
cart_obj.sys_ws = workspace
|
||||
cart_obj.cuser_role = cuser_role
|
||||
|
||||
cart_obj.full_clean()
|
||||
cart_obj.save()
|
||||
|
||||
return cart_obj
|
||||
|
||||
except Exception as exp:
|
||||
message = f'Error Add to Cart: {exp}'
|
||||
exceptions.ValidationError({'error': message})
|
||||
|
||||
|
||||
def delete_cart_iteam(cart_id: int, cuser_role_uuid, workspace_uuid: str) -> CartModel:
|
||||
try:
|
||||
cart_obj = CartModel.objects.get(id=cart_id, cuser_role__uuid=cuser_role_uuid, sys_ws__uuid=workspace_uuid).delete()
|
||||
return cart_obj
|
||||
except Exception as exp:
|
||||
message = f'Error Deleting Cart iteam: {exp}'
|
||||
raise exceptions.ValidationError({'error': message})
|
||||
Reference in new issue
Block a user