class Api::SubtradesController

Public Instance Methods

index() click to toggle source

Method to get trade and its subtrades based on query params.

# File app/controllers/api/subtrades_controller.rb, line 3
def index
  query = params[:q]
  if params[:trade_id]
    trade = Trade.find(params[:trade_id])
    if params[:subtrade_query].present?
      subtrades = Subtrade.search(query: params[:subtrade_query], without_fixxpert_existence: true, trade_id: params[:trade_id]).page(params[:page]).per(trade.subtrades.count).records
    else
      subtrades = trade.subtrades
    end
  else
    subtrades = Subtrade.all
  end
  subtrades = subtrades.where("subtrades.name like ?", "%#{query}%")

  respond_to do |format|
    format.json do
      render :json => subtrades.to_json(only: [:id, :name, :description])
    end
  end
end