From d7a99e915fe579ae17ae8950a8d63d03f8d3e54c Mon Sep 17 00:00:00 2001 From: ThePetrovich Date: Wed, 2 Jul 2025 18:59:30 +0800 Subject: [PATCH] autopep8 --- api/views.py | 62 +++++++++++++++++++--------------------------------- 1 file changed, 22 insertions(+), 40 deletions(-) diff --git a/api/views.py b/api/views.py index 7d27c1e..444ada4 100644 --- a/api/views.py +++ b/api/views.py @@ -22,28 +22,24 @@ from drf_spectacular.utils import extend_schema from .permissions import ReadOnlyOrAuthenticated, IsOwner - User = get_user_model() - def get_prediction_from_tawhiri(params): - + base_url = "https://fly.stratonautica.ru/api/v2" response = requests.get(base_url, params=params) - + if response.status_code == 200: return response.json() # получаем результат предсказания else: - raise Exception(f"Tawhiri error: {response.status_code} {response.text}") - + raise Exception( + f"Tawhiri error: {response.status_code} {response.text}") class PredictionViewSet(ViewSet): permission_classes = [IsAuthenticated] - - def create(self, request): serializer = PredictionRequestSerializer(data=request.data) @@ -58,7 +54,8 @@ class PredictionViewSet(ViewSet): except requests.RequestException as e: return Response({"error": f"Tawhiri error: {str(e)}"}, status=status.HTTP_502_BAD_GATEWAY) - prediction = Prediction.objects.create(result=prediction_result, user=request.user, request=request.data) + prediction = Prediction.objects.create( + result=prediction_result, user=request.user, request=request.data) return Response({ "id": prediction.id, @@ -66,8 +63,6 @@ class PredictionViewSet(ViewSet): "result": prediction_result }, status=status.HTTP_201_CREATED) - - @action(detail=False, methods=['get']) def list_user(self, request): user = request.user @@ -89,40 +84,35 @@ class PredictionViewSet(ViewSet): if satellite_id: if not user.satellites.filter(id=satellite_id).exists(): return Response({'detail': 'Access denied'}, status=403) - + filters['satellite_id'] = satellite_id queryset = Prediction.objects.filter(**filters) return Response(PredictionSerializer(queryset, many=True).data) - - @action(detail=False, methods=["get"]) def history(self, request): queryset = Prediction.objects.filter(user=request.user) return Response(PredictionListSerializer(queryset, many=True).data) - - @action(detail=True, methods=["get"]) def detail(self, request, pk=None): - prediction = Prediction.objects.filter(user=request.user, pk=pk).first() + prediction = Prediction.objects.filter( + user=request.user, pk=pk).first() if not prediction: return Response({'detail': 'Not found'}, status=404) return Response(PredictionDetailSerializer(prediction).data) - - @action(detail=True, methods=["delete"]) def delete(self, request, pk=None): - prediction = Prediction.objects.filter(user=request.user, pk=pk).first() + prediction = Prediction.objects.filter( + user=request.user, pk=pk).first() if not prediction: return Response({'detail': 'Not found'}, status=404) prediction.delete() return Response(status=204) - class TelemetryListCreateView(generics.ListCreateAPIView): serializer_class = TelemetryPacketSerializer permission_classes = [permissions.AllowAny] @@ -140,26 +130,23 @@ class TelemetryListCreateView(generics.ListCreateAPIView): return qs.order_by("-timestamp") - - - def post(self, request, pk): + def post(self, request, pk): serializer = TelemetryPacketSerializer(data=request.data) if not serializer.is_valid(): return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) validated_data = serializer.validated_data - TelemetryPacket.objects.create(timestamp = time.time(), - satellite=Satellite.objects.get(id=pk), - lat=validated_data["lat"], - lon=validated_data["lon"], - alt=validated_data["alt"], - payload=validated_data['payload'], - ) + TelemetryPacket.objects.create(timestamp=time.time(), + satellite=Satellite.objects.get(id=pk), + lat=validated_data["lat"], + lon=validated_data["lon"], + alt=validated_data["alt"], + payload=validated_data['payload'], + ) return Response(serializer.errors, status=status.HTTP_201_CREATED) - class SessionView(APIView): authentication_classes = [SessionAuthentication, BasicAuthentication] permission_classes = [IsAuthenticated] @@ -169,7 +156,6 @@ class SessionView(APIView): return JsonResponse({'isAuthenticated': True}) - class WhoAmIView(APIView): authentication_classes = [SessionAuthentication, BasicAuthentication] permission_classes = [IsAuthenticated] @@ -179,7 +165,6 @@ class WhoAmIView(APIView): return JsonResponse({'username': request.user.username}) - @extend_schema(methods=["GET"], description="Get CSRF token") @api_view(["GET"]) @permission_classes([AllowAny]) @@ -189,7 +174,6 @@ def get_csrf(request): return response - @extend_schema(methods=["POST"], description="Login user") @csrf_exempt @api_view(["POST"]) @@ -211,7 +195,6 @@ def login_view(request): return JsonResponse({'detail': 'Successfully logged in.'}) - @extend_schema(methods=["POST"], description="Logout user") @api_view(["POST"]) @permission_classes([AllowAny]) @@ -223,7 +206,6 @@ def logout_view(request): return JsonResponse({'detail': 'Successfully logged out.'}) - class SavedPointViewset(ModelViewSet): authentication_classes = [SessionAuthentication, BasicAuthentication] permission_classes = [IsOwner] @@ -236,8 +218,8 @@ class SavedPointViewset(ModelViewSet): def perform_create(self, serializer): serializer.save(user=self.request.user) -#class PredictionCreateView(APIView): - #permission_classes = [IsAuthenticated] +# class PredictionCreateView(APIView): + # permission_classes = [IsAuthenticated] # class TelemetryPacket(models.Model): # id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) @@ -248,4 +230,4 @@ class SavedPointViewset(ModelViewSet): # alt = models.FloatField() # payload = models.JSONField(null=True, blank=True) # created_at = models.DateTimeField(auto_now_add=True) -# fields = ['id', 'timestamp', 'lat', 'lon', 'alt', 'payload'] \ No newline at end of file +# fields = ['id', 'timestamp', 'lat', 'lon', 'alt', 'payload']