Example #1
0
def profesores(request):
    """
    GET
    Obtener los datos de todos o de algun profesor
    :param request:
    :return :
    {status: True/False, data:{serializer del profesor o profesores}

    POST
    Insertar un profesor nuevo
    :param request:
    :return :
    {status: True/False, data:{datos del profesor insertado o de todos los profesores}
    """

    # TODO: Aqui va la comprobacion del perfil del usuario

    # Si es un GET, devuelvo la info de todos los profesores
    try:
        if request.method == 'GET':
            params = utils.get_params(request)
            if 'username' in params:
                resul = tfg_services.get_profesores(params['username'])
            else:
                resul = tfg_services.get_profesores()
            return Response(resul)

        # Si es un POST devuelvo la info del profesor nuevo
        elif request.method == 'POST':
            params = utils.get_params(request)
            profesor = Profesor(username=params['username'], first_name=params['first_name'],
                                last_name=params['last_name'], departamento=params['departamento'],
                                password=params['password'])
            resul = tfg_services.insert_profesor(profesor)
            if resul['status']:
                return Response(utils.to_dict(resul))
            return Response(resul)

    except Exception as e:
        return Response(dict(status=False, message="Error en la llamada"))
Example #2
0
def update_alumno(request):
    """
    Actualizar datos de un alumno
    :param request: alumno <str>, campos <dict>
    :return :
    """

    # TODO: Aqui va la comprobacion del perfil del usuario que quiere actualizar
    try:
        if request.method == 'POST':
            params = utils.get_params(request)
            alumno = Alumno.objects.get(username=params['alumno'])
            resul = tfg_services.update_alumno(alumno, params['campos'])
            if resul['status']:
                return Response(utils.to_dict(resul))
            return Response(resul)

    except Alumno.DoesNotExist:
        return Response(dict(status=False, message="El alumno indicado no existe"))
    except Exception:
        return Response(dict(status=False, message="Error en la llamada"))
Example #3
0
def delete_alumno(request):
    """
    Eliminar un usuario
    :param request:
    :return :
    """

    # TODO: Aqui va la comprobacion del perfil del usuario que quiere borrar

    try:
        if request.method == 'POST':
            params = utils.get_params(request)
            if 'username' in params:
                alumno = Alumno.objects.get(username=params['username'])
                resul = tfg_services.delete_alumno(alumno)
            else:
                resul = dict(status=False, message="Parametros incorrectos")

            return Response(resul)

    except Alumno.DoesNotExist:
        return Response(dict(status=False, message="El alumno indicado no existe"))
    except Exception:
        return Response(dict(status=False, message="Error en la llamada"))