From b6b2875e0d422792e3f71fd1af96804803bfb854 Mon Sep 17 00:00:00 2001 From: behruz-dev Date: Thu, 30 Oct 2025 14:36:59 +0500 Subject: [PATCH] shared: fix bug --- core/apps/shared/views/usd_course.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/core/apps/shared/views/usd_course.py b/core/apps/shared/views/usd_course.py index 5404d76..a1d1a13 100644 --- a/core/apps/shared/views/usd_course.py +++ b/core/apps/shared/views/usd_course.py @@ -1,11 +1,10 @@ from django.shortcuts import get_object_or_404 - from rest_framework import generics from rest_framework.response import Response +from core.apps.accounts.permissions.permissions import HasRolePermission from core.apps.shared.models import UsdCourse from core.apps.shared.serializers.usd_course import UsdCourseSerializer -from core.apps.accounts.permissions.permissions import HasRolePermission class UsdCourseApiView(generics.GenericAPIView): @@ -17,13 +16,18 @@ class UsdCourseApiView(generics.GenericAPIView): value = UsdCourse.objects.first() serializer = self.serializer_class(value) return Response(serializer.data, status=200) - + def patch(self, request): usd_cource = UsdCourse.objects.first() + if not usd_cource: + usd_cource = UsdCourse.objects.create(value=0) + old_value = usd_cource.value serializer = self.serializer_class(data=request.data) if not serializer.is_valid(): return Response(serializer.errors, status=400) - value = serializer.validated_data.get('value') + value = serializer.validated_data.get("value") usd_cource.value = value usd_cource.save() - return Response({'new_value': usd_cource.value, 'old_value': value}, status=200) + return Response( + {"new_value": usd_cource.value, "old_value": old_value}, status=200 + )