Django пересечение двух диапазонов часов

Я пытаюсь сделать пересечение между двумя диапазонами часов.

В качестве примера предположим, что у нас есть:

current user interval -> 09:30 - 12:30
other user in database -> 10:30 - 14:30

Что я пытаюсь сделать, так это получить соответствие между моим текущим интервалом и другими пользователями в базе данных, возвращая мне не только пользователя, но и дополнительное поле "available: 2 hours"

Мой код:

    related_users = UserProfile.objects\
        .filter(
            Q(start_date="9:30") & Q(end_date="12:20")
        )\
        .exclude(user_id=current_user_profile.id)

Как я могу сделать это пересечение? спасибо

Вернуться на верх