Joao P Dubas 3709cd265a [day-02] add context to create/get a user
Create context module to create and fetch a user.
2021-06-22 23:57:10 +00:00

21 lines
372 B
Elixir

defmodule Wabanex.Users.Get do
alias Wabanex.{Repo, User}
def call(id) do
id
|> Ecto.UUID.cast()
|> handle_result()
end
defp handle_result(:error), do: {:error, "Invalid id format"}
defp handle_result({:ok, uuid}) do
User
|> Repo.get(uuid)
|> case do
nil -> {:error, "User not found"}
user -> {:ok, user}
end
end
end