mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-28 23:43:22 +00:00
feat: planning events
This commit is contained in:
89
Back-End/Planning/views.py
Normal file
89
Back-End/Planning/views.py
Normal file
@ -0,0 +1,89 @@
|
||||
from django.http.response import JsonResponse
|
||||
from rest_framework.views import APIView
|
||||
|
||||
from .models import Planning, Events
|
||||
|
||||
from .serializers import PlanningSerializer, EventsSerializer
|
||||
|
||||
from N3wtSchool import bdd
|
||||
|
||||
class PlanningView(APIView):
|
||||
def get(self, request):
|
||||
plannings=bdd.getAllObjects(Planning)
|
||||
planning_serializer=PlanningSerializer(plannings, many=True)
|
||||
|
||||
return JsonResponse(planning_serializer.data, safe=False)
|
||||
|
||||
def post(self, request):
|
||||
planning_serializer = PlanningSerializer(data=request.data)
|
||||
if planning_serializer.is_valid():
|
||||
planning_serializer.save()
|
||||
return JsonResponse(planning_serializer.data, status=201)
|
||||
return JsonResponse(planning_serializer.errors, status=400)
|
||||
|
||||
|
||||
|
||||
class PlanningWithIdView(APIView):
|
||||
def get(self, request,id):
|
||||
planning = Planning.objects.get(pk=id)
|
||||
if planning is None:
|
||||
return JsonResponse({"errorMessage":'Le dossier d\'inscription n\'a pas été trouvé'}, safe=False, status=status.HTTP_404_NOT_FOUND)
|
||||
planning_serializer=PlanningSerializer(planning)
|
||||
|
||||
return JsonResponse(planning_serializer.data, safe=False)
|
||||
|
||||
def put(self, request, id):
|
||||
try:
|
||||
planning = Planning.objects.get(pk=id)
|
||||
except Planning.DoesNotExist:
|
||||
return JsonResponse({'error': 'Planning not found'}, status=404)
|
||||
|
||||
planning_serializer = PlanningSerializer(planning, data=request.data)
|
||||
if planning_serializer.is_valid():
|
||||
planning_serializer.save()
|
||||
return JsonResponse(planning_serializer.data)
|
||||
return JsonResponse(planning_serializer.errors, status=400)
|
||||
|
||||
def delete(self, request, id):
|
||||
try:
|
||||
planning = Planning.objects.get(pk=id)
|
||||
except Planning.DoesNotExist:
|
||||
return JsonResponse({'error': 'Planning not found'}, status=404)
|
||||
|
||||
planning.delete()
|
||||
return JsonResponse({'message': 'Planning deleted'}, status=204)
|
||||
|
||||
class EventsView(APIView):
|
||||
def get(self, request):
|
||||
events = bdd.getAllObjects(Events)
|
||||
events_serializer = EventsSerializer(events, many=True)
|
||||
return JsonResponse(events_serializer.data, safe=False)
|
||||
|
||||
def post(self, request):
|
||||
events_serializer = EventsSerializer(data=request.data)
|
||||
if events_serializer.is_valid():
|
||||
events_serializer.save()
|
||||
return JsonResponse(events_serializer.data, status=201)
|
||||
return JsonResponse(events_serializer.errors, status=400)
|
||||
|
||||
class EventsWithIdView(APIView):
|
||||
def put(self, request, id):
|
||||
try:
|
||||
event = Events.objects.get(pk=id)
|
||||
except Events.DoesNotExist:
|
||||
return JsonResponse({'error': 'Event not found'}, status=404)
|
||||
|
||||
events_serializer = EventsSerializer(event, data=request.data)
|
||||
if events_serializer.is_valid():
|
||||
events_serializer.save()
|
||||
return JsonResponse(events_serializer.data)
|
||||
return JsonResponse(events_serializer.errors, status=400)
|
||||
|
||||
def delete(self, request, id):
|
||||
try:
|
||||
event = Events.objects.get(pk=id)
|
||||
except Events.DoesNotExist:
|
||||
return JsonResponse({'error': 'Event not found'}, status=404)
|
||||
|
||||
event.delete()
|
||||
return JsonResponse({'message': 'Event deleted'}, status=204)
|
||||
Reference in New Issue
Block a user