// using System; using System.Collections.Generic; using ArtPlatform.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 ArtPlatform.Database.Migrations { [DbContext(typeof(ApplicationDbContext))] [Migration("20240127105416_morestuff")] partial class morestuff { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.1") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerProfilePortfolioPiece", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("FileReference") .HasColumnType("text"); b.Property("SellerProfileId") .HasColumnType("integer"); b.Property("SellerServiceId") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("SellerProfileId"); b.HasIndex("SellerServiceId"); b.ToTable("SellerProfilePortfolioPieces"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerProfileRequest", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Accepted") .HasColumnType("boolean"); b.Property("AcceptedDate") .HasColumnType("timestamp with time zone"); b.Property("RequestDate") .HasColumnType("timestamp with time zone"); b.Property("UserId") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("SellerProfileRequests"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerService", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Description") .IsRequired() .HasColumnType("text"); b.Property("Name") .IsRequired() .HasColumnType("text"); b.Property("Price") .HasColumnType("double precision"); b.Property("SellerProfileId") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("SellerProfileId"); b.ToTable("SellerServices"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrder", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("BuyerId") .IsRequired() .HasColumnType("text"); b.Property("CreatedDate") .HasColumnType("timestamp with time zone"); b.Property("EndDate") .HasColumnType("timestamp with time zone"); b.Property("Price") .HasColumnType("double precision"); b.Property("SellerId") .HasColumnType("integer"); b.Property("SellerServiceId") .HasColumnType("integer"); b.Property("Status") .HasColumnType("integer"); b.Property("TermsAcceptedDate") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("BuyerId"); b.HasIndex("SellerId"); b.HasIndex("SellerServiceId"); b.ToTable("SellerServiceOrders"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderMessage", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Message") .IsRequired() .HasColumnType("text"); b.Property("SellerServiceOrderId") .HasColumnType("integer"); b.Property("SenderId") .IsRequired() .HasColumnType("text"); b.Property("SentAt") .HasColumnType("timestamp with time zone"); b.HasKey("Id"); b.HasIndex("SellerServiceOrderId"); b.HasIndex("SenderId"); b.ToTable("SellerServiceOrderMessages"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderMessageAttachment", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("FileReference") .IsRequired() .HasColumnType("text"); b.Property("SellerServiceOrderMessageId") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("SellerServiceOrderMessageId"); b.ToTable("SellerServiceOrderMessageAttachments"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderReview", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Rating") .HasColumnType("integer"); b.Property("Review") .HasColumnType("text"); b.Property("ReviewDate") .HasColumnType("timestamp with time zone"); b.Property("ReviewerId") .IsRequired() .HasColumnType("text"); b.Property("SellerServiceId") .HasColumnType("integer"); b.Property("SellerServiceOrderId") .HasColumnType("integer"); b.HasKey("Id"); b.HasIndex("ReviewerId"); b.HasIndex("SellerServiceId"); b.HasIndex("SellerServiceOrderId"); b.ToTable("SellerServiceOrderReviews"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.User", b => { b.Property("Id") .HasColumnType("text"); b.Property("AddressCity") .IsRequired() .HasColumnType("text"); b.Property("AddressCountry") .IsRequired() .HasColumnType("text"); b.Property("AddressHouseNumber") .IsRequired() .HasColumnType("text"); b.Property("AddressPostalCode") .IsRequired() .HasColumnType("text"); b.Property("AddressRegion") .IsRequired() .HasColumnType("text"); b.Property("AddressStreet") .IsRequired() .HasColumnType("text"); b.Property("Biography") .IsRequired() .HasColumnType("text"); b.Property("DisplayName") .IsRequired() .HasColumnType("text"); b.Property("Email") .IsRequired() .HasColumnType("text"); b.Property("FirstName") .IsRequired() .HasColumnType("text"); b.Property("LastName") .IsRequired() .HasColumnType("text"); b.Property("UserSellerProfileId") .HasColumnType("integer"); b.HasKey("Id"); b.ToTable("Users"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.UserSellerProfile", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("AgeRestricted") .HasColumnType("boolean"); b.Property("Biography") .IsRequired() .HasColumnType("text"); b.Property>("SocialMediaLinks") .IsRequired() .HasColumnType("text[]"); b.Property("UserId") .IsRequired() .HasColumnType("text"); b.HasKey("Id"); b.HasIndex("UserId") .IsUnique(); b.ToTable("UserSellerProfiles"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerProfilePortfolioPiece", b => { b.HasOne("ArtPlatform.Database.Entities.UserSellerProfile", "SellerProfile") .WithMany("PortfolioPieces") .HasForeignKey("SellerProfileId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.SellerService", "SellerService") .WithMany("PortfolioPieces") .HasForeignKey("SellerServiceId"); b.Navigation("SellerProfile"); b.Navigation("SellerService"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerProfileRequest", b => { b.HasOne("ArtPlatform.Database.Entities.User", "User") .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerService", b => { b.HasOne("ArtPlatform.Database.Entities.UserSellerProfile", "SellerProfile") .WithMany("SellerServices") .HasForeignKey("SellerProfileId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("SellerProfile"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrder", b => { b.HasOne("ArtPlatform.Database.Entities.User", "Buyer") .WithMany("Orders") .HasForeignKey("BuyerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.UserSellerProfile", "Seller") .WithMany() .HasForeignKey("SellerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.SellerService", "SellerService") .WithMany() .HasForeignKey("SellerServiceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Buyer"); b.Navigation("Seller"); b.Navigation("SellerService"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderMessage", b => { b.HasOne("ArtPlatform.Database.Entities.SellerServiceOrder", "SellerServiceOrder") .WithMany("Messages") .HasForeignKey("SellerServiceOrderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.User", "Sender") .WithMany() .HasForeignKey("SenderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("SellerServiceOrder"); b.Navigation("Sender"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderMessageAttachment", b => { b.HasOne("ArtPlatform.Database.Entities.SellerServiceOrderMessage", "SellerServiceOrderMessage") .WithMany() .HasForeignKey("SellerServiceOrderMessageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("SellerServiceOrderMessage"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrderReview", b => { b.HasOne("ArtPlatform.Database.Entities.User", "Reviewer") .WithMany() .HasForeignKey("ReviewerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.SellerService", "SellerService") .WithMany("Reviews") .HasForeignKey("SellerServiceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("ArtPlatform.Database.Entities.SellerServiceOrder", "SellerServiceOrder") .WithMany("Reviews") .HasForeignKey("SellerServiceOrderId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Reviewer"); b.Navigation("SellerService"); b.Navigation("SellerServiceOrder"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.UserSellerProfile", b => { b.HasOne("ArtPlatform.Database.Entities.User", "User") .WithOne("UserSellerProfile") .HasForeignKey("ArtPlatform.Database.Entities.UserSellerProfile", "UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerService", b => { b.Navigation("PortfolioPieces"); b.Navigation("Reviews"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.SellerServiceOrder", b => { b.Navigation("Messages"); b.Navigation("Reviews"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.User", b => { b.Navigation("Orders"); b.Navigation("UserSellerProfile"); }); modelBuilder.Entity("ArtPlatform.Database.Entities.UserSellerProfile", b => { b.Navigation("PortfolioPieces"); b.Navigation("SellerServices"); }); #pragma warning restore 612, 618 } } }