class FixPermissoes < ActiveRecord::Migration[4.2]
	def self.up
		modulo = Acesso::Modulo.find_by( nome_do_modulo: 'ppa', nome_de_exibicao:  "PPA" )

		if modulo.present?	
			controle = Acesso::Controle.find_by( nome_do_controle: 'ppa/iniciativas', nome_de_exibicao: "Iniciativas", modulo_id: modulo.id)
			Acesso::Acao.find_by( nome_da_acao: "proximo_codigo", nome_de_exibicao: "Buscar Sugestão de Código", controle_id: controle.id).destroy
		end

		modulo = Acesso::Modulo.find_by( nome_do_modulo: 'base', nome_de_exibicao:  "Geral" )
		if modulo.present?
			controle = Acesso::Controle.find_or_create_by( nome_do_controle: 'base/elementos_de_despesa', nome_de_exibicao: "Elementos de Despesa", modulo_id: modulo.id)
			Acesso::Acao.find_or_create_by!( nome_da_acao: "update", nome_de_exibicao: "Editar", controle_id: controle.id)
			controle = Acesso::Controle.find_or_create_by!( nome_do_controle: 'base/itens', nome_de_exibicao:  "Itens", modulo_id: modulo.id)
			Acesso::Acao.find_or_create_by!( nome_da_acao: "read", 	nome_de_exibicao: "Visualizar", controle_id: controle.id)
		end
	end

	def self.down
		modulo = Acesso::Modulo.find_by( nome_do_modulo: 'ppa', nome_de_exibicao:  "PPA" )
		controle = Acesso::Controle.find_by( nome_do_controle: 'ppa/iniciativas', nome_de_exibicao: "Iniciativas", modulo_id: modulo.id)
		Acesso::Acao.find_or_create_by( nome_da_acao: "proximo_codigo", nome_de_exibicao: "Buscar Sugestão de Código", controle_id: controle.id)

		modulo = Acesso::Modulo.find_or_create_by( nome_do_modulo: 'base', nome_de_exibicao:  "Geral" )
		controle = Acesso::Controle.find_or_create_by( nome_do_controle: 'base/elementos_de_despesa', nome_de_exibicao: "Elementos de Despesa", modulo_id: modulo.id)
		Acesso::Acao.find_by!( nome_da_acao: "update", nome_de_exibicao: "Editar", controle_id: controle.id).destroy
		controle = Acesso::Controle.find_or_create_by!( nome_do_controle: 'base/itens', nome_de_exibicao:  "Itens", modulo_id: modulo.id)
		Acesso::Acao.find_by!( nome_da_acao: "read", 	nome_de_exibicao: "Visualizar", controle_id: controle.id).destroy
	end
end