From f39fd49af36fd0049bf2dce6ec78b547646c48a3 Mon Sep 17 00:00:00 2001 From: Moritz Date: Fri, 12 Dec 2025 19:10:02 +0100 Subject: [PATCH] feat: add 4 example membership fee types to seed script --- priv/repo/seeds.exs | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/priv/repo/seeds.exs b/priv/repo/seeds.exs index bec9006..a37743e 100644 --- a/priv/repo/seeds.exs +++ b/priv/repo/seeds.exs @@ -5,6 +5,39 @@ alias Mv.Membership alias Mv.Accounts +alias Mv.MembershipFees.MembershipFeeType + +# Create example membership fee types +for fee_type_attrs <- [ + %{ + name: "Standard (Jährlich)", + amount: Decimal.new("120.00"), + interval: :yearly, + description: "Standard jährlicher Mitgliedsbeitrag" + }, + %{ + name: "Standard (Halbjährlich)", + amount: Decimal.new("65.00"), + interval: :half_yearly, + description: "Standard halbjährlicher Mitgliedsbeitrag" + }, + %{ + name: "Standard (Vierteljährlich)", + amount: Decimal.new("35.00"), + interval: :quarterly, + description: "Standard vierteljährlicher Mitgliedsbeitrag" + }, + %{ + name: "Standard (Monatlich)", + amount: Decimal.new("12.00"), + interval: :monthly, + description: "Standard monatlicher Mitgliedsbeitrag" + } + ] do + MembershipFeeType + |> Ash.Changeset.for_create(:create, fee_type_attrs) + |> Ash.create!(upsert?: true, upsert_identity: :unique_name) +end for attrs <- [ # Basic example fields (for testing) @@ -332,6 +365,7 @@ end IO.puts("✅ Seeds completed successfully!") IO.puts("📝 Created sample data:") IO.puts(" - Global settings: club_name = #{default_club_name}") +IO.puts(" - Membership fee types: 4 types (Yearly, Half-yearly, Quarterly, Monthly)") IO.puts(" - Custom fields: 12 fields (String, Date, Boolean, Email, + 8 realistic fields)") IO.puts(" - Admin user: admin@mv.local (password: testpassword)") IO.puts(" - Sample members: Hans, Greta, Friedrich")