<?php
declare(strict_types=1);

use Phinx\Migration\AbstractMigration;

final class TaskInc56478 extends AbstractMigration
{
    public function up(): void
    {
        $this->execute(<<<SQL
            INSERT INTO sistema.acao (ds_label, ds_module, ds_controller, ds_action, id_parent, nr_ordem, ds_descricao, fl_tipo, id_usuario_criacao)
                VALUES('Botão Dispensa Preliminar', 'sinistro2', 'avisos', 'botaodispensapreliminar', 1616, 0, 'Botão Dispensa Preliminar', 'A', 2068);
            
            INSERT INTO sistema.roles_acao (id_role, id_acao, id_usuario_criacao)
                VALUES((SELECT id FROM sistema.roles WHERE ds_chave = 'ADMIN'), currval('sistema.acao_id_seq'), 2068);

            INSERT INTO sistema.usuarios_acao (id_usuario, id_acao, id_usuario_criacao)
                VALUES
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'marcia.correa'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'tamara.ramos'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'alvaro.aperta'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'tatiana.tondim'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'grace.nascimento'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'diego.campos'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'fabio.albarello'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'gabriel.gomes'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'ivanir.ceolin'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'marcelo.zanardo'), currval('sistema.acao_id_seq'), 2068),
                    ((SELECT id FROM sistema.usuarios WHERE ds_nome_usuario = 'randal.brandolt'), currval('sistema.acao_id_seq'), 2068)
                ;
SQL
        );
    }

    public function down(): void
    {
        $this->execute(<<<SQL
            DELETE FROM sistema.roles_acao WHERE id_acao =
                (SELECT id FROM sistema.acao WHERE ds_action = 'botaodispensapreliminar' AND ds_module = 'sinistro2' AND ds_controller = 'avisos');
            DELETE FROM sistema.usuarios_acao WHERE id_acao =
                (SELECT id FROM sistema.acao WHERE ds_action = 'botaodispensapreliminar' AND ds_module = 'sinistro2' AND ds_controller = 'avisos');
            DELETE FROM sistema.acao WHERE ds_action = 'botaodispensapreliminar';
SQL
        );
    }
}
