Uprava stahovani elevace, slouceni gps utils do jednoho filu, retryable, pridani social image k pilotovi a letu

This commit is contained in:
Michal Kváček
2024-06-03 23:07:23 +02:00
parent ba5e73108f
commit 2bf737b9d6
23 changed files with 315 additions and 6982 deletions
-2
View File
@@ -1,7 +1,5 @@
from typing import Optional
import strawberry
from graphql import GraphQLError
from decorators.endpoints import authenticated_user_only, allow_public
from decorators.error_logging import error_logging
from graphql_schema.entities.resolvers.flight import FlightMutationResolver, FlightQueryResolver
@@ -18,7 +18,7 @@ from graphql_schema.entities.types.types import Flight
from paths import FLIGHT_GPX_TRACK_PATH
from utils.file import delete_file
from utils.str_utils import random_str
from utils.upload import handle_file_upload
from utils.file import handle_file_upload
class FlightQueryResolver(BaseQueryResolver):
@@ -16,7 +16,7 @@ from graphql_schema.entities.types.types import Photo
from paths import get_photo_basepath
from utils.file import delete_file
from utils.image import PhotoEditor, parse_exif_info
from utils.upload import handle_file_upload
from utils.file import handle_file_upload
class PhotoQueryResolver(BaseQueryResolver):
+8 -3
View File
@@ -6,7 +6,7 @@ from typing import Optional, List
import strawberry
from database import models
from decorators.endpoints import authenticated_user_only
from external.gps_utils import get_bearing, get_distance
from utils.gps import get_bearing, get_distance
from external.gpx_parser import GPXParser
from graphql_schema.dataloaders.flight_duration import flight_duration_dataloader
from graphql_schema.dataloaders.multi_models import (
@@ -24,7 +24,7 @@ from graphql_schema.dataloaders.single_model import (
)
from graphql_schema.permissions import IsAuthenticated
from graphql_schema.sqlalchemy_to_strawberry_type import strawberry_sqlalchemy_type
from paths import get_avatar_url, get_title_image_url, get_photo_thumbnail_url, get_photo_url, FLIGHT_GPX_TRACK_PATH, airport_icon_url
from paths import get_avatar_url, get_title_image_url, get_photo_thumbnail_url, get_photo_url, FLIGHT_GPX_TRACK_PATH, airport_icon_url, get_public_url
@strawberry.type
@@ -194,7 +194,9 @@ class Flight:
duration_min_calculated: int = strawberry.field(
resolver=lambda root: flight_duration_dataloader.load(root.id)
)
social_image_url: Optional[str] = strawberry.field(
resolver=lambda root: get_public_url(f'photos/{root.id}/title_photo.jpg')
)
debriefing_notes: Optional[str] = strawberry.field(
permission_classes=[IsAuthenticated],
resolver=lambda root: root.debriefing_notes
@@ -295,6 +297,9 @@ class Organization:
class User:
avatar_image_url: Optional[str] = strawberry.field(resolver=lambda root: get_avatar_url(root))
title_image_url: str = strawberry.field(resolver=lambda root: get_title_image_url(root))
social_image_url: Optional[str] = strawberry.field(
resolver=lambda root: get_public_url(f'profile/{root.id}/title_photo.jpg')
)
organizations: List[Organization] = strawberry.field(
resolver=lambda root: user_organizations_dataloader.load(root.id)
)
+1 -1
View File
@@ -11,7 +11,7 @@ from decorators.error_logging import error_logging
from database.transaction import get_session
from graphql_schema.entities.types.types import User
from utils.file import delete_file
from utils.upload import handle_file_upload
from utils.file import handle_file_upload
@strawberry.type