20 lines
513 B
PHP
20 lines
513 B
PHP
<?php
|
|
|
|
namespace App\Integrations\Domain\Support;
|
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
/** Resolves a source `dns_manager_domain.id` to the local row via `legacy_id`. */
|
|
class DnsDomainIdResolver
|
|
{
|
|
/** @var array<int, int>|null */
|
|
private static ?array $map = null;
|
|
|
|
public function resolve(int $legacyDomainId): ?int
|
|
{
|
|
self::$map ??= DB::table('dns_manager_domain')->whereNotNull('legacy_id')->pluck('id', 'legacy_id')->all();
|
|
|
|
return self::$map[$legacyDomainId] ?? null;
|
|
}
|
|
}
|