def user_all_class_assignment_performance(user_id):
    """Summary

    Args:
        user_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    problem_logs = db.problem_logs
    class_assignments = db.with_labels(db.class_assignments)
    join = db.join(
        class_assignments, problem_logs, problem_logs.assignment_id == class_assignments.class_assignments_id
    )
    correct = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        problem_logs.correct == 1,
        problem_logs.original == 1,
        problem_logs.user_id == user_id,
    ).count()
    incorrect = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        problem_logs.correct < 1,
        problem_logs.original == 1,
        problem_logs.user_id == user_id,
    ).count()
    return get_performance(correct, incorrect)
def user_all_homework_completion_rate(user_id):
    """Summary

    Args:
        user_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    assignment_logs = db.assignment_logs
    class_assignments = db.with_labels(db.class_assignments)
    join = db.join(
        class_assignments, assignment_logs, assignment_logs.assignment_id == class_assignments.class_assignments_id
    )
    complete = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        assignment_logs.user_id == user_id,
        assignment_logs.end_time != None,
    ).count()
    incomplete = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        assignment_logs.user_id == user_id,
        assignment_logs.end_time == None,
    ).count()
    return get_performance(complete, incomplete)
def user_assignment_performance(user_id, class_assignment_id):
    """Summary

    Args:
        user_id (TYPE): Description
        class_assignment_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    correct = user_assignemnt_correct_num(user_id, class_assignment_id)
    incorrect = user_assignemnt_incorrect_num(user_id, class_assignment_id)
    return get_performance(correct, incorrect)
Example #4
0
def user_assignment_performance(user_id, class_assignment_id):
    """Summary

    Args:
        user_id (TYPE): Description
        class_assignment_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    correct = user_assignemnt_correct_num(user_id, class_assignment_id)
    incorrect = user_assignemnt_incorrect_num(user_id, class_assignment_id)
    return get_performance(correct, incorrect)
Example #5
0
def user_reassessment_performance(user_id):
    """Summary

    Args:
        user_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    res_prbs = db.student_reassessment_problems
    problem_logs = db.with_labels(db.problem_logs)
    join = db.join(res_prbs, problem_logs,
                   res_prbs.problem_log_id == problem_logs.problem_logs_id)
    where = res_prbs.student_id == user_id_to_student_id(user_id)
    correct = join.filter(where,
                          problem_logs.problem_logs_correct == 1).count()
    incorrect = join.filter(where,
                            problem_logs.problem_logs_correct < 1).count()
    return get_performance(correct, incorrect)
Example #6
0
def user_all_homework_completion_rate(user_id):
    """Summary

    Args:
        user_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    assignment_logs = db.assignment_logs
    class_assignments = db.with_labels(db.class_assignments)
    join = db.join(
        class_assignments, assignment_logs, assignment_logs.assignment_id ==
        class_assignments.class_assignments_id)
    complete = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        assignment_logs.user_id == user_id,
        assignment_logs.end_time != None).count()
    incomplete = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        assignment_logs.user_id == user_id,
        assignment_logs.end_time == None).count()
    return get_performance(complete, incomplete)
Example #7
0
def user_all_class_assignment_performance(user_id):
    """Summary

    Args:
        user_id (TYPE): Description

    Returns:
        TYPE: Description
    """
    problem_logs = db.problem_logs
    class_assignments = db.with_labels(db.class_assignments)
    join = db.join(
        class_assignments, problem_logs,
        problem_logs.assignment_id == class_assignments.class_assignments_id)
    correct = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        problem_logs.correct == 1, problem_logs.original == 1,
        problem_logs.user_id == user_id).count()
    incorrect = join.filter(
        class_assignments.class_assignments_assignment_type_id == 1,
        problem_logs.correct < 1, problem_logs.original == 1,
        problem_logs.user_id == user_id).count()
    return get_performance(correct, incorrect)