<?php
declare(strict_types=1);

use Phinx\Migration\AbstractMigration;

final class Task2308111701 extends AbstractMigration
{
    public function up(): void
    {
        $this->execute(<<<SQL
            ALTER TABLE seguro.propostas_email_assinatura_documento ADD COLUMN ds_celular_segurado telefone;

            INSERT INTO sistema.tipo_status (id_usuario_criacao, dt_criacao, ds_tipo_status, ds_chave)
                VALUES (2068, now(), 'Assinatura eletrônica', 'ASSINATURA_ELETRONICA');

            INSERT INTO sistema.status (id_usuario_criacao, dt_criacao, ds_status, cd_status, ds_chave, id_tipo_status)
                VALUES (2068, now(), 'Aguardando envio', 1, 'waiting', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Enviado', 2, 'sent', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Em Processamento', 3, 'error', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Concluído', 4, 'completed', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Cancelado', 5, 'voided', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Rascuno', 6, 'created', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Entregue', 7, 'delivered', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA')),
                       (2068, now(), 'Recusado pelo Destinatário', 8, 'declined', (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA'));
SQL
        );
    }

    public function down(): void
    {
        $this->execute(<<<SQL
            ALTER TABLE seguro.propostas_email_assinatura_documento DROP COLUMN ds_celular_segurado;
            DELETE FROM sistema.status WHERE id_tipo_status = (SELECT id FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA');
            DELETE FROM sistema.tipo_status WHERE ds_chave = 'ASSINATURA_ELETRONICA';
SQL
        );
    }
}
