defmodule Localiser.Domain.Floors do import Ecto.Query alias Localiser.Repo alias Localiser.Domain.Schema.Floor def list_floors do Repo.all(Floor) end def get_floor!(id), do: Repo.get!(Floor, id) def create_floor(attrs) do %Floor{} |> Floor.changeset(attrs) |> Repo.insert() end def update_floor(%Floor{} = floor, attrs) do floor |> Floor.changeset(attrs) |> Repo.update() end def delete_floor(%Floor{} = floor) do Repo.delete(floor) end def list_floors_with_rooms do Floor |> preload(:rooms) |> Repo.all() end end