<?php
declare(strict_types=1);

use Phinx\Migration\AbstractMigration;

final class Task2203021921 extends AbstractMigration
{
    public function up(): void
    {
        $this->execute(<<<SQL
UPDATE sistema.acao SET ds_label = 'Assessorias/Co-corretagem', ds_descricao = 'Assessorias/Co-corretagem' WHERE id = 1915;

ALTER TABLE sistema.assessorias ADD COLUMN tp_tipo char(1);
UPDATE sistema.assessorias set tp_tipo = 'A';
ALTER TABLE sistema.assessorias ADD CONSTRAINT ckc_tipo_assessorias CHECK (tp_tipo = ANY (ARRAY['A'::bpchar, 'C'::bpchar]));

ALTER TABLE sistema.assessorias ADD COLUMN tp_comissao char(1);
UPDATE sistema.assessorias set tp_comissao = 'F';
ALTER TABLE sistema.assessorias ADD CONSTRAINT ckc_tipo_comissao_assessorias CHECK (tp_comissao = ANY (ARRAY['F'::bpchar, 'P'::bpchar]));
SQL
);
    }

    public function down(): void
    {
        $this->execute(<<<SQL
UPDATE sistema.acao SET ds_label = 'Assessorias', ds_descricao = 'Assessorias' WHERE id = 1915;
ALTER TABLE sistema.assessorias DROP CONSTRAINT ckc_tipo_assessorias;
ALTER TABLE sistema.assessorias DROP COLUMN tp_tipo;
ALTER TABLE sistema.assessorias DROP CONSTRAINT ckc_tipo_comissao_assessorias;
ALTER TABLE sistema.assessorias DROP COLUMN tp_comissao;
SQL
);
    }
}
