diff --git a/GerbilManager.Tests/ImportServiceTests.cs b/GerbilManager.Tests/ImportServiceTests.cs index 158cef4..a90869d 100644 --- a/GerbilManager.Tests/ImportServiceTests.cs +++ b/GerbilManager.Tests/ImportServiceTests.cs @@ -573,27 +573,32 @@ namespace GerbilManager.Tests [Fact] public void SeedGen3g_existing_varieties_preserve_id_name_binding() { - // SEED-HELL bounce regression: the 61 existing entries must NOT change their - // Id->Name binding after GEN-3g. The 5 new entries (IDs 62-66) are appended. - // A hand-assigned Gerbil.ColorVarietyId pointing to "CP-Fuchs" (ID 58) must - // still map to CP-Fuchs after the migration runs (append-only, no rename-shift). - using var db = NewDb(); // EnsureCreated applies HasData including new 66-entry seed + // CATALOG-RESEED regression: ID->Name bindings for all 66 existing entries must be + // stable. 4 new Dilute Fuchs varieties appended (IDs 67-70). CP-Fuchs (ID 58) and + // the CP-*-Hell entries (IDs 62-66) must survive with their original names intact. + using var db = NewDb(); // EnsureCreated applies HasData including 70-entry seed - // ID 58 (index 57 in old catalog, 0-based) = CP-Fuchs — must still be CP-Fuchs + // ID 58 = CP-Fuchs — must still be CP-Fuchs (no rename-shift from new entries) var cpFuchsId = new Guid("00000000-0000-0000-0000-000000000058"); var cpFuchs = db.ColorVarieties.Find(cpFuchsId); Assert.NotNull(cpFuchs); Assert.Equal("CP-Fuchs", cpFuchs!.Name); - // New entries at IDs 62-66 exist with correct names + // Existing CP-*-Hell entries (IDs 62-66) unchanged Assert.Equal("CP-Agouti-Hell", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000062"))!.Name); Assert.Equal("CP-Silberagouti-Hell", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000063"))!.Name); Assert.Equal("CP-Algierfuchs-Hell", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000064"))!.Name); Assert.Equal("CP-Polarfuchs-Hell", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000065"))!.Name); Assert.Equal("CP-Orangeschimmel-Hell", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000066"))!.Name); - // Total count is exactly 66 - Assert.Equal(66, db.ColorVarieties.Count()); + // 4 new Dilute Fuchs varieties appended (IDs 67-70) + Assert.Equal("Dilute Algierfuchs", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000067"))!.Name); + Assert.Equal("Dilute Goldfuchs", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000068"))!.Name); + Assert.Equal("Dilute Rotfuchs", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000069"))!.Name); + Assert.Equal("Dilute Polarfuchs", db.ColorVarieties.Find(new Guid("00000000-0000-0000-0000-000000000070"))!.Name); + + // Total count is exactly 70 + Assert.Equal(70, db.ColorVarieties.Count()); } [Theory] diff --git a/GerbilManagerWebAPI/ApplicationContext.cs b/GerbilManagerWebAPI/ApplicationContext.cs index e97846c..17f87c5 100644 --- a/GerbilManagerWebAPI/ApplicationContext.cs +++ b/GerbilManagerWebAPI/ApplicationContext.cs @@ -282,79 +282,97 @@ public class ApplicationContext : DbContext /// private static void SeedColorVarieties(ModelBuilder modelBuilder) { - // GEN-3g (Kevin): 5 CP-*-Hell variants appended at the end (IDs 62-66). - // Existing 61 entries are UNCHANGED (same ID->Name binding preserved). - // SortOrder for new entries is appended; Kevin's frontend catalog handles - // the interleaved display order via its own sortOrder values. - (string Name, string Genotype)[] catalog = + // CATALOG-RESEED (AR-5 / colorVarietySeed.backend.json): 70 entries, frozen symbols. + // ID = array_index + 1 (stable, never changes — live FKs safe). + // SortOrder comes from colorVarietySeed.backend.json (decoupled from ID). + // New entries appended at end (IDs 67-70: Dilute Algierfuchs/Goldfuchs/Rotfuchs/Polarfuchs). + // GUARDRAIL: DO NOT reseed from colorVarietySeed.generated.json — it uses bracket display + // notation (e[f]/c[chm]) which breaks CR-11 GenotypePotentiallyMatches() (frozen vs brackets). + (string Name, string Genotype, int SortOrder)[] catalog = { - ("Pink Eyed White (PEW)", "AA chch DD EE GG pp spsp rere"), - ("Hermelin", "aa chch DD EE GG PP spsp rere"), - ("Himalaya", "AA chch DD EE GG PP spsp rere"), - ("Zobel", "aa cchmcchm DD EE gg PP spsp rere"), - ("Rotaugenschimmel", "AA CC DD efef GG pp spsp rere"), - ("Agouti", "AA CC DD EE GG PP spsp rere"), - ("Schwarz", "aa CC DD EE GG PP spsp rere"), - ("Silberagouti", "AA CC DD EE gg PP spsp rere"), - ("Anthrazit", "aa CC DD EE gg PP spsp rere"), - ("Algierfuchs", "AA CC DD ee GG PP spsp rere"), - ("Blau", "aa CC dd EE GG PP spsp rere"), - ("Gold", "AA CC DD EE GG pp spsp rere"), - ("Platin", "aa CC DD EE GG pp spsp rere"), - ("Goldfuchs", "AA CC DD ee GG pp spsp rere"), - ("Rotfuchs", "aa CC DD ee GG pp spsp rere"), - ("dd Gold", "AA CC dd EE GG pp spsp rere"), - ("dd Platin", "aa CC dd EE GG pp spsp rere"), - ("Altweiss (REW)", "aa CC DD EE gg pp spsp rere"), - ("Apricot (Blassfuchs)", "AA CC DD ee gg pp spsp rere"), - ("Blaufuchs", "aa CC DD ee gg PP spsp rere"), - ("C-Separator", "aa CC DD ee gg pp spsp rere"), - ("Elfenbein", "AA CC DD EE gg pp spsp rere"), - ("Kohlfuchs", "aa CC DD ee GG PP spsp rere"), - ("Polarfuchs", "AA CC DD ee gg PP spsp rere"), - ("Saphir", "aa CC DD EE GG pp spsp rere"), - ("Orangeschimmel", "AA CC DD efef GG PP spsp rere"), - ("Topas", "AA CC DD EE GG pp spsp rere"), - ("Platin-Hell", "aa CC DD EE GG pp spsp rere"), - ("Agouti dd", "AA CC dd EE GG PP spsp rere"), - ("Silberagouti dd", "AA CC dd EE gg PP spsp rere"), - ("Kohlfuchs dd", "aa CC dd ee GG PP spsp rere"), - ("Anthrazit dd", "aa CC dd EE gg PP spsp rere"), - ("Silberschimmel", "AA CC DD efef gg PP spsp rere"), - ("Polarfuchsschimmel", "AA CC DD efef gg PP spsp rere"), - ("Algierfuchsschimmel", "AA CC DD efef GG PP spsp rere"), - ("Kohlfuchsschimmel", "aa CC DD efef GG PP spsp rere"), - ("Blaufuchsschimmel", "aa CC DD efef gg PP spsp rere"), - ("Kohlfuchs, hell", "aa CC DD ee GG PP spsp rere"), - ("Goldfuchs, hell", "AA CC DD ee GG pp spsp rere"), - ("Goldfuchsschimmel", "AA CC DD efef GG pp spsp rere"), - ("Gold-Hell", "AA CC DD EE GG pp spsp rere"), - ("Blaufuchs, hell", "aa CC DD ee gg PP spsp rere"), - ("Rotfuchsschimmel", "aa CC DD efef GG pp spsp rere"), - ("Polarfuchs, hell", "AA CC DD ee gg PP spsp rere"), - ("Kohlfuchsschimmel, hell", "aa CC DD efef GG PP spsp rere"), - ("Rotfuchs, hell", "aa CC DD ee GG pp spsp rere"), - ("Kohlfuchs-Hell", "aa CC DD ee GG PP spsp rere"), - ("Algierfuchs, hell", "AA CC DD ee GG PP spsp rere"), - ("Topas dd", "AA CC dd EE GG pp spsp rere"), - ("Blaufuchs dd", "aa CC dd ee gg pp spsp rere"), - ("Marder", "aa cchmcchm DD EE GG PP spsp rere"), - ("Siam", "aa cchmch DD EE GG PP spsp rere"), - ("Zobel-Hell", "aa cchmch DD EE gg PP spsp rere"), - ("CP-Agouti", "AA cchmcchm DD EE GG PP spsp rere"), - ("CP-Silberagouti", "AA cchmcchm DD EE gg PP spsp rere"), - ("CP-Algierfuchs", "AA cchmcchm DD ee GG PP spsp rere"), - ("CP-Polarfuchs", "AA cchmcchm DD ee gg PP spsp rere"), - ("CP-Fuchs", "AA cchmcchm dd ee GG PP spsp rere"), - ("CP-Fuchs-Hell", "AA cchmch dd ee GG PP spsp rere"), - ("CP-Blaufuchs", "AA cchmcchm dd ee gg PP spsp rere"), - ("CP-Orangeschimmel", "AA cchmcchm DD efef GG PP spsp rere"), - // GEN-3g: 5 new CP-*-Hell variants appended (IDs 62-66, no ID->Name drift) - ("CP-Agouti-Hell", "AA cchmch DD EE GG PP spsp rere"), - ("CP-Silberagouti-Hell", "AA cchmch DD EE gg PP spsp rere"), - ("CP-Algierfuchs-Hell", "AA cchmch DD ee GG PP spsp rere"), - ("CP-Polarfuchs-Hell", "AA cchmch DD ee gg PP spsp rere"), - ("CP-Orangeschimmel-Hell","AA cchmch DD efef GG PP spsp rere"), + // --- C-locus white / partial albino (IDs 1-3) --- + ("Pink Eyed White (PEW)", "AA chch DD EE GG pp spsp rere", 0), + ("Hermelin", "aa chch DD EE GG PP spsp rere", 1), + ("Himalaya", "AA chch DD EE GG PP spsp rere", 2), + // --- Zobel / colourpoint dark (ID 4) --- + ("Zobel", "aa cchmcchm DD EE gg PP spsp rere", 3), + // --- Schimmel family (IDs 5) --- + ("Rotaugenschimmel", "AA CC DD efef GG pp spsp rere", 4), + // --- Standard colours (IDs 6-15) --- + ("Agouti", "AA CC DD EE GG PP spsp rere", 5), + ("Schwarz", "aa CC DD EE GG PP spsp rere", 6), + ("Silberagouti","AA CC DD EE gg PP spsp rere", 7), + ("Anthrazit", "aa CC DD EE gg PP spsp rere", 8), + ("Algierfuchs", "AA CC DD ee GG PP spsp rere", 9), + ("Blau", "aa CC dd EE GG PP spsp rere", 10), + ("Gold", "AA CC DD EE GG pp spsp rere", 11), + ("Platin", "aa CC DD EE GG pp spsp rere", 12), + ("Goldfuchs", "AA CC DD ee GG pp spsp rere", 13), + ("Rotfuchs", "aa CC DD ee GG pp spsp rere", 14), + // --- Dilute (dd) standard (IDs 16-17) --- + ("Dilute Gold", "AA CC dd EE GG pp spsp rere", 15), + ("Dilute Platin","aa CC dd EE GG pp spsp rere", 16), + // --- REW / Apricot / misc C-locus (IDs 18-28) --- + ("Altweiss (REW)", "aa CC DD EE gg pp spsp rere", 17), + ("Apricot (Blassfuchs)","AA CC DD ee gg pp spsp rere", 18), + ("Blaufuchs", "aa CC DD ee gg PP spsp rere", 19), + ("C-Separator", "aa CC DD ee gg pp spsp rere", 20), + ("Elfenbein", "AA CC DD EE gg pp spsp rere", 21), + ("Kohlfuchs", "aa CC DD ee GG PP spsp rere", 22), + ("Polarfuchs", "AA CC DD ee gg PP spsp rere", 23), + ("Saphir", "aa CC DD EE GG pp spsp rere", 24), + ("Orangeschimmel","AA CC DD efef GG PP spsp rere", 25), + ("Topas", "AA CC DD EE GG pp spsp rere", 26), + ("Platin-Hell", "aa CC DD EE GG pp spsp rere", 27), + // --- Dilute (dd) varieties (IDs 29-32) --- + ("Dilute Agouti", "AA CC dd EE GG PP spsp rere", 28), + ("Dilute Silberagouti","AA CC dd EE gg PP spsp rere", 29), + ("Dilute Kohlfuchs", "aa CC dd ee GG PP spsp rere", 30), + ("Dilute Anthrazit", "aa CC dd EE gg PP spsp rere", 31), + // --- Schimmel / Fuchsschimmel (IDs 33-37) --- + ("Silberschimmel", "AA CC DD efef gg PP spsp rere", 36), + ("Polarfuchsschimmel", "AA CC DD efef gg PP spsp rere", 37), + ("Algierfuchsschimmel", "AA CC DD efef GG PP spsp rere", 38), + ("Kohlfuchsschimmel", "aa CC DD efef GG PP spsp rere", 39), + ("Blaufuchsschimmel", "aa CC DD efef gg PP spsp rere", 40), + // --- Hell variants (IDs 38-48) --- + ("Kohlfuchs, hell", "aa CC DD ee GG PP spsp rere", 41), + ("Goldfuchs, hell", "AA CC DD ee GG pp spsp rere", 42), + ("Goldfuchsschimmel", "AA CC DD efef GG pp spsp rere", 43), + ("Gold-Hell", "AA CC DD EE GG pp spsp rere", 44), + ("Blaufuchs, hell", "aa CC DD ee gg PP spsp rere", 45), + ("Rotfuchsschimmel", "aa CC DD efef GG pp spsp rere", 46), + ("Polarfuchs, hell", "AA CC DD ee gg PP spsp rere", 47), + ("Kohlfuchsschimmel, hell","aa CC DD efef GG PP spsp rere", 48), + ("Rotfuchs, hell", "aa CC DD ee GG pp spsp rere", 49), + ("Kohlfuchs-Hell", "aa CC DD ee GG PP spsp rere", 50), + ("Algierfuchs, hell", "AA CC DD ee GG PP spsp rere", 51), + // --- Dilute (dd) renamed variants (IDs 49-50) --- + ("Dilute Topas", "AA CC dd EE GG pp spsp rere", 52), + ("Dilute Blaufuchs","aa CC dd ee gg pp spsp rere", 53), + // --- Marder / Siam / CP- series (IDs 51-66) --- + ("Marder", "aa cchmcchm DD EE GG PP spsp rere", 54), + ("Siam", "aa cchmch DD EE GG PP spsp rere", 55), + ("Zobel-Hell","aa cchmch DD EE gg PP spsp rere", 56), + ("CP-Agouti", "AA cchmcchm DD EE GG PP spsp rere", 57), + ("CP-Silberagouti","AA cchmcchm DD EE gg PP spsp rere", 59), + ("CP-Algierfuchs", "AA cchmcchm DD ee GG PP spsp rere", 61), + ("CP-Polarfuchs", "AA cchmcchm DD ee gg PP spsp rere", 63), + ("CP-Fuchs", "AA cchmcchm dd ee GG PP spsp rere", 65), + ("CP-Fuchs-Hell", "AA cchmch dd ee GG PP spsp rere", 66), + ("CP-Blaufuchs", "AA cchmcchm dd ee gg PP spsp rere", 67), + ("CP-Orangeschimmel","AA cchmcchm DD efef GG PP spsp rere", 68), + // GEN-3g / CATALOG-RESEED: CP-*-Hell interleaved (IDs 62-66, SortOrders from backend.json) + ("CP-Agouti-Hell", "AA cchmch DD EE GG PP spsp rere", 58), + ("CP-Silberagouti-Hell", "AA cchmch DD EE gg PP spsp rere", 60), + ("CP-Algierfuchs-Hell", "AA cchmch DD ee GG PP spsp rere", 62), + ("CP-Polarfuchs-Hell", "AA cchmch DD ee gg PP spsp rere", 64), + ("CP-Orangeschimmel-Hell","AA cchmch DD efef GG PP spsp rere", 69), + // CATALOG-RESEED: 4 new Dilute (dd) Fuchs varieties appended (IDs 67-70) + ("Dilute Algierfuchs","AA CC dd ee GG PP spsp rere", 32), + ("Dilute Goldfuchs", "AA CC dd ee GG pp spsp rere", 33), + ("Dilute Rotfuchs", "aa CC dd ee GG pp spsp rere", 34), + ("Dilute Polarfuchs", "AA CC dd ee gg PP spsp rere", 35), }; var rows = new ColorVariety[catalog.Length]; @@ -362,11 +380,11 @@ public class ApplicationContext : DbContext { rows[i] = new ColorVariety { - // Stable, deterministic GUIDs so the HasData seed is migration-stable. + // Stable, deterministic GUIDs — ID = array_index + 1 (never reorder existing entries). Id = new Guid($"00000000-0000-0000-0000-{(i + 1):D12}"), Name = catalog[i].Name, CanonicalGenotype = catalog[i].Genotype, - SortOrder = i, + SortOrder = catalog[i].SortOrder, }; } modelBuilder.Entity().HasData(rows); diff --git a/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.Designer.cs b/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.Designer.cs new file mode 100644 index 0000000..37bc4b8 --- /dev/null +++ b/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.Designer.cs @@ -0,0 +1,1430 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace GerbilManagerWebAPI.Migrations +{ + [DbContext(typeof(ApplicationContext))] + [Migration("20260606202850_ReseedColorVarietiesAR5")] + partial class ReseedColorVarietiesAR5 + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "10.0.8") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Block", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Data") + .IsRequired() + .HasColumnType("text"); + + b.Property("Order") + .HasColumnType("integer"); + + b.Property("PageId") + .HasColumnType("uuid"); + + b.Property("Type") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("PageId"); + + b.ToTable("Blocks"); + + b.HasData( + new + { + Id = new Guid("51720002-0000-0000-0000-000000000001"), + Data = "{\"text\":\"Startseite\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000001"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000002"), + Data = "{\"text\":\"Über die Zucht\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000002"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000003"), + Data = "{\"text\":\"Abgabetiere\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000003"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000004"), + Data = "{\"text\":\"Abgabebedingungen\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000004"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000005"), + Data = "{\"text\":\"Farben & Genetik\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000005"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000006"), + Data = "{\"text\":\"Kontakt\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000006"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000010"), + Data = "{\"mode\":\"auto\",\"intro\":\"\"}", + Order = 1, + PageId = new Guid("51720001-0000-0000-0000-000000000003"), + Type = "AbgabetiereList" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000007"), + Data = "{\"text\":\"Impressum\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000007"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000070"), + Data = "{\"markdown\":\"**Angaben gemäß § 5 TMG**\\n\\nSeitenbetreiber: [Name und vollständige Adresse eintragen]\\n\\nE-Mail: [E-Mail-Adresse eintragen]\\n\\n---\\n\\n*Diese Seite wird vom Seitenbetreiber noch vervollständigt.*\"}", + Order = 1, + PageId = new Guid("51720001-0000-0000-0000-000000000007"), + Type = "RichText" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000008"), + Data = "{\"text\":\"Datenschutz\",\"level\":1}", + Order = 0, + PageId = new Guid("51720001-0000-0000-0000-000000000008"), + Type = "Heading" + }, + new + { + Id = new Guid("51720002-0000-0000-0000-000000000080"), + Data = "{\"markdown\":\"**Datenschutzerklärung**\\n\\nDiese Webseite dient der Vorstellung unserer Rennmauszucht. Es werden keine personenbezogenen Daten gespeichert oder weitergegeben.\\n\\nBei datenschutzbezogenen Fragen: [E-Mail-Adresse eintragen]\\n\\n---\\n\\n*Diese Seite wird vom Seitenbetreiber noch vervollständigt.*\"}", + Order = 1, + PageId = new Guid("51720001-0000-0000-0000-000000000008"), + Type = "RichText" + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.BreederSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Address") + .IsRequired() + .HasColumnType("text"); + + b.Property("City") + .IsRequired() + .HasColumnType("text"); + + b.Property("Email") + .IsRequired() + .HasColumnType("text"); + + b.Property("Homepage") + .IsRequired() + .HasColumnType("text"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Phone") + .IsRequired() + .HasColumnType("text"); + + b.Property("ZuchtName") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("BreederSettings"); + + b.HasData( + new + { + Id = new Guid("11111111-1111-1111-1111-000000000001"), + Address = "", + City = "", + Email = "", + Homepage = "", + Name = "", + Phone = "", + ZuchtName = "" + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.ColorVariety", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("CanonicalGenotype") + .HasColumnType("text"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .UseCollation("de-x-icu"); + + b.Property("SortOrder") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("ColorVarieties"); + + b.HasData( + new + { + Id = new Guid("00000000-0000-0000-0000-000000000001"), + CanonicalGenotype = "AA chch DD EE GG pp spsp rere", + Name = "Pink Eyed White (PEW)", + SortOrder = 0 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000002"), + CanonicalGenotype = "aa chch DD EE GG PP spsp rere", + Name = "Hermelin", + SortOrder = 1 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000003"), + CanonicalGenotype = "AA chch DD EE GG PP spsp rere", + Name = "Himalaya", + SortOrder = 2 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000004"), + CanonicalGenotype = "aa cchmcchm DD EE gg PP spsp rere", + Name = "Zobel", + SortOrder = 3 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000005"), + CanonicalGenotype = "AA CC DD efef GG pp spsp rere", + Name = "Rotaugenschimmel", + SortOrder = 4 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000006"), + CanonicalGenotype = "AA CC DD EE GG PP spsp rere", + Name = "Agouti", + SortOrder = 5 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000007"), + CanonicalGenotype = "aa CC DD EE GG PP spsp rere", + Name = "Schwarz", + SortOrder = 6 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000008"), + CanonicalGenotype = "AA CC DD EE gg PP spsp rere", + Name = "Silberagouti", + SortOrder = 7 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000009"), + CanonicalGenotype = "aa CC DD EE gg PP spsp rere", + Name = "Anthrazit", + SortOrder = 8 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000010"), + CanonicalGenotype = "AA CC DD ee GG PP spsp rere", + Name = "Algierfuchs", + SortOrder = 9 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000011"), + CanonicalGenotype = "aa CC dd EE GG PP spsp rere", + Name = "Blau", + SortOrder = 10 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000012"), + CanonicalGenotype = "AA CC DD EE GG pp spsp rere", + Name = "Gold", + SortOrder = 11 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000013"), + CanonicalGenotype = "aa CC DD EE GG pp spsp rere", + Name = "Platin", + SortOrder = 12 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000014"), + CanonicalGenotype = "AA CC DD ee GG pp spsp rere", + Name = "Goldfuchs", + SortOrder = 13 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000015"), + CanonicalGenotype = "aa CC DD ee GG pp spsp rere", + Name = "Rotfuchs", + SortOrder = 14 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000016"), + CanonicalGenotype = "AA CC dd EE GG pp spsp rere", + Name = "Dilute Gold", + SortOrder = 15 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000017"), + CanonicalGenotype = "aa CC dd EE GG pp spsp rere", + Name = "Dilute Platin", + SortOrder = 16 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000018"), + CanonicalGenotype = "aa CC DD EE gg pp spsp rere", + Name = "Altweiss (REW)", + SortOrder = 17 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000019"), + CanonicalGenotype = "AA CC DD ee gg pp spsp rere", + Name = "Apricot (Blassfuchs)", + SortOrder = 18 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000020"), + CanonicalGenotype = "aa CC DD ee gg PP spsp rere", + Name = "Blaufuchs", + SortOrder = 19 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000021"), + CanonicalGenotype = "aa CC DD ee gg pp spsp rere", + Name = "C-Separator", + SortOrder = 20 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000022"), + CanonicalGenotype = "AA CC DD EE gg pp spsp rere", + Name = "Elfenbein", + SortOrder = 21 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000023"), + CanonicalGenotype = "aa CC DD ee GG PP spsp rere", + Name = "Kohlfuchs", + SortOrder = 22 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000024"), + CanonicalGenotype = "AA CC DD ee gg PP spsp rere", + Name = "Polarfuchs", + SortOrder = 23 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000025"), + CanonicalGenotype = "aa CC DD EE GG pp spsp rere", + Name = "Saphir", + SortOrder = 24 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000026"), + CanonicalGenotype = "AA CC DD efef GG PP spsp rere", + Name = "Orangeschimmel", + SortOrder = 25 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000027"), + CanonicalGenotype = "AA CC DD EE GG pp spsp rere", + Name = "Topas", + SortOrder = 26 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000028"), + CanonicalGenotype = "aa CC DD EE GG pp spsp rere", + Name = "Platin-Hell", + SortOrder = 27 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000029"), + CanonicalGenotype = "AA CC dd EE GG PP spsp rere", + Name = "Dilute Agouti", + SortOrder = 28 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000030"), + CanonicalGenotype = "AA CC dd EE gg PP spsp rere", + Name = "Dilute Silberagouti", + SortOrder = 29 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000031"), + CanonicalGenotype = "aa CC dd ee GG PP spsp rere", + Name = "Dilute Kohlfuchs", + SortOrder = 30 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000032"), + CanonicalGenotype = "aa CC dd EE gg PP spsp rere", + Name = "Dilute Anthrazit", + SortOrder = 31 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000033"), + CanonicalGenotype = "AA CC DD efef gg PP spsp rere", + Name = "Silberschimmel", + SortOrder = 36 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000034"), + CanonicalGenotype = "AA CC DD efef gg PP spsp rere", + Name = "Polarfuchsschimmel", + SortOrder = 37 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000035"), + CanonicalGenotype = "AA CC DD efef GG PP spsp rere", + Name = "Algierfuchsschimmel", + SortOrder = 38 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000036"), + CanonicalGenotype = "aa CC DD efef GG PP spsp rere", + Name = "Kohlfuchsschimmel", + SortOrder = 39 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000037"), + CanonicalGenotype = "aa CC DD efef gg PP spsp rere", + Name = "Blaufuchsschimmel", + SortOrder = 40 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000038"), + CanonicalGenotype = "aa CC DD ee GG PP spsp rere", + Name = "Kohlfuchs, hell", + SortOrder = 41 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000039"), + CanonicalGenotype = "AA CC DD ee GG pp spsp rere", + Name = "Goldfuchs, hell", + SortOrder = 42 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000040"), + CanonicalGenotype = "AA CC DD efef GG pp spsp rere", + Name = "Goldfuchsschimmel", + SortOrder = 43 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000041"), + CanonicalGenotype = "AA CC DD EE GG pp spsp rere", + Name = "Gold-Hell", + SortOrder = 44 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000042"), + CanonicalGenotype = "aa CC DD ee gg PP spsp rere", + Name = "Blaufuchs, hell", + SortOrder = 45 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000043"), + CanonicalGenotype = "aa CC DD efef GG pp spsp rere", + Name = "Rotfuchsschimmel", + SortOrder = 46 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000044"), + CanonicalGenotype = "AA CC DD ee gg PP spsp rere", + Name = "Polarfuchs, hell", + SortOrder = 47 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000045"), + CanonicalGenotype = "aa CC DD efef GG PP spsp rere", + Name = "Kohlfuchsschimmel, hell", + SortOrder = 48 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000046"), + CanonicalGenotype = "aa CC DD ee GG pp spsp rere", + Name = "Rotfuchs, hell", + SortOrder = 49 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000047"), + CanonicalGenotype = "aa CC DD ee GG PP spsp rere", + Name = "Kohlfuchs-Hell", + SortOrder = 50 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000048"), + CanonicalGenotype = "AA CC DD ee GG PP spsp rere", + Name = "Algierfuchs, hell", + SortOrder = 51 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000049"), + CanonicalGenotype = "AA CC dd EE GG pp spsp rere", + Name = "Dilute Topas", + SortOrder = 52 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000050"), + CanonicalGenotype = "aa CC dd ee gg pp spsp rere", + Name = "Dilute Blaufuchs", + SortOrder = 53 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000051"), + CanonicalGenotype = "aa cchmcchm DD EE GG PP spsp rere", + Name = "Marder", + SortOrder = 54 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000052"), + CanonicalGenotype = "aa cchmch DD EE GG PP spsp rere", + Name = "Siam", + SortOrder = 55 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000053"), + CanonicalGenotype = "aa cchmch DD EE gg PP spsp rere", + Name = "Zobel-Hell", + SortOrder = 56 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000054"), + CanonicalGenotype = "AA cchmcchm DD EE GG PP spsp rere", + Name = "CP-Agouti", + SortOrder = 57 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000055"), + CanonicalGenotype = "AA cchmcchm DD EE gg PP spsp rere", + Name = "CP-Silberagouti", + SortOrder = 59 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000056"), + CanonicalGenotype = "AA cchmcchm DD ee GG PP spsp rere", + Name = "CP-Algierfuchs", + SortOrder = 61 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000057"), + CanonicalGenotype = "AA cchmcchm DD ee gg PP spsp rere", + Name = "CP-Polarfuchs", + SortOrder = 63 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000058"), + CanonicalGenotype = "AA cchmcchm dd ee GG PP spsp rere", + Name = "CP-Fuchs", + SortOrder = 65 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000059"), + CanonicalGenotype = "AA cchmch dd ee GG PP spsp rere", + Name = "CP-Fuchs-Hell", + SortOrder = 66 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000060"), + CanonicalGenotype = "AA cchmcchm dd ee gg PP spsp rere", + Name = "CP-Blaufuchs", + SortOrder = 67 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000061"), + CanonicalGenotype = "AA cchmcchm DD efef GG PP spsp rere", + Name = "CP-Orangeschimmel", + SortOrder = 68 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000062"), + CanonicalGenotype = "AA cchmch DD EE GG PP spsp rere", + Name = "CP-Agouti-Hell", + SortOrder = 58 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000063"), + CanonicalGenotype = "AA cchmch DD EE gg PP spsp rere", + Name = "CP-Silberagouti-Hell", + SortOrder = 60 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000064"), + CanonicalGenotype = "AA cchmch DD ee GG PP spsp rere", + Name = "CP-Algierfuchs-Hell", + SortOrder = 62 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000065"), + CanonicalGenotype = "AA cchmch DD ee gg PP spsp rere", + Name = "CP-Polarfuchs-Hell", + SortOrder = 64 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000066"), + CanonicalGenotype = "AA cchmch DD efef GG PP spsp rere", + Name = "CP-Orangeschimmel-Hell", + SortOrder = 69 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000067"), + CanonicalGenotype = "AA CC dd ee GG PP spsp rere", + Name = "Dilute Algierfuchs", + SortOrder = 32 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000068"), + CanonicalGenotype = "AA CC dd ee GG pp spsp rere", + Name = "Dilute Goldfuchs", + SortOrder = 33 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000069"), + CanonicalGenotype = "aa CC dd ee GG pp spsp rere", + Name = "Dilute Rotfuchs", + SortOrder = 34 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000070"), + CanonicalGenotype = "AA CC dd ee gg PP spsp rere", + Name = "Dilute Polarfuchs", + SortOrder = 35 + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Contact", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Address") + .HasColumnType("text"); + + b.Property("Email") + .HasColumnType("text"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .UseCollation("de-x-icu"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("Phone") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Contacts"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Enclosure", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Enclosures"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Gerbil", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("CauseOfDeath") + .HasColumnType("text"); + + b.Property("CharacterNote") + .HasColumnType("text"); + + b.Property("CharacterTraits") + .IsRequired() + .HasColumnType("text"); + + b.Property("ColorVarietyId") + .HasColumnType("uuid"); + + b.Property("DateOfBirth") + .HasColumnType("date"); + + b.Property("DateOfDeath") + .HasColumnType("date"); + + b.Property("EnclosureId") + .HasColumnType("uuid"); + + b.Property("ExternalRef") + .HasColumnType("text"); + + b.Property("Gender") + .IsRequired() + .HasColumnType("text"); + + b.Property("Genotype") + .HasColumnType("text"); + + b.Property("GoHomeDate") + .HasColumnType("date"); + + b.Property("ImportSource") + .HasColumnType("text"); + + b.Property("IsDeaf") + .HasColumnType("boolean"); + + b.Property("IsResident") + .ValueGeneratedOnAdd() + .HasColumnType("boolean") + .HasDefaultValue(true); + + b.Property("LitterId") + .HasColumnType("uuid"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .UseCollation("de-x-icu"); + + b.Property("NameSearch") + .HasColumnType("text") + .UseCollation("de-x-icu"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("OriginBreeder") + .HasColumnType("text") + .UseCollation("de-x-icu"); + + b.Property("OriginContactId") + .HasColumnType("uuid"); + + b.Property("RawImportData") + .HasColumnType("text"); + + b.Property("ReceiverContactId") + .HasColumnType("uuid"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("ColorVarietyId"); + + b.HasIndex("EnclosureId"); + + b.HasIndex("ExternalRef") + .IsUnique() + .HasFilter("\"ExternalRef\" IS NOT NULL"); + + b.HasIndex("LitterId"); + + b.HasIndex("OriginContactId"); + + b.HasIndex("ReceiverContactId"); + + b.ToTable("Gerbils"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.GerbilPhoto", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Caption") + .HasColumnType("text"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("FileName") + .IsRequired() + .HasColumnType("text"); + + b.Property("GerbilId") + .HasColumnType("uuid"); + + b.Property("SortOrder") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("GerbilId"); + + b.ToTable("GerbilPhotos"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.HealthRecord", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("Date") + .HasColumnType("date"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text"); + + b.Property("GerbilId") + .HasColumnType("uuid"); + + b.Property("Type") + .IsRequired() + .HasColumnType("text"); + + b.Property("Veterinarian") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("GerbilId"); + + b.ToTable("HealthRecords"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Litter", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Date") + .HasColumnType("date"); + + b.Property("ExpectedGoHomeDate") + .HasColumnType("date"); + + b.Property("ExternalRef") + .HasColumnType("text"); + + b.Property("FatherId") + .HasColumnType("uuid"); + + b.Property("LitterLetter") + .HasColumnType("text"); + + b.Property("MotherId") + .HasColumnType("uuid"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("PairingCode") + .HasColumnType("text"); + + b.Property("TotalBorn") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("ExternalRef") + .IsUnique() + .HasFilter("\"ExternalRef\" IS NOT NULL"); + + b.HasIndex("FatherId"); + + b.HasIndex("MotherId"); + + b.ToTable("Litters"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.MailSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("AppPasswordProtected") + .HasColumnType("text"); + + b.Property("BackgroundPollEnabled") + .HasColumnType("boolean"); + + b.Property("Folder") + .IsRequired() + .HasColumnType("text"); + + b.Property("GmailAddress") + .HasColumnType("text"); + + b.Property("LastUid") + .HasColumnType("bigint"); + + b.Property("PollIntervalMinutes") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("MailSettings"); + + b.HasData( + new + { + Id = new Guid("ab0c0000-0000-0000-0000-000000000001"), + BackgroundPollEnabled = false, + Folder = "INBOX", + LastUid = 0L, + PollIntervalMinutes = 15 + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Media", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Alt") + .HasColumnType("text"); + + b.Property("FileName") + .IsRequired() + .HasColumnType("text"); + + b.Property("Height") + .HasColumnType("integer"); + + b.Property("Url") + .IsRequired() + .HasColumnType("text"); + + b.Property("Width") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.ToTable("Media"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Page", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("SeoDescription") + .HasColumnType("text"); + + b.Property("Slug") + .IsRequired() + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("Title") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("Slug") + .IsUnique(); + + b.ToTable("Pages"); + + b.HasData( + new + { + Id = new Guid("51720001-0000-0000-0000-000000000001"), + Slug = "start", + Status = "Published", + Title = "Startseite" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000002"), + Slug = "ueber-die-zucht", + Status = "Published", + Title = "Über die Zucht" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000003"), + Slug = "abgabetiere", + Status = "Published", + Title = "Abgabetiere" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000004"), + Slug = "abgabebedingungen", + Status = "Published", + Title = "Abgabebedingungen" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000005"), + Slug = "farben-genetik", + Status = "Published", + Title = "Farben & Genetik" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000006"), + Slug = "kontakt", + Status = "Published", + Title = "Kontakt" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000007"), + Slug = "impressum", + Status = "Published", + Title = "Impressum" + }, + new + { + Id = new Guid("51720001-0000-0000-0000-000000000008"), + Slug = "datenschutz", + Status = "Published", + Title = "Datenschutz" + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Request", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("AnsweredAt") + .HasColumnType("timestamp with time zone"); + + b.Property("AssignedContactId") + .HasColumnType("uuid"); + + b.Property("BodyText") + .HasColumnType("text"); + + b.Property("DraftReply") + .HasColumnType("text"); + + b.Property("FromAddress") + .IsRequired() + .HasColumnType("text"); + + b.Property("FromName") + .HasColumnType("text"); + + b.Property("GmailMessageId") + .IsRequired() + .HasColumnType("text"); + + b.Property("InReplyToMessageId") + .HasColumnType("text"); + + b.Property("ReceivedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("ReferencesHeader") + .HasColumnType("text"); + + b.Property("Status") + .IsRequired() + .HasColumnType("text"); + + b.Property("Subject") + .HasColumnType("text"); + + b.Property("ThreadId") + .HasColumnType("text"); + + b.HasKey("Id"); + + b.HasIndex("AssignedContactId"); + + b.HasIndex("GmailMessageId") + .IsUnique(); + + b.ToTable("Requests"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.SaleContract", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("ContactId") + .HasColumnType("uuid"); + + b.Property("ContractDate") + .HasColumnType("date"); + + b.Property("CreatedAt") + .HasColumnType("timestamp with time zone"); + + b.Property("FileName") + .IsRequired() + .HasColumnType("text"); + + b.Property("HandoverDate") + .HasColumnType("date"); + + b.Property("Price") + .HasPrecision(10, 2) + .HasColumnType("numeric(10,2)"); + + b.HasKey("Id"); + + b.HasIndex("ContactId"); + + b.ToTable("SaleContracts"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.SaleContractAnimal", b => + { + b.Property("SaleContractId") + .HasColumnType("uuid"); + + b.Property("GerbilId") + .HasColumnType("uuid"); + + b.HasKey("SaleContractId", "GerbilId"); + + b.HasIndex("GerbilId"); + + b.ToTable("SaleContractAnimal"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Site", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("DefaultLocale") + .IsRequired() + .HasColumnType("text"); + + b.Property("NavOrder") + .IsRequired() + .HasColumnType("text"); + + b.HasKey("Id"); + + b.ToTable("Sites"); + + b.HasData( + new + { + Id = new Guid("5172e000-0000-0000-0000-000000000001"), + DefaultLocale = "de", + NavOrder = "[\"51720001-0000-0000-0000-000000000001\",\"51720001-0000-0000-0000-000000000002\",\"51720001-0000-0000-0000-000000000003\",\"51720001-0000-0000-0000-000000000004\",\"51720001-0000-0000-0000-000000000005\",\"51720001-0000-0000-0000-000000000006\"]" + }); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.WeightRecord", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uuid"); + + b.Property("Date") + .HasColumnType("date"); + + b.Property("GerbilId") + .HasColumnType("uuid"); + + b.Property("Notes") + .HasColumnType("text"); + + b.Property("WeightGrams") + .HasColumnType("integer"); + + b.HasKey("Id"); + + b.HasIndex("GerbilId"); + + b.ToTable("WeightRecords"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Block", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Page", null) + .WithMany("Blocks") + .HasForeignKey("PageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Gerbil", b => + { + b.HasOne("GerbilManagerWebAPI.Models.ColorVariety", "ColorVariety") + .WithMany() + .HasForeignKey("ColorVarietyId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("GerbilManagerWebAPI.Models.Enclosure", "Enclosure") + .WithMany("Gerbils") + .HasForeignKey("EnclosureId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("GerbilManagerWebAPI.Models.Litter", "Litter") + .WithMany() + .HasForeignKey("LitterId") + .OnDelete(DeleteBehavior.SetNull); + + b.HasOne("GerbilManagerWebAPI.Models.Contact", "OriginContact") + .WithMany() + .HasForeignKey("OriginContactId") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("GerbilManagerWebAPI.Models.Contact", "ReceiverContact") + .WithMany() + .HasForeignKey("ReceiverContactId") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("ColorVariety"); + + b.Navigation("Enclosure"); + + b.Navigation("Litter"); + + b.Navigation("OriginContact"); + + b.Navigation("ReceiverContact"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.GerbilPhoto", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", null) + .WithMany() + .HasForeignKey("GerbilId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.HealthRecord", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", null) + .WithMany() + .HasForeignKey("GerbilId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Litter", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", "Father") + .WithMany() + .HasForeignKey("FatherId") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", "Mother") + .WithMany() + .HasForeignKey("MotherId") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("Father"); + + b.Navigation("Mother"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Request", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Contact", "AssignedContact") + .WithMany() + .HasForeignKey("AssignedContactId") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("AssignedContact"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.SaleContract", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Contact", "Contact") + .WithMany() + .HasForeignKey("ContactId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("Contact"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.SaleContractAnimal", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", "Gerbil") + .WithMany() + .HasForeignKey("GerbilId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("GerbilManagerWebAPI.Models.SaleContract", null) + .WithMany("Animals") + .HasForeignKey("SaleContractId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Gerbil"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.WeightRecord", b => + { + b.HasOne("GerbilManagerWebAPI.Models.Gerbil", null) + .WithMany() + .HasForeignKey("GerbilId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Enclosure", b => + { + b.Navigation("Gerbils"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.Page", b => + { + b.Navigation("Blocks"); + }); + + modelBuilder.Entity("GerbilManagerWebAPI.Models.SaleContract", b => + { + b.Navigation("Animals"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.cs b/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.cs new file mode 100644 index 0000000..c0dc9c5 --- /dev/null +++ b/GerbilManagerWebAPI/Migrations/20260606202850_ReseedColorVarietiesAR5.cs @@ -0,0 +1,598 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional + +namespace GerbilManagerWebAPI.Migrations +{ + /// + public partial class ReseedColorVarietiesAR5 : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000016"), + column: "Name", + value: "Dilute Gold"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000017"), + column: "Name", + value: "Dilute Platin"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000029"), + column: "Name", + value: "Dilute Agouti"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000030"), + column: "Name", + value: "Dilute Silberagouti"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000031"), + column: "Name", + value: "Dilute Kohlfuchs"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000032"), + column: "Name", + value: "Dilute Anthrazit"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000033"), + column: "SortOrder", + value: 36); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000034"), + column: "SortOrder", + value: 37); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000035"), + column: "SortOrder", + value: 38); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000036"), + column: "SortOrder", + value: 39); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000037"), + column: "SortOrder", + value: 40); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000038"), + column: "SortOrder", + value: 41); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000039"), + column: "SortOrder", + value: 42); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000040"), + column: "SortOrder", + value: 43); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000041"), + column: "SortOrder", + value: 44); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000042"), + column: "SortOrder", + value: 45); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000043"), + column: "SortOrder", + value: 46); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000044"), + column: "SortOrder", + value: 47); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000045"), + column: "SortOrder", + value: 48); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000046"), + column: "SortOrder", + value: 49); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000047"), + column: "SortOrder", + value: 50); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000048"), + column: "SortOrder", + value: 51); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000049"), + columns: new[] { "Name", "SortOrder" }, + values: new object[] { "Dilute Topas", 52 }); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000050"), + columns: new[] { "Name", "SortOrder" }, + values: new object[] { "Dilute Blaufuchs", 53 }); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000051"), + column: "SortOrder", + value: 54); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000052"), + column: "SortOrder", + value: 55); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000053"), + column: "SortOrder", + value: 56); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000054"), + column: "SortOrder", + value: 57); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000055"), + column: "SortOrder", + value: 59); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000056"), + column: "SortOrder", + value: 61); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000057"), + column: "SortOrder", + value: 63); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000058"), + column: "SortOrder", + value: 65); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000059"), + column: "SortOrder", + value: 66); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000060"), + column: "SortOrder", + value: 67); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000061"), + column: "SortOrder", + value: 68); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000062"), + column: "SortOrder", + value: 58); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000063"), + column: "SortOrder", + value: 60); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000064"), + column: "SortOrder", + value: 62); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000066"), + column: "SortOrder", + value: 69); + + migrationBuilder.InsertData( + table: "ColorVarieties", + columns: new[] { "Id", "CanonicalGenotype", "Name", "SortOrder" }, + values: new object[,] + { + { new Guid("00000000-0000-0000-0000-000000000067"), "AA CC dd ee GG PP spsp rere", "Dilute Algierfuchs", 32 }, + { new Guid("00000000-0000-0000-0000-000000000068"), "AA CC dd ee GG pp spsp rere", "Dilute Goldfuchs", 33 }, + { new Guid("00000000-0000-0000-0000-000000000069"), "aa CC dd ee GG pp spsp rere", "Dilute Rotfuchs", 34 }, + { new Guid("00000000-0000-0000-0000-000000000070"), "AA CC dd ee gg PP spsp rere", "Dilute Polarfuchs", 35 } + }); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DeleteData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000067")); + + migrationBuilder.DeleteData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000068")); + + migrationBuilder.DeleteData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000069")); + + migrationBuilder.DeleteData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000070")); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000016"), + column: "Name", + value: "dd Gold"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000017"), + column: "Name", + value: "dd Platin"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000029"), + column: "Name", + value: "Agouti dd"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000030"), + column: "Name", + value: "Silberagouti dd"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000031"), + column: "Name", + value: "Kohlfuchs dd"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000032"), + column: "Name", + value: "Anthrazit dd"); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000033"), + column: "SortOrder", + value: 32); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000034"), + column: "SortOrder", + value: 33); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000035"), + column: "SortOrder", + value: 34); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000036"), + column: "SortOrder", + value: 35); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000037"), + column: "SortOrder", + value: 36); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000038"), + column: "SortOrder", + value: 37); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000039"), + column: "SortOrder", + value: 38); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000040"), + column: "SortOrder", + value: 39); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000041"), + column: "SortOrder", + value: 40); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000042"), + column: "SortOrder", + value: 41); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000043"), + column: "SortOrder", + value: 42); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000044"), + column: "SortOrder", + value: 43); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000045"), + column: "SortOrder", + value: 44); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000046"), + column: "SortOrder", + value: 45); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000047"), + column: "SortOrder", + value: 46); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000048"), + column: "SortOrder", + value: 47); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000049"), + columns: new[] { "Name", "SortOrder" }, + values: new object[] { "Topas dd", 48 }); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000050"), + columns: new[] { "Name", "SortOrder" }, + values: new object[] { "Blaufuchs dd", 49 }); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000051"), + column: "SortOrder", + value: 50); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000052"), + column: "SortOrder", + value: 51); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000053"), + column: "SortOrder", + value: 52); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000054"), + column: "SortOrder", + value: 53); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000055"), + column: "SortOrder", + value: 54); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000056"), + column: "SortOrder", + value: 55); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000057"), + column: "SortOrder", + value: 56); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000058"), + column: "SortOrder", + value: 57); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000059"), + column: "SortOrder", + value: 58); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000060"), + column: "SortOrder", + value: 59); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000061"), + column: "SortOrder", + value: 60); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000062"), + column: "SortOrder", + value: 61); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000063"), + column: "SortOrder", + value: 62); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000064"), + column: "SortOrder", + value: 63); + + migrationBuilder.UpdateData( + table: "ColorVarieties", + keyColumn: "Id", + keyValue: new Guid("00000000-0000-0000-0000-000000000066"), + column: "SortOrder", + value: 65); + } + } +} diff --git a/GerbilManagerWebAPI/Migrations/ApplicationContextModelSnapshot.cs b/GerbilManagerWebAPI/Migrations/ApplicationContextModelSnapshot.cs index 2e52a23..ae74e7d 100644 --- a/GerbilManagerWebAPI/Migrations/ApplicationContextModelSnapshot.cs +++ b/GerbilManagerWebAPI/Migrations/ApplicationContextModelSnapshot.cs @@ -321,14 +321,14 @@ namespace GerbilManagerWebAPI.Migrations { Id = new Guid("00000000-0000-0000-0000-000000000016"), CanonicalGenotype = "AA CC dd EE GG pp spsp rere", - Name = "dd Gold", + Name = "Dilute Gold", SortOrder = 15 }, new { Id = new Guid("00000000-0000-0000-0000-000000000017"), CanonicalGenotype = "aa CC dd EE GG pp spsp rere", - Name = "dd Platin", + Name = "Dilute Platin", SortOrder = 16 }, new @@ -412,28 +412,28 @@ namespace GerbilManagerWebAPI.Migrations { Id = new Guid("00000000-0000-0000-0000-000000000029"), CanonicalGenotype = "AA CC dd EE GG PP spsp rere", - Name = "Agouti dd", + Name = "Dilute Agouti", SortOrder = 28 }, new { Id = new Guid("00000000-0000-0000-0000-000000000030"), CanonicalGenotype = "AA CC dd EE gg PP spsp rere", - Name = "Silberagouti dd", + Name = "Dilute Silberagouti", SortOrder = 29 }, new { Id = new Guid("00000000-0000-0000-0000-000000000031"), CanonicalGenotype = "aa CC dd ee GG PP spsp rere", - Name = "Kohlfuchs dd", + Name = "Dilute Kohlfuchs", SortOrder = 30 }, new { Id = new Guid("00000000-0000-0000-0000-000000000032"), CanonicalGenotype = "aa CC dd EE gg PP spsp rere", - Name = "Anthrazit dd", + Name = "Dilute Anthrazit", SortOrder = 31 }, new @@ -441,224 +441,224 @@ namespace GerbilManagerWebAPI.Migrations Id = new Guid("00000000-0000-0000-0000-000000000033"), CanonicalGenotype = "AA CC DD efef gg PP spsp rere", Name = "Silberschimmel", - SortOrder = 32 + SortOrder = 36 }, new { Id = new Guid("00000000-0000-0000-0000-000000000034"), CanonicalGenotype = "AA CC DD efef gg PP spsp rere", Name = "Polarfuchsschimmel", - SortOrder = 33 + SortOrder = 37 }, new { Id = new Guid("00000000-0000-0000-0000-000000000035"), CanonicalGenotype = "AA CC DD efef GG PP spsp rere", Name = "Algierfuchsschimmel", - SortOrder = 34 + SortOrder = 38 }, new { Id = new Guid("00000000-0000-0000-0000-000000000036"), CanonicalGenotype = "aa CC DD efef GG PP spsp rere", Name = "Kohlfuchsschimmel", - SortOrder = 35 + SortOrder = 39 }, new { Id = new Guid("00000000-0000-0000-0000-000000000037"), CanonicalGenotype = "aa CC DD efef gg PP spsp rere", Name = "Blaufuchsschimmel", - SortOrder = 36 + SortOrder = 40 }, new { Id = new Guid("00000000-0000-0000-0000-000000000038"), CanonicalGenotype = "aa CC DD ee GG PP spsp rere", Name = "Kohlfuchs, hell", - SortOrder = 37 + SortOrder = 41 }, new { Id = new Guid("00000000-0000-0000-0000-000000000039"), CanonicalGenotype = "AA CC DD ee GG pp spsp rere", Name = "Goldfuchs, hell", - SortOrder = 38 + SortOrder = 42 }, new { Id = new Guid("00000000-0000-0000-0000-000000000040"), CanonicalGenotype = "AA CC DD efef GG pp spsp rere", Name = "Goldfuchsschimmel", - SortOrder = 39 + SortOrder = 43 }, new { Id = new Guid("00000000-0000-0000-0000-000000000041"), CanonicalGenotype = "AA CC DD EE GG pp spsp rere", Name = "Gold-Hell", - SortOrder = 40 + SortOrder = 44 }, new { Id = new Guid("00000000-0000-0000-0000-000000000042"), CanonicalGenotype = "aa CC DD ee gg PP spsp rere", Name = "Blaufuchs, hell", - SortOrder = 41 + SortOrder = 45 }, new { Id = new Guid("00000000-0000-0000-0000-000000000043"), CanonicalGenotype = "aa CC DD efef GG pp spsp rere", Name = "Rotfuchsschimmel", - SortOrder = 42 + SortOrder = 46 }, new { Id = new Guid("00000000-0000-0000-0000-000000000044"), CanonicalGenotype = "AA CC DD ee gg PP spsp rere", Name = "Polarfuchs, hell", - SortOrder = 43 + SortOrder = 47 }, new { Id = new Guid("00000000-0000-0000-0000-000000000045"), CanonicalGenotype = "aa CC DD efef GG PP spsp rere", Name = "Kohlfuchsschimmel, hell", - SortOrder = 44 + SortOrder = 48 }, new { Id = new Guid("00000000-0000-0000-0000-000000000046"), CanonicalGenotype = "aa CC DD ee GG pp spsp rere", Name = "Rotfuchs, hell", - SortOrder = 45 + SortOrder = 49 }, new { Id = new Guid("00000000-0000-0000-0000-000000000047"), CanonicalGenotype = "aa CC DD ee GG PP spsp rere", Name = "Kohlfuchs-Hell", - SortOrder = 46 + SortOrder = 50 }, new { Id = new Guid("00000000-0000-0000-0000-000000000048"), CanonicalGenotype = "AA CC DD ee GG PP spsp rere", Name = "Algierfuchs, hell", - SortOrder = 47 + SortOrder = 51 }, new { Id = new Guid("00000000-0000-0000-0000-000000000049"), CanonicalGenotype = "AA CC dd EE GG pp spsp rere", - Name = "Topas dd", - SortOrder = 48 + Name = "Dilute Topas", + SortOrder = 52 }, new { Id = new Guid("00000000-0000-0000-0000-000000000050"), CanonicalGenotype = "aa CC dd ee gg pp spsp rere", - Name = "Blaufuchs dd", - SortOrder = 49 + Name = "Dilute Blaufuchs", + SortOrder = 53 }, new { Id = new Guid("00000000-0000-0000-0000-000000000051"), CanonicalGenotype = "aa cchmcchm DD EE GG PP spsp rere", Name = "Marder", - SortOrder = 50 + SortOrder = 54 }, new { Id = new Guid("00000000-0000-0000-0000-000000000052"), CanonicalGenotype = "aa cchmch DD EE GG PP spsp rere", Name = "Siam", - SortOrder = 51 + SortOrder = 55 }, new { Id = new Guid("00000000-0000-0000-0000-000000000053"), CanonicalGenotype = "aa cchmch DD EE gg PP spsp rere", Name = "Zobel-Hell", - SortOrder = 52 + SortOrder = 56 }, new { Id = new Guid("00000000-0000-0000-0000-000000000054"), CanonicalGenotype = "AA cchmcchm DD EE GG PP spsp rere", Name = "CP-Agouti", - SortOrder = 53 + SortOrder = 57 }, new { Id = new Guid("00000000-0000-0000-0000-000000000055"), CanonicalGenotype = "AA cchmcchm DD EE gg PP spsp rere", Name = "CP-Silberagouti", - SortOrder = 54 + SortOrder = 59 }, new { Id = new Guid("00000000-0000-0000-0000-000000000056"), CanonicalGenotype = "AA cchmcchm DD ee GG PP spsp rere", Name = "CP-Algierfuchs", - SortOrder = 55 + SortOrder = 61 }, new { Id = new Guid("00000000-0000-0000-0000-000000000057"), CanonicalGenotype = "AA cchmcchm DD ee gg PP spsp rere", Name = "CP-Polarfuchs", - SortOrder = 56 + SortOrder = 63 }, new { Id = new Guid("00000000-0000-0000-0000-000000000058"), CanonicalGenotype = "AA cchmcchm dd ee GG PP spsp rere", Name = "CP-Fuchs", - SortOrder = 57 + SortOrder = 65 }, new { Id = new Guid("00000000-0000-0000-0000-000000000059"), CanonicalGenotype = "AA cchmch dd ee GG PP spsp rere", Name = "CP-Fuchs-Hell", - SortOrder = 58 + SortOrder = 66 }, new { Id = new Guid("00000000-0000-0000-0000-000000000060"), CanonicalGenotype = "AA cchmcchm dd ee gg PP spsp rere", Name = "CP-Blaufuchs", - SortOrder = 59 + SortOrder = 67 }, new { Id = new Guid("00000000-0000-0000-0000-000000000061"), CanonicalGenotype = "AA cchmcchm DD efef GG PP spsp rere", Name = "CP-Orangeschimmel", - SortOrder = 60 + SortOrder = 68 }, new { Id = new Guid("00000000-0000-0000-0000-000000000062"), CanonicalGenotype = "AA cchmch DD EE GG PP spsp rere", Name = "CP-Agouti-Hell", - SortOrder = 61 + SortOrder = 58 }, new { Id = new Guid("00000000-0000-0000-0000-000000000063"), CanonicalGenotype = "AA cchmch DD EE gg PP spsp rere", Name = "CP-Silberagouti-Hell", - SortOrder = 62 + SortOrder = 60 }, new { Id = new Guid("00000000-0000-0000-0000-000000000064"), CanonicalGenotype = "AA cchmch DD ee GG PP spsp rere", Name = "CP-Algierfuchs-Hell", - SortOrder = 63 + SortOrder = 62 }, new { @@ -672,7 +672,35 @@ namespace GerbilManagerWebAPI.Migrations Id = new Guid("00000000-0000-0000-0000-000000000066"), CanonicalGenotype = "AA cchmch DD efef GG PP spsp rere", Name = "CP-Orangeschimmel-Hell", - SortOrder = 65 + SortOrder = 69 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000067"), + CanonicalGenotype = "AA CC dd ee GG PP spsp rere", + Name = "Dilute Algierfuchs", + SortOrder = 32 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000068"), + CanonicalGenotype = "AA CC dd ee GG pp spsp rere", + Name = "Dilute Goldfuchs", + SortOrder = 33 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000069"), + CanonicalGenotype = "aa CC dd ee GG pp spsp rere", + Name = "Dilute Rotfuchs", + SortOrder = 34 + }, + new + { + Id = new Guid("00000000-0000-0000-0000-000000000070"), + CanonicalGenotype = "AA CC dd ee gg PP spsp rere", + Name = "Dilute Polarfuchs", + SortOrder = 35 }); });