Moznost nahravat fotky copilotem
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user