<?php
declare(strict_types=1);

use Phinx\Migration\AbstractMigration;

final class Task2203311850 extends AbstractMigration
{
    public function up(): void
    {
        $this->execute(<<<SQL
            ALTER TABLE seguro.propostas_cotacao_agritask RENAME COLUMN vl_premio TO vl_premio_10;
            ALTER TABLE seguro.propostas_cotacao_agritask ADD COLUMN vl_premio_20 NUMERIC(14,2);
            ALTER TABLE seguro.propostas_cotacao_agritask ADD COLUMN vl_premio_30 NUMERIC(14,2);
            -- Para não precisar validar qual foi a franquia era e adicionar na coluna correspondente.
            -- Como anteriormente só tinha uma, adicionei o valor do prêmio igual nas três colunas para buscar correto na hora do cáulculo. 
            UPDATE seguro.propostas_cotacao_agritask SET vl_premio_20 = vl_premio_10, vl_premio_30 = vl_premio_10;
            
            ALTER TABLE seguro.propostas_cotacao_agritask ADD COLUMN ds_codigo_segurado VARCHAR;
            ALTER TABLE seguro.propostas_cotacao_agritask ADD COLUMN ds_codigo_item VARCHAR;
SQL
        );
    }

    public function down(): void
    {
        $this->execute(<<<SQL
            ALTER TABLE seguro.propostas_cotacao_agritask DROP COLUMN ds_codigo_item;
            ALTER TABLE seguro.propostas_cotacao_agritask DROP COLUMN ds_codigo_segurado;
            ALTER TABLE seguro.propostas_cotacao_agritask DROP COLUMN vl_premio_30;
            ALTER TABLE seguro.propostas_cotacao_agritask DROP COLUMN vl_premio_20;
            ALTER TABLE seguro.propostas_cotacao_agritask RENAME COLUMN vl_premio_10 TO vl_premio;
SQL
        );
    }
}
