// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; using WorkClub.Infrastructure.Data; #nullable disable namespace WorkClub.Infrastructure.Migrations { [DbContext(typeof(AppDbContext))] partial class AppDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "10.0.3") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("WorkClub.Domain.Entities.Club", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); b.Property("Description") .HasMaxLength(2000) .HasColumnType("character varying(2000)"); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("SportType") .HasColumnType("integer"); b.Property("TenantId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("TenantId") .HasDatabaseName("ix_clubs_tenant_id"); b.ToTable("clubs", (string)null); }); modelBuilder.Entity("WorkClub.Domain.Entities.Member", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("ClubId") .HasColumnType("uuid"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); b.Property("DisplayName") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("Email") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("ExternalUserId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("Role") .HasColumnType("integer"); b.Property("TenantId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("ClubId") .HasDatabaseName("ix_members_club_id"); b.HasIndex("TenantId") .HasDatabaseName("ix_members_tenant_id"); b.HasIndex("TenantId", "ExternalUserId") .HasDatabaseName("ix_members_tenant_external_user"); b.ToTable("members", (string)null); }); modelBuilder.Entity("WorkClub.Domain.Entities.Shift", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("Capacity") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasDefaultValue(1); b.Property("ClubId") .HasColumnType("uuid"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); b.Property("CreatedById") .HasColumnType("uuid"); b.Property("Description") .HasMaxLength(2000) .HasColumnType("character varying(2000)"); b.Property("EndTime") .HasColumnType("timestamp with time zone"); b.Property("Location") .HasMaxLength(500) .HasColumnType("character varying(500)"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("xid") .HasColumnName("xmin"); b.Property("StartTime") .HasColumnType("timestamp with time zone"); b.Property("TenantId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("Title") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("ClubId") .HasDatabaseName("ix_shifts_club_id"); b.HasIndex("StartTime") .HasDatabaseName("ix_shifts_start_time"); b.HasIndex("TenantId") .HasDatabaseName("ix_shifts_tenant_id"); b.ToTable("shifts", (string)null); }); modelBuilder.Entity("WorkClub.Domain.Entities.ShiftSignup", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("MemberId") .HasColumnType("uuid"); b.Property("ShiftId") .HasColumnType("uuid"); b.Property("SignedUpAt") .HasColumnType("timestamp with time zone"); b.Property("TenantId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.HasKey("Id"); b.HasIndex("ShiftId") .HasDatabaseName("ix_shift_signups_shift_id"); b.HasIndex("TenantId") .HasDatabaseName("ix_shift_signups_tenant_id"); b.HasIndex("ShiftId", "MemberId") .IsUnique() .HasDatabaseName("ix_shift_signups_shift_member"); b.ToTable("shift_signups", (string)null); }); modelBuilder.Entity("WorkClub.Domain.Entities.WorkItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("AssigneeId") .HasColumnType("uuid"); b.Property("ClubId") .HasColumnType("uuid"); b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); b.Property("CreatedById") .HasColumnType("uuid"); b.Property("Description") .HasMaxLength(2000) .HasColumnType("character varying(2000)"); b.Property("DueDate") .HasColumnType("timestamp with time zone"); b.Property("RowVersion") .IsConcurrencyToken() .ValueGeneratedOnAddOrUpdate() .HasColumnType("xid") .HasColumnName("xmin"); b.Property("Status") .HasColumnType("integer"); b.Property("TenantId") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("Title") .IsRequired() .HasMaxLength(200) .HasColumnType("character varying(200)"); b.Property("UpdatedAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("AssigneeId") .HasDatabaseName("ix_work_items_assignee_id"); b.HasIndex("ClubId") .HasDatabaseName("ix_work_items_club_id"); b.HasIndex("Status") .HasDatabaseName("ix_work_items_status"); b.HasIndex("TenantId") .HasDatabaseName("ix_work_items_tenant_id"); b.ToTable("work_items", (string)null); }); #pragma warning restore 612, 618 } } }