Files
backend-v1/core/apps/evaluation/views/avg_cost.py
2026-04-27 16:49:07 +05:00

38 lines
1.4 KiB
Python

# rest framework
from rest_framework import generics
from rest_framework.response import Response
from rest_framework import permissions
# core apps
from core.apps.evaluation.serializers.auto.AvgCost import AvgCostSerializer
from core.services.grpc.auto import get_auto_avg_cost
class AvgCostAPIView(generics.GenericAPIView):
serializer_class = AvgCostSerializer
permission_classes = [permissions.IsAuthenticated]
def post(self, request):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid():
print(serializer.validated_data)
brand = serializer.validated_data['brand']
condition = serializer.validated_data['condition']
model = serializer.validated_data['model']
complication = serializer.validated_data['complication']
manufacture_date = serializer.validated_data['manufacture_date']
distance_covered = serializer.validated_data['distance_covered']
color = serializer.validated_data['color']
avg_cost = get_auto_avg_cost(
brand=brand,
condition=condition,
model=model,
complication=complication,
manufacture_date=manufacture_date,
distance_covered=str(distance_covered),
color=color
)
return Response(avg_cost, status=200)
return Response(serializer.errors, status=400)