module Contabilidade
	class IrrfsPessoasJuridicasController < ApplicationController
		include ContabilidadeControllerConcern
		include ControllerConcern
		before_action :authenticate_usuario!
		before_action :autoriza_usuario!
		before_action :set_irrf_pessoa_juridica, only: [:show, :edit, :update, :destroy]

		# GET /contabilidade/irrfs_pessoas_juridicas
		def index
			@q = contabilidade_atual.irrfs_pessoas_juridicas.order(:codigo).search(params[:q])
			@irrfs_pessoas_juridicas = @q.result(distinct: false).paginate(page: params[:page], per_page: 10)
		end

		# GET /contabilidade/irrfs_pessoas_juridicas/1
		def show
			respond_to do |format|
				format.json { render json: @irrf_pessoa_juridica }
				format.html
			end
		end

		# GET /contabilidade/irrfs_pessoas_juridicas/new
		def new
			@irrf_pessoa_juridica = contabilidade_atual.irrfs_pessoas_juridicas.new
		end

		# GET /contabilidade/irrfs_pessoas_juridicas/1/edit
		def edit
		end

		# POST /contabilidade/irrfs_pessoas_juridicas
		def create
			@irrf_pessoa_juridica = contabilidade_atual.irrfs_pessoas_juridicas.new(irrf_pessoa_juridica_params)

			if @irrf_pessoa_juridica.save
				redirect_to @irrf_pessoa_juridica, notice: 'Atividade para pessoa(s) jurídica(s) cadastrada com sucesso.'
			else
				render :new
			end
		end

		# PATCH/PUT /contabilidade/irrfs_pessoas_juridicas/1
		def update
			if @irrf_pessoa_juridica.update( irrf_pessoa_juridica_params )
				redirect_to @irrf_pessoa_juridica, notice: 'Irrf pessoa juridica foi atualizado(a) com sucesso.'
			else
				render :edit
			end
		end

		# DELETE /contabilidade/irrfs_pessoas_juridicas/1
		def destroy
			mensagem = apaga_e_retorna_mensagem(@irrf_pessoa_juridica)
			redirect_to contabilidade_irrfs_pessoas_juridicas_path(exercicio: @irrf_pessoa_juridica.orcamento.exercicio), mensagem
		end

		private
		def set_irrf_pessoa_juridica
			@irrf_pessoa_juridica = IrrfPessoaJuridica.find( params[:id] )
		end

		# Permite apenas os parâmetros específicos
		def irrf_pessoa_juridica_params
			params.require(:contabilidade_irrf_pessoa_juridica).permit(:orcamento_id, :codigo, :descricao, :aliquota, :percentual_da_base_de_calculo)

		end
	end
end
