// using System; using Infrastructure.Database; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace Infrastructure.Migrations { [DbContext(typeof(DatabaseContext))] [Migration("20251005135608_PendingChanges")] partial class PendingChanges { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "9.0.2") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("Domains.ApplicantDomain.Applicant", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("BirthDate") .HasColumnType("timestamp without time zone"); b.Property("Citizenship") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b.Property("CitizenshipByBirth") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b.Property("CityOfBirth") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b.Property("CountryOfBirth") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b.Property("Gender") .HasColumnType("integer"); b.Property("IsNonResident") .HasColumnType("boolean"); b.Property("JobTitle") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b.Property("MaritalStatus") .HasColumnType("integer"); b.Property("PlaceOfWorkId") .HasColumnType("uuid"); b.Property("UserId") .HasColumnType("uuid"); b.HasKey("Id"); b.HasIndex("PlaceOfWorkId"); b.HasIndex("UserId") .IsUnique(); b.ToTable("Applicant"); }); modelBuilder.Entity("Domains.ApplicantDomain.PlaceOfWork", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("Name") .IsRequired() .HasMaxLength(200) .IsUnicode(false) .HasColumnType("character varying(200)"); b.Property("PhoneNum") .IsRequired() .HasMaxLength(13) .IsUnicode(false) .HasColumnType("character varying(13)"); b.HasKey("Id"); b.ToTable("PlaceOfWork"); }); modelBuilder.Entity("Domains.Users.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("Email") .IsRequired() .HasMaxLength(254) .IsUnicode(false) .HasColumnType("character varying(254)"); b.Property("Password") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b.Property("Role") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("Email") .IsUnique(); b.ToTable("User"); }); modelBuilder.Entity("Domains.VisaApplicationDomain.VisaApplication", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid"); b.Property("ApplicantId") .HasColumnType("uuid"); b.Property("DestinationCountry") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b.Property("ForGroup") .HasColumnType("boolean"); b.Property("RequestDate") .HasColumnType("timestamp without time zone"); b.Property("RequestedNumberOfEntries") .HasColumnType("integer"); b.Property("Status") .HasColumnType("integer"); b.Property("ValidDaysRequested") .HasColumnType("integer"); b.Property("VisaCategory") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("ApplicantId"); b.ToTable("VisaApplication"); }); modelBuilder.Entity("Domains.ApplicantDomain.Applicant", b => { b.HasOne("Domains.ApplicantDomain.PlaceOfWork", "PlaceOfWork") .WithMany() .HasForeignKey("PlaceOfWorkId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Domains.Users.User", null) .WithOne() .HasForeignKey("Domains.ApplicantDomain.Applicant", "UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.OwnsOne("Domains.ApplicantDomain.Name", "FatherName", b1 => { b1.Property("ApplicantId") .HasColumnType("uuid"); b1.Property("FirstName") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Patronymic") .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Surname") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.HasKey("ApplicantId"); b1.ToTable("Applicant"); b1.WithOwner() .HasForeignKey("ApplicantId"); }); b.OwnsOne("Domains.ApplicantDomain.Name", "MotherName", b1 => { b1.Property("ApplicantId") .HasColumnType("uuid"); b1.Property("FirstName") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Patronymic") .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Surname") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.HasKey("ApplicantId"); b1.ToTable("Applicant"); b1.WithOwner() .HasForeignKey("ApplicantId"); }); b.OwnsOne("Domains.ApplicantDomain.Name", "Name", b1 => { b1.Property("ApplicantId") .HasColumnType("uuid"); b1.Property("FirstName") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Patronymic") .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.Property("Surname") .IsRequired() .HasMaxLength(50) .IsUnicode(false) .HasColumnType("character varying(50)"); b1.HasKey("ApplicantId"); b1.ToTable("Applicant"); b1.WithOwner() .HasForeignKey("ApplicantId"); }); b.OwnsOne("Domains.ApplicantDomain.Passport", "Passport", b1 => { b1.Property("ApplicantId") .HasColumnType("uuid"); b1.Property("ExpirationDate") .HasColumnType("timestamp without time zone"); b1.Property("IssueDate") .HasColumnType("timestamp without time zone"); b1.Property("Issuer") .IsRequired() .HasMaxLength(200) .IsUnicode(false) .HasColumnType("character varying(200)"); b1.Property("Number") .IsRequired() .HasMaxLength(20) .IsUnicode(false) .HasColumnType("character varying(20)"); b1.HasKey("ApplicantId"); b1.ToTable("Applicant"); b1.WithOwner() .HasForeignKey("ApplicantId"); }); b.Navigation("FatherName") .IsRequired(); b.Navigation("MotherName") .IsRequired(); b.Navigation("Name") .IsRequired(); b.Navigation("Passport") .IsRequired(); b.Navigation("PlaceOfWork"); }); modelBuilder.Entity("Domains.ApplicantDomain.PlaceOfWork", b => { b.OwnsOne("Domains.ApplicantDomain.Address", "Address", b1 => { b1.Property("PlaceOfWorkId") .HasColumnType("uuid"); b1.Property("Building") .IsRequired() .HasMaxLength(10) .IsUnicode(false) .HasColumnType("character varying(10)"); b1.Property("City") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b1.Property("Country") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b1.Property("Street") .IsRequired() .HasMaxLength(100) .IsUnicode(false) .HasColumnType("character varying(100)"); b1.HasKey("PlaceOfWorkId"); b1.ToTable("PlaceOfWork"); b1.WithOwner() .HasForeignKey("PlaceOfWorkId"); }); b.Navigation("Address") .IsRequired(); }); modelBuilder.Entity("Domains.VisaApplicationDomain.VisaApplication", b => { b.HasOne("Domains.ApplicantDomain.Applicant", null) .WithMany() .HasForeignKey("ApplicantId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.OwnsMany("Domains.VisaApplicationDomain.PastVisa", "PastVisas", b1 => { b1.Property("VisaApplicationId") .HasColumnType("uuid"); b1.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b1.Property("Id")); b1.Property("ExpirationDate") .HasColumnType("timestamp without time zone"); b1.Property("IssueDate") .HasColumnType("timestamp without time zone"); b1.Property("Name") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b1.HasKey("VisaApplicationId", "Id"); b1.ToTable("PastVisa"); b1.WithOwner() .HasForeignKey("VisaApplicationId"); }); b.OwnsMany("Domains.VisaApplicationDomain.PastVisit", "PastVisits", b1 => { b1.Property("VisaApplicationId") .HasColumnType("uuid"); b1.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b1.Property("Id")); b1.Property("DestinationCountry") .IsRequired() .HasMaxLength(70) .IsUnicode(false) .HasColumnType("character varying(70)"); b1.Property("EndDate") .HasColumnType("timestamp without time zone"); b1.Property("StartDate") .HasColumnType("timestamp without time zone"); b1.HasKey("VisaApplicationId", "Id"); b1.ToTable("PastVisit"); b1.WithOwner() .HasForeignKey("VisaApplicationId"); }); b.OwnsOne("Domains.VisaApplicationDomain.PermissionToDestCountry", "PermissionToDestCountry", b1 => { b1.Property("VisaApplicationId") .HasColumnType("uuid"); b1.Property("ExpirationDate") .HasColumnType("timestamp without time zone"); b1.Property("Issuer") .IsRequired() .HasMaxLength(200) .IsUnicode(false) .HasColumnType("character varying(200)"); b1.HasKey("VisaApplicationId"); b1.ToTable("VisaApplication"); b1.WithOwner() .HasForeignKey("VisaApplicationId"); }); b.OwnsOne("Domains.VisaApplicationDomain.ReentryPermit", "ReentryPermit", b1 => { b1.Property("VisaApplicationId") .HasColumnType("uuid"); b1.Property("ExpirationDate") .HasColumnType("timestamp without time zone"); b1.Property("Number") .IsRequired() .HasMaxLength(25) .IsUnicode(false) .HasColumnType("character varying(25)"); b1.HasKey("VisaApplicationId"); b1.ToTable("VisaApplication"); b1.WithOwner() .HasForeignKey("VisaApplicationId"); }); b.Navigation("PastVisas"); b.Navigation("PastVisits"); b.Navigation("PermissionToDestCountry"); b.Navigation("ReentryPermit"); }); #pragma warning restore 612, 618 } } }