Ejemplo n.º 1
0
 def agregar_estudiante(self, request, pk=None):
     id_estudiante = request.data['id_estudiante']
     estudiante = get_object_or_none(Estudiante, id=id_estudiante)
     curso = get_object_or_none(Curso, id=pk)
     if curso and estudiante:
         flag = curso.anadir_estudiante(estudiante)
         if flag:
             return Response({'status': 'exito'}, status=status.HTTP_200_OK)
         return Response({'status': 'error en registro de curso a estudiante, cruce de horario.'},
                         status=status.HTTP_406_NOT_ACCEPTABLE
                         )
     return Response({'status': 'no encontrado'}, status=status.HTTP_404_NOT_FOUND)
Ejemplo n.º 2
0
 def cursos_asociados(self, request, pk=None):
     estudiante = get_object_or_none(models.Estudiante, id=pk)
     if estudiante:
         serializer = serializers.CursoEstudianteSerializer(
             estudiante.cursos_asociados_list(), many=True)
         return Response(serializer.data, status=status.HTTP_200_OK)
     return Response({'status': 'not found'},
                     status=status.HTTP_404_NOT_FOUND)
Ejemplo n.º 3
0
 def estudiantes_asociados(self, request, pk=None):
     curso = get_object_or_none(models.Curso, id=pk)
     if curso:
         data = {
             'cantidad': curso.numero_estudiantes_asociados()
         }
         return Response(data, status=status.HTTP_200_OK)
     return Response({'status': 'no encontrado'}, status=status.HTTP_404_NOT_FOUND)
Ejemplo n.º 4
0
 def calificar(self, request, pk=None):
     comentario = request.data['comentario']
     calificacion = request.data['calificacion']
     tutoria = get_object_or_none(Solicitud, id=pk)
     if tutoria:
         tutoria.comentario = comentario
         tutoria.calificacion = int(calificacion)
         tutoria.save(update_fields=['comentario', 'calificacion'])
     return Response({'success': True})
Ejemplo n.º 5
0
 def disable(self, request, pk=None):
     transaction = get_object_or_none(Transaction, id=pk)
     response = {'message': 'this transaction doesnt exist'}
     status = HTTP_400_BAD_REQUEST
     if transaction:
         transaction.disable_transaction()
         response['message'] = 'success'
         status = HTTP_200_OK
     return Response(response, status=status)
Ejemplo n.º 6
0
 def save(self, *args, **kwargs):
     if self.pk is None:
         inscripcion = get_object_or_none(Inscripcion,
                                          usuario=self.usuario,
                                          curso=self.curso)
         if inscripcion:
             self.inscripcion = inscripcion
         categoria = self.curso.categoria.nombre
         self.categoria = categoria
     super(ProgresoVideo, self).save(*args, **kwargs)
Ejemplo n.º 7
0
 def delete(self, request, pk, format=None):
     response = {}
     print(pk)
     if hasattr(self.request.user, 'usuario') and pk is not None:
         materia = get_object_or_none(MateriaUsuario, id=pk)
         if materia is not None:
             materia.delete()
             response['success'] = True
         else:
             response['success'] = False
     return Response(response)
Ejemplo n.º 8
0
 def get(self, request, format=None):
     response = {}
     if hasattr(self.request.user, 'usuario'):
         usuario = get_object_or_none(Usuario, id=self.request.user.id)
         serializer = MateriaUsuarioSerializer(
             usuario.get_materias().order_by('-id'), many=True)
         response = {'materias': serializer.data}
     else:
         response[
             'error'] = 'Este usuario es administrador y no puede tener materias'
     return Response(response)
Ejemplo n.º 9
0
 def remove_product(self, id):
     kwargs = {
         'producto_id': id,
         'pedido': self
     }
     product = get_object_or_none(
         ProductoPedido,
         **kwargs
     )
     if product:
         product.delete()
Ejemplo n.º 10
0
 def create(self, validated_data):
     print(_green(validated_data))
     email = validated_data['email']
     user = get_object_or_none(CustomUser, email=validated_data['email'])
     if not user:
         validated_data['id'] = hashlib.md5(
             email.encode('utf-8')).hexdigest()
         validated_data['password'] = make_password(
             validated_data['password'])
         print(_blue(validated_data))
         return super().create(validated_data)
     raise serializers.ValidationError({'error': 'user already exist'})
Ejemplo n.º 11
0
 def put(self, request, pk, format=None):
     response = {}
     if hasattr(self.request.user, 'usuario') and pk is not None:
         materia = get_object_or_none(MateriaUsuario, id=pk)
         if materia is not None:
             materia.precio = request.data['precio']
             materia.save(update_fields=['precio'])
             response['success'] = True
         else:
             response['success'] = False
     else:
         response['success'] = False
     return Response(response)
Ejemplo n.º 12
0
 def add_product(self, id, cantidad):
     kwargs = {
         'producto_id': id,
         'pedido': self
     }
     product = get_object_or_none(
         ProductoPedido,
         **kwargs
     )
     if product:
         product.add_cantidad(cantidad)
     else:
         kwargs['cantidad'] = cantidad
         ProductoPedido.objects.create(
             **kwargs
         )
Ejemplo n.º 13
0
 def post(self, request, *args, **kwargs):
     client = get_object_or_none(Cliente, cedula=request.data['cedula'])
     if client:
         return Response({'id': client.id})
     return self.create(request, *args, **kwargs)
Ejemplo n.º 14
0
 def get_solicitud(self, **kwargs):
     return get_object_or_none(Solicitud, **kwargs)
Ejemplo n.º 15
0
 def get_item(self, id):
     return get_object_or_none(Pedido, id=id)