//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using comissions.app.database;
#nullable disable
namespace comissions.app.api.Migrations
{
[DbContext(typeof(ApplicationDbContext))]
[Migration("20240225081932_review")]
partial class review
{
///
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("comissions.app.database.Entities.ArtistPageSettings", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("ArtistId")
.HasColumnType("integer");
b.Property("BackgroundColor")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionBackgroundColor")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionHeaderColor")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionHeaderImageUrl")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionHeaderSize")
.HasColumnType("integer");
b.Property("DescriptionHeaderText")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionHeaderUseImage")
.HasColumnType("boolean");
b.Property("DescriptionTextColor")
.IsRequired()
.HasColumnType("text");
b.Property("DescriptionTextSize")
.HasColumnType("integer");
b.Property("HeaderColor")
.IsRequired()
.HasColumnType("text");
b.Property("HeaderImageUrl")
.IsRequired()
.HasColumnType("text");
b.Property("HeaderTextSize")
.HasColumnType("integer");
b.Property("HeaderUseImage")
.HasColumnType("boolean");
b.Property("PortfolioBackgroundColor")
.IsRequired()
.HasColumnType("text");
b.Property("PortfolioColumns")
.HasColumnType("integer");
b.Property("PortfolioEnabledScrolling")
.HasColumnType("boolean");
b.Property("PortfolioMasonry")
.HasColumnType("boolean");
b.Property("PortfolioMaximumSize")
.HasColumnType("integer");
b.Property("PortfolionHeaderColor")
.IsRequired()
.HasColumnType("text");
b.Property("PortfolionHeaderImageUrl")
.IsRequired()
.HasColumnType("text");
b.Property("PortfolionHeaderSize")
.HasColumnType("integer");
b.Property("PortfolionHeaderText")
.IsRequired()
.HasColumnType("text");
b.Property("PortfolionHeaderUseImage")
.HasColumnType("boolean");
b.Property("RequestBackgroundColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestButtonBGColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestButtonHoverBGColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestButtonHoverTextColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestButtonTextColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestHeaderColor")
.IsRequired()
.HasColumnType("text");
b.Property("RequestHeaderImageUrl")
.IsRequired()
.HasColumnType("text");
b.Property("RequestHeaderSize")
.HasColumnType("integer");
b.Property("RequestHeaderText")
.IsRequired()
.HasColumnType("text");
b.Property("RequestHeaderUseImage")
.HasColumnType("boolean");
b.Property("RequestTermsColor")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("ArtistId")
.IsUnique();
b.ToTable("ArtistPageSettings");
});
modelBuilder.Entity("comissions.app.database.Entities.ArtistPortfolioPiece", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("ArtistId")
.HasColumnType("integer");
b.Property("FileReference")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("ArtistId");
b.ToTable("ArtistPortfolioPieces");
});
modelBuilder.Entity("comissions.app.database.Entities.ArtistRequest", 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("Message")
.IsRequired()
.HasColumnType("text");
b.Property("RequestDate")
.HasColumnType("timestamp with time zone");
b.Property("Review")
.HasColumnType("text");
b.Property("ReviewRating")
.HasColumnType("double precision");
b.Property("Reviewed")
.HasColumnType("boolean");
b.Property("UserId")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("ArtistRequests");
});
modelBuilder.Entity("comissions.app.database.Entities.Request", 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("Amount")
.HasColumnType("numeric");
b.Property("ArtistId")
.HasColumnType("integer");
b.Property("Completed")
.HasColumnType("boolean");
b.Property("CompletedDate")
.HasColumnType("timestamp with time zone");
b.Property("Declined")
.HasColumnType("boolean");
b.Property("DeclinedDate")
.HasColumnType("timestamp with time zone");
b.Property("Message")
.IsRequired()
.HasColumnType("text");
b.Property("Paid")
.HasColumnType("boolean");
b.Property("PaidDate")
.HasColumnType("timestamp with time zone");
b.Property("PaymentUrl")
.HasColumnType("text");
b.Property("RequestDate")
.HasColumnType("timestamp with time zone");
b.Property("UserId")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("ArtistId");
b.HasIndex("UserId");
b.ToTable("Requests");
});
modelBuilder.Entity("comissions.app.database.Entities.User", b =>
{
b.Property("Id")
.HasColumnType("text");
b.Property("BanAdminId")
.HasColumnType("text");
b.Property("Banned")
.HasColumnType("boolean");
b.Property("BannedDate")
.HasColumnType("timestamp with time zone");
b.Property("BannedReason")
.HasColumnType("text");
b.Property("Biography")
.IsRequired()
.HasColumnType("text");
b.Property("DisplayName")
.IsRequired()
.HasColumnType("text");
b.Property("Email")
.IsRequired()
.HasColumnType("text");
b.Property("SuspendAdminId")
.HasColumnType("text");
b.Property("Suspended")
.HasColumnType("boolean");
b.Property("SuspendedDate")
.HasColumnType("timestamp with time zone");
b.Property("SuspendedReason")
.HasColumnType("text");
b.Property("UnbanDate")
.HasColumnType("timestamp with time zone");
b.Property("UnsuspendDate")
.HasColumnType("timestamp with time zone");
b.Property("UserArtistId")
.HasColumnType("integer");
b.HasKey("Id");
b.ToTable("Users");
});
modelBuilder.Entity("comissions.app.database.Entities.UserArtist", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("AgeRestricted")
.HasColumnType("boolean");
b.Property("ArtistPageSettingsId")
.HasColumnType("integer");
b.Property("Description")
.IsRequired()
.HasColumnType("text");
b.Property("Name")
.IsRequired()
.HasColumnType("text");
b.Property("PrepaymentRequired")
.HasColumnType("boolean");
b.Property("RequestGuidelines")
.IsRequired()
.HasColumnType("text");
b.Property("SocialMediaLink1")
.IsRequired()
.HasColumnType("text");
b.Property("SocialMediaLink2")
.IsRequired()
.HasColumnType("text");
b.Property("SocialMediaLink3")
.IsRequired()
.HasColumnType("text");
b.Property("SocialMediaLink4")
.IsRequired()
.HasColumnType("text");
b.Property("StripeAccountId")
.HasColumnType("text");
b.Property("SuspendAdminId")
.HasColumnType("text");
b.Property("Suspended")
.HasColumnType("boolean");
b.Property("SuspendedDate")
.HasColumnType("timestamp with time zone");
b.Property("SuspendedReason")
.HasColumnType("text");
b.Property("UnsuspendDate")
.HasColumnType("timestamp with time zone");
b.Property("UserId")
.IsRequired()
.HasColumnType("text");
b.HasKey("Id");
b.HasIndex("UserId")
.IsUnique();
b.ToTable("UserArtists");
});
modelBuilder.Entity("comissions.app.database.Entities.ArtistPageSettings", b =>
{
b.HasOne("comissions.app.database.Entities.UserArtist", "Artist")
.WithOne("ArtistPageSettings")
.HasForeignKey("comissions.app.database.Entities.ArtistPageSettings", "ArtistId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Artist");
});
modelBuilder.Entity("comissions.app.database.Entities.ArtistPortfolioPiece", b =>
{
b.HasOne("comissions.app.database.Entities.UserArtist", "Artist")
.WithMany("PortfolioPieces")
.HasForeignKey("ArtistId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Artist");
});
modelBuilder.Entity("comissions.app.database.Entities.ArtistRequest", b =>
{
b.HasOne("comissions.app.database.Entities.User", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("User");
});
modelBuilder.Entity("comissions.app.database.Entities.Request", b =>
{
b.HasOne("comissions.app.database.Entities.UserArtist", "Artist")
.WithMany("Requests")
.HasForeignKey("ArtistId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("comissions.app.database.Entities.User", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Artist");
b.Navigation("User");
});
modelBuilder.Entity("comissions.app.database.Entities.UserArtist", b =>
{
b.HasOne("comissions.app.database.Entities.User", "User")
.WithOne("UserArtist")
.HasForeignKey("comissions.app.database.Entities.UserArtist", "UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("User");
});
modelBuilder.Entity("comissions.app.database.Entities.User", b =>
{
b.Navigation("UserArtist");
});
modelBuilder.Entity("comissions.app.database.Entities.UserArtist", b =>
{
b.Navigation("ArtistPageSettings")
.IsRequired();
b.Navigation("PortfolioPieces");
b.Navigation("Requests");
});
#pragma warning restore 612, 618
}
}
}