Files
old-roraccounting/app/controllers/homies_controller.rb
2020-10-06 09:51:03 +03:00

54 lines
960 B
Ruby

class HomiesController < ApplicationController
def index
json_response(Homie.all.order(importance: :desc, name: :asc))
end
def create
homie = Homie.new(homie_params)
if homie.save
index
else
error_response(:bad_request)
end
end
def destroy
id = params[:homie_id].to_i
if Homie.destroy(id)
index
else
error_response(:bad_request)
end
end
def info
importance = params[:importance].to_i
json_response(Homie.info(importance))
end
def settle
homie_id = params[:homie_id].to_i
amount = params[:amount].present? ? params[:amount].to_d : nil
homie = Homie.find(homie_id)
if homie.settle(amount)
info
else
error_response :bad_request
end
rescue StandardError
error_response :bad_request
end
private
def homie_params
params.require(:homie).permit(
:name,
:importance,
:about,
:chip_id
)
end
end