Commit Graph

33 Commits

Author SHA1 Message Date
Jan Meinl 91c276349d Remove GeographicCoordinate class and refactor CoordinateConverter to simplify altitude handling and extend functionality. Converted all projections and transformations to use Coordinate and GridCoordinate. 2026-05-15 10:46:48 +02:00
Jan Meinl abadc40ed6 Add geographic-to-grid and grid-to-geographic projection methods in CoordinateConverter
- Introduced `toGrid` method enabling projection of geographic coordinates to grid coordinates with altitude source handling.
- Added `toCoordinate` method for inverse projection, converting grid coordinates back to geographic coordinates.
- Improved internal handling of altitude and ellipsoidal height for transformations.
2026-05-15 04:31:16 +02:00
Jan Meinl 7bcf1bb0d6 Add Coordinate Converter with high-precision transformations and integrate Geographic/Projected Coordinate models
- Introduced `CoordinateConverter` for high-precision datum and map grid transformations using Helmert and advanced projection algorithms.
- Added `GeographicCoordinate`, `GridCoordinate`, and `ProjectionMethod` classes to represent and manage coordinate data.
- Enhanced `MapGrid` with specific grid definitions and parameters.
- Updated `BalloonLiveParser` to include reference coordinate handling.
2026-05-15 04:12:52 +02:00
Jan Meinl 02d4935e01 Introduce MapGrid and MapDatum enums
- Added `MapGrid` enum to define grid types and associated projection methods.
- Added `MapDatum` enum to represent geodetic datums with relevant parameters and calculations.
2026-05-14 20:39:41 +02:00
Jan Meinl e52e082bcd Remove map projection framework and associated classes
- Deleted the `MapProjection` interface and all related implementations (`SwissGridProjection`, `SwissGridVariant`, `UtmProjection`, and `UtmResult`).
- Removed supporting classes
2026-05-14 17:55:32 +02:00
Jan Meinl 7b3209b161 Add map projection framework and integrate initial SwissGrid and UTM projections
- Introduced `MapProjection` interface for handling coordinate projections and unprojections.
- Added `SwissGridProjection` and `SwissGridVariant` for Swiss coordinate systems.
- Implemented `UtmProjection` and `UtmResult` for UTM coordinate systems, including hemisphere and zone handling.
- Created supporting classes such as `GeodeticDatum`, `MapDate`, and projection-specific result types for extensibility.
- Extended `BalloonLiveParser` and added `TrackParser` interface to structure track parsing functionality.
2026-05-14 16:20:41 +02:00
Jan Meinl 015a780760 Add placeholder BalloonLiveParser class in track parser package 2026-05-14 15:28:26 +02:00
Jan Meinl 3c67ca43b3 Refactor track model: replace TrackCoordinate with TrackPoint, add TrackHeader for header data 2026-05-14 15:26:06 +02:00
Jan Meinl 7104f97b3f Extend Pilot model with personal details and linked user ID fields 2026-05-14 14:42:01 +02:00
Jan Meinl 1928dbe8fb Expand task-related models with new task types and flight-related entities
- Added `TaskJDG`, `TaskPDG`, and a re-implemented `TaskHWZ` class, enhancing task abstraction with rule, abbreviation, and serialization methods.
- Introduced `Pilot`, `Track`, `MarkerDrop`, and `Declaration` classes for detailed flight representation.
- Made structural improvements across several classes for better clarity and maintainability.
2026-05-14 14:38:14 +02:00
Jan Meinl c6578e3eef Expand task and flight models, add new enums and classes
- Added `TaskHWZ` and `PublicationTask` classes with initial structure.
- Introduced `PublicationState` enum for task publication states and enhanced `Task` model with abstract methods, `flight`, and `scoringPeriodEnd` fields.
- Extended `TaskStatus`, `FlightStatus`, and `ContactType` enums with new values.
- Updated `Flight`, `FlightPublicData`, and their relationships with new fields like `competition`, `separationAltitudeOverride`, and additional notes.
2026-05-14 13:18:14 +02:00
Jan Meinl 93c6dc239c Add TaskStatus enum and integrate status field into Task model 2026-05-14 12:38:03 +02:00
Jan Meinl afc21046d4 Introduce Altitude record, enhance altitude handling, and expand models
- Added `Altitude` record for unified altitude representation with conversions between meters and feet.
- Updated `Coordinate` and `TrackCoordinate` to use `Altitude` instead of raw altitude values.
- Introduced `FlightStatus` enum for distinguishing flight stages.
- Enhanced `Task` with a `scoringPeriodeEnd` field and added altitude-related updates to `Competition`.
2026-05-14 12:32:23 +02:00
Jan Meinl 5ac820fc5a Add AltitudeSource enum and task model, update Competition with altitude source field
- Introduced `AltitudeSource` enum to specify altitude data sources (GPS, Barometric).
- Added `Task` class with task number field and fluent accessor annotations using Lombok.
- Updated `Competition` class to include the `altitudeSource` field.
2026-05-14 11:18:11 +02:00
Jan Meinl 096e3f5ec8 Add flight model classes with enums and relationships
- Added `Flight`, `FlightType`, `FlightPublicData`, `FlightScoringData` classes for representing flight details.
- Introduced `Daytime` enum for specifying flight time periods.
- Established relationships between flight-related classes for improved data organization.
2026-05-14 11:01:24 +02:00
Jan Meinl 0621e4f376 Add competition and coordinate model classes with enums and relationships
- Created `Competition`, `CompetitionType`, and `CompetitionContact` classes for representing competition details.
- Implemented `Coordinate`, `TrackCoordinate`, and `PositionValid` for geographical data handling.
- Added `ContactType` enum for competition contact categorization.
2026-05-14 10:29:37 +02:00
Jan Meinl 6e767ee703 Replace priority field with dependsOn dependency resolver for Providers
- Removed the `priority` method from `Provider` interface and its implementations.
- Introduced a `dependsOn` method for defining dependencies between Providers.
- Implemented a topological sorting mechanism in `ProviderManager` to handle Provider initialization order based on dependencies.
- Included validation for self-dependencies and unknown dependencies.
2026-05-13 21:23:05 +02:00
Jan Meinl 8479eb6ecd Add CompetitionProvider and fix permission query issue
- Introduced `CompetitionProvider` with skeleton methods for database handling.
- Fixed missing query execution in `PermissionProvider`.
2026-05-13 21:17:25 +02:00
Jan Meinl 470a41c783 Update Gradle wrapper, dependencies, and startup scripts
- Upgraded Gradle to 9.5.0 and enhanced wrapper properties with network timeout, retries, and URL validation settings.
- Updated dependencies to newer versions of lombok and simple libraries.
- Refined `gradlew` and `gradlew.bat` scripts for better error handling, compliance, and performance.
2026-05-13 19:48:13 +02:00
Jan Meinl a46b8081cf Add email claim to JWT, adjust role/permissions claims, and allow localhost:5173 origin 2026-04-12 15:49:21 +02:00
CodingPhoenix 2ad7cae8c4 Update email value in yaak.ev_rnW4WEytTs.yaml configuration file 2026-04-10 22:44:23 +02:00
CodingPhoenix 570bc18c66 Make fields in user-related classes immutable and simplify logger usage 2026-04-10 20:33:04 +02:00
CodingPhoenix eb7a9d0992 Update Gradle wrapper to version 9.4.1 2026-04-10 18:11:42 +02:00
CodingPhoenix 634f99240f Configure CORS for web server and secure refresh token with HTTP-only cookies 2026-02-16 21:37:35 +01:00
CodingPhoenixx 24eec67a46 Added auth refresh endpoint 2026-02-15 22:27:13 +01:00
CodingPhoenixx c285c261d1 Added new JWT-Token support and fixed some bugs. 2026-02-15 22:19:24 +01:00
CodingPhoenixx ffbf4f7500 Added Register Workflow Request Handler and fixed some bugs 2026-02-15 21:32:06 +01:00
CodingPhoenixx 6eca824961 Added login request handler 2026-02-15 19:55:02 +01:00
CodingPhoenixx e1f4522c7d Added base user functions 2026-02-15 18:41:32 +01:00
CodingPhoenixx fa9a51b1a6 Added login flow 2026-02-15 13:47:25 +01:00
CodingPhoenixx 2a2bd5d7b0 Added base providers for users, permission and roles 2026-02-15 13:01:43 +01:00
CodingPhoenixx 34d387138b Added base classes 2026-02-15 12:39:39 +01:00
CodingPhoenixx 61e6e40319 Initialize project with Gradle setup, core dependencies, and IntelliJ configuration. 2026-02-15 11:50:43 +01:00