diff --git a/core/managers.py b/core/managers.py index 8b502c53..844073b7 100644 --- a/core/managers.py +++ b/core/managers.py @@ -1,8 +1,12 @@ +import logging + import requests from constance import config from django.contrib.gis.geos import Point from django.db import models +logger = logging.getLogger("django.request") + class AddressManager(models.Manager): def create(self, raw_data: str, **kwargs): @@ -46,6 +50,8 @@ class AddressManager(models.Manager): except (TypeError, ValueError): location = None + logger.debug("Address creation kwargs: %s", kwargs) + # Create the model instance, storing both the input string and full API response return super().create( raw_data=raw_data, diff --git a/core/models.py b/core/models.py index e7ff3ade..ad9a6d63 100644 --- a/core/models.py +++ b/core/models.py @@ -920,7 +920,10 @@ class OrderProduct(ExportModelOperationsMixin("order_product"), NiceModel): self.feedback.delete() return None if action == "add" and not self.feedback: - return Feedback.objects.create(rating=rating, comment=comment, order_product=self) + if self.order.status not in ["MOMENTAL", "PENDING"]: + return Feedback.objects.create(rating=rating, comment=comment, order_product=self) + else: + raise ValueError(_("you cannot feedback an order which is not received")) return None diff --git a/core/viewsets.py b/core/viewsets.py index aa316409..f3ecb4f5 100644 --- a/core/viewsets.py +++ b/core/viewsets.py @@ -1,3 +1,4 @@ +import logging import uuid from uuid import UUID @@ -108,6 +109,8 @@ from core.utils.nominatim import fetch_address_suggestions from evibes.settings import DEBUG from payments.serializers import TransactionProcessSerializer +logger = logging.getLogger("django.request") + class EvibesViewSet(ModelViewSet): action_serializer_classes = {} @@ -642,6 +645,8 @@ class AddressViewSet(EvibesViewSet): create_serializer = AddressCreateSerializer(data=request.data, context={"request": request}) create_serializer.is_valid(raise_exception=True) + logger.debug(f"Creating address with data: {create_serializer.validated_data}") + address_obj = create_serializer.create(create_serializer.validated_data) output_serializer = AddressSerializer(address_obj, context={"request": request})