lepsi podpora strankovani, bugfixing, vyhledavani

This commit is contained in:
Michal Kváček
2026-01-06 22:03:49 +01:00
parent d794208193
commit 888351baac
9 changed files with 42 additions and 21 deletions
@@ -1,6 +1,4 @@
from operator import or_
from typing import Set, Optional
from sqlalchemy import and_
from sqlalchemy import and_, or_
from database import models
from database.transaction import get_session
from graphql_schema.context import GraphQLContext
@@ -19,26 +17,33 @@ class AircraftQueryResolver(BaseQueryResolver):
user_id: int | None = None,
object_id: int | None = None,
order_by: list | None = None,
organization_ids: Optional[Set[int]] = None,
organization_ids: set[int] | None = None,
*args,
**kwargs,
):
filters = []
search = {}
if kwargs.get("call_sign"):
filters.append(models.Aircraft.call_sign == kwargs['call_sign'])
if kwargs.get("search"):
search['search'] = kwargs.pop("search", None)
query = super().get_query(
object_id=object_id,
only_my=False,
only_public=kwargs.get("only_public", False),
order_by=order_by,
filters=filters,
**search
)
if kwargs.get("search"):
search = kwargs["search"]
query = query.filter(
or_(
models.Aircraft.call_sign.contains(search),
models.Aircraft.manufacturer.contains(search),
models.Aircraft.model.contains(search),
)
)
if organization_ids:
query = (
query.filter(