module Licitacao
class LotesDoPedidoController < ApplicationController
	include ControllerConcern
	before_action :authenticate_usuario!
	before_action :autoriza_usuario!
	before_action :set_lote_do_pedido, only: [:show, :edit, :update, :destroy]

	# GET /licitacao/lotes_do_pedido
	def index
		@q = LoteDoPedido.order(:id).search(params[:q])
		@lotes_do_pedido = @q.result(distinct: false).paginate(page: params[:page], per_page: 10)
	end

	# GET /licitacao/lotes_do_pedido/1
	def show
	end

	# GET /licitacao/lotes_do_pedido/new
	def new
		@lote_do_pedido = LoteDoPedido.new
	end

	# GET /licitacao/lotes_do_pedido/1/edit
	def edit
	end

	# POST /licitacao/lotes_do_pedido
	def create
		@lote_do_pedido = LoteDoPedido.new(lote_do_pedido_params)

		if @lote_do_pedido.save
			redirect_to @lote_do_pedido, notice: 'Lote do pedido foi criado(a) com sucesso.'
		else
			render :new
		end
	end

	# PATCH/PUT /licitacao/lotes_do_pedido/1
	def update
		if @lote_do_pedido.update( lote_do_pedido_params )
			redirect_to @lote_do_pedido, notice: 'Lote do pedido foi atualizado(a) com sucesso.'
		else
			render :edit
		end
	end

	# DELETE /licitacao/lotes_do_pedido/1
	def destroy
		mensagem = apaga_e_retorna_mensagem(@lote_do_pedido)
		redirect_to licitacao_lotes_do_pedido_url, mensagem
	end

	private
	def set_lote_do_pedido
		@lote_do_pedido = LoteDoPedido.find( params[:id] )
	end

	# Permite apenas os parâmetros específicos
	def lote_do_pedido_params
		params.require(:licitacao_lote_do_pedido).permit(:pedido_id, :numero)
		
	end
end
end
