def all_note_tasks_approved(sg, note, args):
    """
    Determine if all Notes on the relevent Task have been approved.

    :param sg: A Shotgun API handle object.
    :param note: A Shotgun Note dictionary.
    :param args: A dict of plugin args.
    :returns: True if all Notes on the relevant Task have been approved, False
              otherwise.
    """

    # Re-query all Tasks attached to the Note to gather note_status_field values.
    note_tasks = sg.find(
        "Task",
        [["id", "in", [t["id"] for t in note.get("tasks")]]],
        [args["note_status_field"]],
    )

    # Loop through all Tasks attached to the Note and return False if any
    # note_status_field values are not equal to our task_status.
    for note_task in note_tasks:
        if note_task.get(args["note_status_field"]) != args["task_status"]:
            return False

    return True