mirror of
https://github.com/lemeow125/Borrowing-TrackerBackend.git
synced 2024-11-17 06:19:26 +08:00
26 lines
1.1 KiB
Python
26 lines
1.1 KiB
Python
from transactions.models import Transaction
|
|
from accounts.permissions import IsStudent
|
|
from rest_framework.permissions import IsAuthenticated
|
|
from rest_framework import generics
|
|
from accounts.serializers import ClearanceSerializer
|
|
from rest_framework.response import Response
|
|
|
|
|
|
class ClearanceViewSet(generics.GenericAPIView):
|
|
# Check all transactions associated with the student. If any are uncleared or not finalized, return uncleared
|
|
http_method_names = ['get']
|
|
permission_classes = [IsAuthenticated, IsStudent]
|
|
serializer_class = ClearanceSerializer
|
|
|
|
def get_queryset(self):
|
|
user = self.request.user
|
|
return Transaction.objects.filter(borrower=user)
|
|
|
|
def get(self, request, *args, **kwargs):
|
|
queryset = self.get_queryset()
|
|
status_list = ["Approved", "Borrowed", "Returned: Pending Checking",
|
|
"With Breakages: Pending Resolution"]
|
|
for transaction in queryset:
|
|
if transaction.transaction_status in status_list:
|
|
return Response({"cleared": "Uncleared"})
|
|
return Response({"cleared": "Cleared"})
|