mirror of
https://github.com/azaion/satellite-provider.git
synced 2026-06-21 22:11:14 +00:00
b0fffa6d42
Phase A baseline outputs from /autodev (Steps 1-5): - Problem & solution docs (_docs/00_problem, _docs/01_solution) - Codebase documentation (_docs/02_document) incl. architecture, module-layout, glossary, system-flows, baseline compliance scan - Test specs (blackbox, performance, resilience, security, resource, traceability matrix) - Test task decomposition (_docs/02_tasks/todo): AZ-285..AZ-290 - Testability refactor (_docs/04_refactoring/01-testability-refactoring): - TC-01 Move DownloadedTileInfoV2 + new ExistingTileInfo to Common.DTO - TC-02 Replace dead ISatelliteDownloader API with real signatures - TC-03 GoogleMapsDownloaderV2 implements ISatelliteDownloader - TC-04 TileService depends on ISatelliteDownloader (mockable) - TC-05 DI + endpoints use ISatelliteDownloader - Test runner scripts (scripts/run-tests.sh, run-performance-tests.sh) - Autodev state pointer (_docs/_autodev_state.md) Prepares the codebase for AZ-285..AZ-290 unit/integration test work. Co-authored-by: Cursor <cursoragent@cursor.com>
2.1 KiB
2.1 KiB
Module: DataAccess/Models
Purpose
Database entity classes that map directly to PostgreSQL tables via Dapper. Property names use PascalCase; column mapping is done with SQL aliases in repository queries.
Public Interface
TileEntity
Maps to tiles table.
Id(Guid),TileZoom(int),TileX(int),TileY(int)Latitude,Longitude(double),TileSizeMeters(double),TileSizePixels(int)ImageType(string),MapsVersion(string?),Version(int)FilePath(string),CreatedAt,UpdatedAt(DateTime)
RegionEntity
Maps to regions table.
Id(Guid),Latitude,Longitude(double),SizeMeters(double)ZoomLevel(int),Status(string: "queued"/"processing"/"completed"/"failed")CsvFilePath,SummaryFilePath(string?)TilesDownloaded,TilesReused(int),StitchTiles(bool)CreatedAt,UpdatedAt(DateTime)
RouteEntity
Maps to routes table.
Id(Guid),Name(string),Description(string?)RegionSizeMeters(double),ZoomLevel(int)TotalDistanceMeters(double),TotalPoints(int)RequestMaps,MapsReady,CreateTilesZip(bool)CsvFilePath,SummaryFilePath,StitchedImagePath,TilesZipPath(string?)CreatedAt,UpdatedAt(DateTime)
RoutePointEntity
Maps to route_points table.
Id(Guid),RouteId(Guid),SequenceNumber(int)Latitude,Longitude(double),PointType(string)SegmentIndex(int),DistanceFromPrevious(double?)CreatedAt(DateTime)
Internal Logic
Plain POCOs with no logic.
Dependencies
None.
Consumers
- All repository implementations (TileRepository, RegionRepository, RouteRepository)
TileService— createsTileEntityinstances for persistenceRegionService— creates/updatesRegionEntityRouteService— createsRouteEntityandRoutePointEntityRouteProcessingService— reads entities from repositoriesGoogleMapsDownloaderV2.GetTilesWithMetadataAsync— acceptsIEnumerable<TileEntity>to check existing tiles
Data Models
These ARE the data model.
Configuration
None.
External Integrations
None.
Security
None.
Tests
No dedicated tests.