<?php
declare(strict_types=1);

use Phinx\Migration\AbstractMigration;

final class TaskVsdV2 extends AbstractMigration
{
    public function up(): void
    {
        $this->execute(<<<SQL

            ALTER TABLE sinistro.laudos_finais DROP COLUMN svg_assinatura_perito_secundario;
            ALTER TABLE sinistro.laudos_finais DROP COLUMN svg_assinatura_perito_principal;
            ALTER TABLE sinistro.laudos_finais DROP COLUMN svg_assinatura_responsavel;

            CREATE TABLE sinistro.laudos_finais_assinaturas(
                id SERIAL,
                id_laudo_final INT NOT NULL,
                svg_assinatura_responsavel TEXT,
                svg_assinatura_perito_principal TEXT,
                svg_assinatura_perito_secundario TEXT,
                CONSTRAINT pk_laudos_finais_assinaturas PRIMARY KEY (id),
                CONSTRAINT fk_laudos_finais_assinaturas_laudo_final FOREIGN KEY (id_laudo_final) REFERENCES sinistro.laudos_finais (id)
            ) INHERITS (public.campos_default);
SQL
        );
    }

    public function down(): void
    {
        $this->execute(<<<SQL
            DROP TABLE sinistro.laudos_finais_assinaturas;

            ALTER TABLE sinistro.laudos_finais ADD COLUMN svg_assinatura_responsavel TEXT;
            ALTER TABLE sinistro.laudos_finais ADD COLUMN svg_assinatura_perito_principal TEXT;
            ALTER TABLE sinistro.laudos_finais ADD COLUMN svg_assinatura_perito_secundario TEXT;
SQL
        );
    }
}
