Files
2026-09-09 16:56:22 +07:00

41 lines
1.2 KiB
PHP

<?php
namespace App\Integrations\Domain\Writers;
use App\Integrations\Domain\DTOs\DnsRecordData;
use Illuminate\Support\Facades\DB;
class DnsRecordWriter
{
/**
* Skips records whose domain couldn't be resolved — dns_manager_ns.dns_manager_domain_id is NOT NULL.
*/
public function write(DnsRecordData $data): bool
{
if ($data->dnsManagerDomainId === null) {
return false;
}
DB::table('dns_manager_ns')->updateOrInsert(
['legacy_id' => $data->legacyId],
[
'dns_manager_domain_id' => $data->dnsManagerDomainId,
'name' => $data->name,
'type' => $data->type,
'service_name' => $data->serviceName,
'protocol' => $data->protocol,
'priority' => $data->priority,
'weight' => $data->weight,
'port' => $data->port,
'value' => $data->value,
'plesk_id' => $data->pleskId,
'ttl' => $data->ttl,
'created_at' => $data->createdAt,
'updated_at' => $data->updatedAt,
]
);
return true;
}
}