// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using gswi.Data; namespace gswi.Data.Migrations { [DbContext(typeof(DatabaseContext))] [Migration("20210220140309_2021_03_14")] partial class _2021_03_14 { protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "3.1.9") .HasAnnotation("Relational:MaxIdentifierLength", 64); modelBuilder.Entity("gswi.Model.AuthUser", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("AuthRole") .HasColumnType("int"); b.Property("ConfirmationId") .HasColumnType("varchar(255) CHARACTER SET utf8mb4"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("EMail") .HasColumnType("varchar(255) CHARACTER SET utf8mb4"); b.Property("FirstName") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("ForgotPasswordId") .HasColumnType("varchar(255) CHARACTER SET utf8mb4"); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("LastName") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("Password") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("RefreshToken") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("RefreshTokenExpiryTime") .HasColumnType("datetime(6)"); b.HasKey("Id"); b.HasIndex("ConfirmationId") .IsUnique(); b.HasIndex("EMail") .IsUnique(); b.HasIndex("ForgotPasswordId") .IsUnique(); b.ToTable("AuthUsers"); }); modelBuilder.Entity("gswi.Model.Domain", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("Name") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("NotifyWhenLogin") .HasColumnType("tinyint(1)"); b.HasKey("Id"); b.ToTable("Domains"); }); modelBuilder.Entity("gswi.Model.Host", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("DomainId") .HasColumnType("bigint"); b.Property("IPAddress") .HasColumnType("varbinary(1400)") .HasMaxLength(1400); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("Name") .HasColumnType("varchar(255) CHARACTER SET utf8mb4"); b.Property("NotifyWhenLogin") .HasColumnType("tinyint(1)"); b.Property("OSId") .HasColumnType("bigint"); b.HasKey("Id"); b.HasIndex("DomainId"); b.HasIndex("OSId"); b.HasIndex("DomainId", "Name") .IsUnique(); b.HasIndex("IPAddress", "Name") .IsUnique(); b.ToTable("Hosts"); }); modelBuilder.Entity("gswi.Model.Login", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("HostId") .HasColumnType("bigint"); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("Time") .HasColumnType("datetime(6)"); b.Property("UserId") .HasColumnType("bigint"); b.HasKey("Id"); b.HasIndex("HostId"); b.HasIndex("UserId"); b.ToTable("Logins"); }); modelBuilder.Entity("gswi.Model.OperatingSystem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("Name") .HasColumnType("varchar(255) CHARACTER SET utf8mb4"); b.HasKey("Id"); b.HasIndex("Name") .IsUnique(); b.ToTable("OperatingSystems"); }); modelBuilder.Entity("gswi.Model.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); b.Property("CreatedOn") .HasColumnType("datetime(6)"); b.Property("Discriminator") .IsRequired() .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("LastModifiedOn") .HasColumnType("datetime(6)"); b.Property("Name") .HasColumnType("longtext CHARACTER SET utf8mb4"); b.Property("NotifyWhenLogin") .HasColumnType("tinyint(1)"); b.HasKey("Id"); b.ToTable("Users"); b.HasDiscriminator("Discriminator").HasValue("User"); }); modelBuilder.Entity("gswi.Model.DomainUser", b => { b.HasBaseType("gswi.Model.User"); b.Property("DomainId") .HasColumnType("bigint"); b.HasIndex("DomainId"); b.HasDiscriminator().HasValue("DomainUser"); }); modelBuilder.Entity("gswi.Model.HostUser", b => { b.HasBaseType("gswi.Model.User"); b.Property("HostId") .HasColumnType("bigint"); b.HasIndex("HostId"); b.HasDiscriminator().HasValue("HostUser"); }); modelBuilder.Entity("gswi.Model.Host", b => { b.HasOne("gswi.Model.Domain", "Domain") .WithMany("Hosts") .HasForeignKey("DomainId"); b.HasOne("gswi.Model.OperatingSystem", "OS") .WithMany() .HasForeignKey("OSId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("gswi.Model.Login", b => { b.HasOne("gswi.Model.Host", "Host") .WithMany("Logins") .HasForeignKey("HostId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("gswi.Model.User", "User") .WithMany("Logins") .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("gswi.Model.DomainUser", b => { b.HasOne("gswi.Model.Domain", "Domain") .WithMany("Users") .HasForeignKey("DomainId"); }); modelBuilder.Entity("gswi.Model.HostUser", b => { b.HasOne("gswi.Model.Host", "Host") .WithMany("Users") .HasForeignKey("HostId"); }); #pragma warning restore 612, 618 } } }