From 630aec22cf027de3d8a62cb23ade8dddd3988398 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Moritz=20B=C3=B6hme?= Date: Fri, 4 Apr 2025 21:25:08 +0200 Subject: [PATCH] feat: add completed task --- lib/putzplan/tasks.ex | 1 + lib/putzplan/tasks/completed_task.ex | 30 ++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 lib/putzplan/tasks/completed_task.ex diff --git a/lib/putzplan/tasks.ex b/lib/putzplan/tasks.ex index a407b77..02854d6 100644 --- a/lib/putzplan/tasks.ex +++ b/lib/putzplan/tasks.ex @@ -3,5 +3,6 @@ defmodule Putzplan.Tasks do resources do resource Putzplan.Tasks.Task + resource Putzplan.Tasks.CompletedTask end end diff --git a/lib/putzplan/tasks/completed_task.ex b/lib/putzplan/tasks/completed_task.ex new file mode 100644 index 0000000..9d16520 --- /dev/null +++ b/lib/putzplan/tasks/completed_task.ex @@ -0,0 +1,30 @@ +defmodule Putzplan.Tasks.CompletedTask do + use Ash.Resource, otp_app: :putzplan, domain: Putzplan.Tasks, data_layer: AshSqlite.DataLayer + + actions do + defaults [:read] + end + + attributes do + uuid_primary_key :id + + attribute :completion, :date do + allow_nil? false + end + end + + relationships do + belongs_to :users, Putzplan.Accounts.User do + allow_nil? false + end + + belongs_to :tasks, Putzplan.Tasks.Task do + allow_nil? false + end + end + + sqlite do + table "completed_tasks" + repo Putzplan.Repo + end +end