Features:
Fixes: 1) Replace `Count("id")` with `Count("pk")` in commerce queries; 2) Fix `User.objects.get(...)` call by using `uuid` directly instead of accessing nested `serializer.validated_data["user"]["uuid"]`; 3) Add missing closing parenthesis in `VerifyJSONWebToken` call.
Extra: Minor code cleanup and consistency in UUID access pattern across mutations.
This commit is contained in:
parent
435b7305d7
commit
b8b7dcc1d1
2 changed files with 5 additions and 5 deletions
|
|
@ -81,7 +81,7 @@ def get_daily_finished_orders_count(period: timedelta = timedelta(days=30)) -> d
|
|||
Order.objects.filter(status="FINISHED", buy_time__lte=current, buy_time__gte=period_start)
|
||||
.annotate(day=TruncDate("buy_time"))
|
||||
.values("day")
|
||||
.annotate(cnt=Count("id"))
|
||||
.annotate(cnt=Count("pk"))
|
||||
.order_by("day")
|
||||
)
|
||||
result: dict[date, int] = {}
|
||||
|
|
@ -169,7 +169,7 @@ def get_customer_mix(period: timedelta = timedelta(days=30)) -> dict[str, int]:
|
|||
return {"new": 0, "returning": 0}
|
||||
|
||||
lifetime_counts = (
|
||||
Order.objects.filter(status="FINISHED", user_id__in=period_users).values("user_id").annotate(c=Count("id"))
|
||||
Order.objects.filter(status="FINISHED", user_id__in=period_users).values("user_id").annotate(c=Count("pk"))
|
||||
)
|
||||
new_cnt = 0
|
||||
ret_cnt = 0
|
||||
|
|
|
|||
|
|
@ -205,7 +205,7 @@ class ObtainJSONWebToken(BaseMutation):
|
|||
try:
|
||||
serializer.is_valid(raise_exception=True)
|
||||
return ObtainJSONWebToken(
|
||||
user=User.objects.get(serializer.validated_data["user"]["uuid"]),
|
||||
user=User.objects.get(uuid=serializer.validated_data["user"]["uuid"]),
|
||||
refresh_token=serializer.validated_data["refresh"],
|
||||
access_token=serializer.validated_data["access"],
|
||||
)
|
||||
|
|
@ -226,7 +226,7 @@ class RefreshJSONWebToken(BaseMutation):
|
|||
try:
|
||||
serializer.is_valid(raise_exception=True)
|
||||
return RefreshJSONWebToken(
|
||||
user=User.objects.get(serializer.validated_data["user"]["uuid"]),
|
||||
user=User.objects.get(uuid=serializer.validated_data["user"]["uuid"]),
|
||||
access_token=serializer.validated_data["access"],
|
||||
refresh_token=serializer.validated_data["refresh"],
|
||||
)
|
||||
|
|
@ -248,7 +248,7 @@ class VerifyJSONWebToken(BaseMutation):
|
|||
serializer.is_valid(raise_exception=True)
|
||||
# noinspection PyTypeChecker
|
||||
return VerifyJSONWebToken(
|
||||
token_is_valid=True, user=User.objects.get(serializer.validated_data["user"]["uuid"])
|
||||
token_is_valid=True, user=User.objects.get(uuid=serializer.validated_data["user"]["uuid"])
|
||||
)
|
||||
detail = traceback.format_exc() if settings.DEBUG else ""
|
||||
# noinspection PyTypeChecker
|
||||
|
|
|
|||
Loading…
Reference in a new issue