Moznost nahravat fotky copilotem

This commit is contained in:
Michal Kváček
2024-03-07 06:45:00 +01:00
parent c0ae73440d
commit 400ad8b75a
15 changed files with 242 additions and 44 deletions
@@ -1,4 +1,7 @@
from typing import Optional
from sqlalchemy import and_
from database import models
from graphql_schema.entities.resolvers.base import BaseQueryResolver
from graphql_schema.entities.types.types import Copilot
@@ -17,6 +20,8 @@ class CopilotQueryResolver(BaseQueryResolver):
**kwargs
):
pilot_username = kwargs.pop("pilot_username", None)
upload_token = kwargs.pop("upload_token", None)
upload_flight_slug = kwargs.pop("upload_flight_slug", None)
query = super().get_query(
user_id=user_id, object_id=object_id, order_by=order_by,
@@ -31,4 +36,14 @@ class CopilotQueryResolver(BaseQueryResolver):
.filter(models.User.public_username == pilot_username)
)
if upload_token and upload_flight_slug:
query = (
query.join(models.Copilot.flights)
.filter(and_(
models.Flight.url_slug == upload_flight_slug,
models.Flight.created_by_id == models.User.id
))
.filter(models.flight_has_copilot.c.token == upload_token)
)
return query