- Add PostcodeService to resolve UK postcodes, outcodes, and place names to coordinates via postcodes.io API with 30-day caching - Add LocationResult value object for resolved location data - Add per-fuel-type price validation (80p-1050p range) to FuelPriceService with warning logs for out-of-range prices - Change price_pence column from unsignedSmallInteger to unsignedMediumInteger in station_prices tables - Add CHECK constraints (5000-50000 range) on price_pence columns as database-level guard - Improve error handling in PollFuelPrices command with file/line/trace output - Add tests for PostcodeService covering full postcodes, outcodes, place names, caching, and error handling - Add test for price validation range checks Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
14 lines
228 B
PHP
14 lines
228 B
PHP
<?php
|
|
|
|
namespace App\Services;
|
|
|
|
readonly class LocationResult
|
|
{
|
|
public function __construct(
|
|
public string $query,
|
|
public string $displayName,
|
|
public float $lat,
|
|
public float $lng,
|
|
) {}
|
|
}
|