// using System; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; using cuqmbr.TravelGuide.Persistence.PostgreSql; #nullable disable namespace Persistence.PostgreSql.Migrations { [DbContext(typeof(PostgreSqlDbContext))] partial class PostgreSqlDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasDefaultSchema("application") .HasAnnotation("ProductVersion", "9.0.4") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.HasPostgresEnum(modelBuilder, "vehicle_type", new[] { "bus", "train", "aircraft" }); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.HasSequence("cities_id_sequence"); modelBuilder.HasSequence("countries_id_sequence"); modelBuilder.HasSequence("regions_id_sequence"); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Address", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CityId") .HasColumnType("bigint"); b.Property("Guid") .HasColumnType("uuid"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("CityId"); b.ToTable("Address", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.City", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint") .HasColumnName("id") .HasDefaultValueSql("nextval('application.cities_id_sequence')"); NpgsqlPropertyBuilderExtensions.UseSequence(b.Property("Id"), "cities_id_sequence"); b.Property("Guid") .HasColumnType("uuid") .HasColumnName("uuid"); b.Property("Name") .IsRequired() .HasColumnType("varchar(64)") .HasColumnName("name"); b.Property("RegionId") .HasColumnType("bigint") .HasColumnName("region_id"); b.HasKey("Id") .HasName("pk_cities"); b.HasAlternateKey("Guid") .HasName("altk_cities_Guid"); b.HasIndex("Guid") .IsUnique() .HasDatabaseName("ix_cities_uuid"); b.HasIndex("Id") .IsUnique() .HasDatabaseName("ix_cities_id"); b.HasIndex("RegionId"); b.ToTable("cities", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Country", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint") .HasColumnName("id") .HasDefaultValueSql("nextval('application.countries_id_sequence')"); NpgsqlPropertyBuilderExtensions.UseSequence(b.Property("Id"), "countries_id_sequence"); b.Property("Guid") .HasColumnType("uuid") .HasColumnName("uuid"); b.Property("Name") .IsRequired() .HasColumnType("varchar(64)") .HasColumnName("name"); b.HasKey("Id") .HasName("pk_countries"); b.HasAlternateKey("Guid") .HasName("altk_countries_Guid"); b.HasIndex("Guid") .IsUnique() .HasDatabaseName("ix_countries_uuid"); b.HasIndex("Id") .IsUnique() .HasDatabaseName("ix_countries_id"); b.ToTable("countries", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Region", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint") .HasColumnName("id") .HasDefaultValueSql("nextval('application.regions_id_sequence')"); NpgsqlPropertyBuilderExtensions.UseSequence(b.Property("Id"), "regions_id_sequence"); b.Property("CountryId") .HasColumnType("bigint") .HasColumnName("country_id"); b.Property("Guid") .HasColumnType("uuid") .HasColumnName("uuid"); b.Property("Name") .IsRequired() .HasColumnType("varchar(64)") .HasColumnName("name"); b.HasKey("Id") .HasName("pk_regions"); b.HasAlternateKey("Guid") .HasName("altk_regions_Guid"); b.HasIndex("CountryId"); b.HasIndex("Guid") .IsUnique() .HasDatabaseName("ix_regions_uuid"); b.HasIndex("Id") .IsUnique() .HasDatabaseName("ix_regions_id"); b.ToTable("regions", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Route", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Guid") .HasColumnType("uuid"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.ToTable("Route", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.RouteAddress", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("bigint"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AddressId") .HasColumnType("bigint"); b.Property("Guid") .HasColumnType("uuid"); b.Property("Order") .HasColumnType("smallint"); b.Property("RouteId") .HasColumnType("bigint"); b.HasKey("Id"); b.HasIndex("AddressId"); b.HasIndex("RouteId"); b.ToTable("RouteAddress", "application"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Address", b => { b.HasOne("cuqmbr.TravelGuide.Domain.Entities.City", "City") .WithMany("Addresses") .HasForeignKey("CityId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("City"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.City", b => { b.HasOne("cuqmbr.TravelGuide.Domain.Entities.Region", "Region") .WithMany("Cities") .HasForeignKey("RegionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_cities_region_id"); b.Navigation("Region"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Region", b => { b.HasOne("cuqmbr.TravelGuide.Domain.Entities.Country", "Country") .WithMany("Regions") .HasForeignKey("CountryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("fk_regions_country_id"); b.Navigation("Country"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.RouteAddress", b => { b.HasOne("cuqmbr.TravelGuide.Domain.Entities.Address", "Address") .WithMany("AddressRoutes") .HasForeignKey("AddressId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("cuqmbr.TravelGuide.Domain.Entities.Route", "Route") .WithMany("RouteAddresses") .HasForeignKey("RouteId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Address"); b.Navigation("Route"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Address", b => { b.Navigation("AddressRoutes"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.City", b => { b.Navigation("Addresses"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Country", b => { b.Navigation("Regions"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Region", b => { b.Navigation("Cities"); }); modelBuilder.Entity("cuqmbr.TravelGuide.Domain.Entities.Route", b => { b.Navigation("RouteAddresses"); }); #pragma warning restore 612, 618 } } }