| 1234567891011121314151617181920212223242526272829 |
- from rest_framework import viewsets
- from .models import ProgrammedReport
- from .serializers import ProgrammedReportSerializer
- from .permissions import IsOmixomUser
- # API de Programmed Reports:
- # Requisitos:
- # - Especificar el TOKEN del usuario en el HTTP Header "AUTHORIZATION".
- # - Las requests deben ser JSON.
- # - No es necesario enviar el field user_id, esto es seteado automaticamente al recibir el TOKEN.
- # Endpoints: (BASE_URL: /api/preports)
- # - (List) GET / -> Obtener la lista de todos los Programmed Report
- # - (Create) POST / -> Crear un nuevo Programmed Report
- # - (Retrieve) GET /{id}/ -> Obtener la informacion de un Programmed Report
- # - (Update) PUT /{id}/ -> Actualizar un Programmed Report (requiere todos los fields)
- # - (Partial_Update) PATCH /{id}/ -> Actualizar algunos fields de un Programmed Repor
- # - (Delete) DELETE /{id}/ -> Elimina un Programmed Report
- class ProgrammedReportViewSet(viewsets.ModelViewSet):
- # El ViewSet solo es valido si el Token enviado es de un usuario de Omixom.
- permission_classes = [IsOmixomUser]
- serializer_class = ProgrammedReportSerializer
- # Solo se devuelven los modelos para el user_id asociado al token. (Ver IsOmixomUser)
- def get_queryset(self):
- user_id = self.request.data["user_id"]
- qs = ProgrammedReport.objects.filter(user_id=user_id)
- return qs
|