[day-01] setup imc calc and route
This commit is contained in:
20
lib/wabanex_web/controllers/imc_controller.ex
Normal file
20
lib/wabanex_web/controllers/imc_controller.ex
Normal file
@@ -0,0 +1,20 @@
|
||||
defmodule WabanexWeb.IMCController do
|
||||
use WabanexWeb, :controller
|
||||
|
||||
alias Wabanex.IMC
|
||||
|
||||
def index(conn, params) do
|
||||
params
|
||||
|> IMC.calculate()
|
||||
|> handle_response(conn)
|
||||
end
|
||||
|
||||
def handle_response({:ok, result}, conn), do: render_response(conn, :ok, result)
|
||||
def handle_response({:error, result}, conn), do: render_response(conn, :bad_request, result)
|
||||
|
||||
defp render_response(conn, status, result) do
|
||||
conn
|
||||
|> put_status(status)
|
||||
|> json(%{result: result})
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user