// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Modules.User.Database.Database; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace Modules.User.Database.Migrations { [DbContext(typeof(UserDbContext))] [Migration("20241101174734_Init")] partial class Init { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.10") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("Modules.User.Database.Database.Entities.Account", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("CreationDate") .ValueGeneratedOnAdd() .HasColumnType("timestamp with time zone") .HasDefaultValueSql("now()"); b.Property("Deleted") .HasColumnType("boolean"); b.Property("Email") .IsRequired() .HasMaxLength(128) .HasColumnType("character varying(128)"); b.Property("HashedPassword") .IsRequired() .HasColumnType("text"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("UserId") .IsUnique(); b.ToTable("Accounts"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.Session", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("AccountId") .HasColumnType("uuid"); b.Property("ExpiredDate") .ValueGeneratedOnAdd() .HasColumnType("timestamp with time zone") .HasDefaultValueSql("'0001-01-01 00:00:00+00'"); b.Property("LastUpdate") .ValueGeneratedOnAddOrUpdate() .HasColumnType("timestamp with time zone") .HasDefaultValueSql("now()"); b.Property("RefreshToken") .IsRequired() .HasMaxLength(172) .HasColumnType("character varying(172)"); b.HasKey("Id"); b.HasIndex("AccountId"); b.ToTable("Sessions"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("AvatarId") .HasColumnType("uuid"); b.Property("Deleted") .HasColumnType("boolean"); b.Property("FirstName") .HasMaxLength(32) .HasColumnType("character varying(32)"); b.Property("LastName") .HasMaxLength(128) .HasColumnType("character varying(128)"); b.Property("NickName") .IsRequired() .HasMaxLength(32) .HasColumnType("character varying(32)"); b.Property("Patronymic") .HasMaxLength(64) .HasColumnType("character varying(64)"); b.HasKey("Id"); b.ToTable("Users"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.Account", b => { b.HasOne("Modules.User.Database.Database.Entities.User", "User") .WithOne("Account") .HasForeignKey("Modules.User.Database.Database.Entities.Account", "UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.Session", b => { b.HasOne("Modules.User.Database.Database.Entities.Account", null) .WithMany("Sessions") .HasForeignKey("AccountId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.OwnsOne("Modules.User.Database.Database.Entities.ClientInfo", "ClientInfo", b1 => { b1.Property("SessionId") .HasColumnType("uuid"); b1.Property("Country") .HasMaxLength(96) .HasColumnType("character varying(96)"); b1.Property("Region") .HasMaxLength(128) .HasColumnType("character varying(128)"); b1.Property("UserAgent") .HasMaxLength(256) .HasColumnType("character varying(256)"); b1.HasKey("SessionId"); b1.ToTable("Sessions"); b1.WithOwner() .HasForeignKey("SessionId"); }); b.Navigation("ClientInfo") .IsRequired(); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.User", b => { b.OwnsOne("Modules.User.Database.Database.Entities.RegionalSettings", "RegionalSettings", b1 => { b1.Property("UserId") .HasColumnType("uuid"); b1.Property("LanguageId") .HasColumnType("uuid"); b1.HasKey("UserId"); b1.ToTable("Users"); b1.WithOwner() .HasForeignKey("UserId"); }); b.Navigation("RegionalSettings"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.Account", b => { b.Navigation("Sessions"); }); modelBuilder.Entity("Modules.User.Database.Database.Entities.User", b => { b.Navigation("Account") .IsRequired(); }); #pragma warning restore 612, 618 } } }