divan/RMuseum/Migrations/RMuseumDbContextModelSnapshot.cs
2021-01-19 16:38:59 +03:30

2062 lines
73 KiB
C#

// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using RMuseum.DbContext;
namespace RMuseum.Migrations
{
[DbContext(typeof(RMuseumDbContext))]
partial class RMuseumDbContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "3.1.3")
.HasAnnotation("Relational:MaxIdentifierLength", 128)
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<System.Guid>", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("ClaimType")
.HasColumnType("nvarchar(max)");
b.Property<string>("ClaimValue")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("RoleId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("RoleId");
b.ToTable("AspNetRoleClaims");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<System.Guid>", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("ClaimType")
.HasColumnType("nvarchar(max)");
b.Property<string>("ClaimValue")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("AspNetUserClaims");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<System.Guid>", b =>
{
b.Property<string>("LoginProvider")
.HasColumnType("nvarchar(450)");
b.Property<string>("ProviderKey")
.HasColumnType("nvarchar(450)");
b.Property<string>("ProviderDisplayName")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("LoginProvider", "ProviderKey");
b.HasIndex("UserId");
b.ToTable("AspNetUserLogins");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<System.Guid>", b =>
{
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("RoleId")
.HasColumnType("uniqueidentifier");
b.HasKey("UserId", "RoleId");
b.HasIndex("RoleId");
b.ToTable("AspNetUserRoles");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<System.Guid>", b =>
{
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.Property<string>("LoginProvider")
.HasColumnType("nvarchar(450)");
b.Property<string>("Name")
.HasColumnType("nvarchar(450)");
b.Property<string>("Value")
.HasColumnType("nvarchar(max)");
b.HasKey("UserId", "LoginProvider", "Name");
b.ToTable("AspNetUserTokens");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<int>("CoverImageIndex")
.HasColumnType("int");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("DescriptionInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<string>("FriendlyUrl")
.HasColumnType("nvarchar(450)");
b.Property<DateTime>("LastModified")
.HasColumnType("datetime2");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("NameInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<int>("Order")
.HasColumnType("int");
b.Property<Guid>("RArtifactMasterRecordId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("RArtifactMasterRecordId", "FriendlyUrl")
.IsUnique()
.HasFilter("[FriendlyUrl] IS NOT NULL");
b.HasIndex("RArtifactMasterRecordId", "Order")
.IsUnique();
b.ToTable("Items");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("CoverImageId")
.HasColumnType("uniqueidentifier");
b.Property<int>("CoverItemIndex")
.HasColumnType("int");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("DescriptionInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<string>("FriendlyUrl")
.HasColumnType("nvarchar(450)");
b.Property<int>("ItemCount")
.HasColumnType("int");
b.Property<DateTime>("LastModified")
.HasColumnType("datetime2");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("NameInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<int>("Status")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("CoverImageId");
b.HasIndex("FriendlyUrl")
.IsUnique()
.HasFilter("[FriendlyUrl] IS NOT NULL");
b.ToTable("Artifacts");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTag", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("FriendlyUrl")
.HasColumnType("nvarchar(450)");
b.Property<bool>("GlobalValue")
.HasColumnType("bit");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("NameInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<int>("Order")
.HasColumnType("int");
b.Property<string>("PluralName")
.HasColumnType("nvarchar(max)");
b.Property<string>("PluralNameInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<int>("TagType")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("FriendlyUrl");
b.ToTable("Tags");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("FriendlyUrl")
.HasColumnType("nvarchar(450)");
b.Property<int>("Order")
.HasColumnType("int");
b.Property<Guid?>("RArtifactItemRecordId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RArtifactMasterRecordId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("RTagId")
.HasColumnType("uniqueidentifier");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<string>("Value")
.HasColumnType("nvarchar(max)");
b.Property<string>("ValueInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<string>("ValueSupplement")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("FriendlyUrl");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.HasIndex("RTagId");
b.ToTable("TagValues");
});
modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<string>("Note")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("RAppUserId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RArtifactItemRecordId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RArtifactMasterRecordId")
.HasColumnType("uniqueidentifier");
b.Property<int>("RBookmarkType")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.ToTable("UserBookmarks");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<string>("FullUrl")
.HasColumnType("nvarchar(450)");
b.Property<int?>("ParentId")
.HasColumnType("int");
b.Property<int>("PoetId")
.HasColumnType("int");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<string>("UrlSlug")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("FullUrl");
b.HasIndex("ParentId");
b.HasIndex("PoetId");
b.ToTable("GanjoorCategories");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorMetre", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<string>("Rhythm")
.HasColumnType("nvarchar(max)");
b.Property<string>("UrlSlug")
.HasColumnType("nvarchar(max)");
b.Property<int>("VerseCount")
.HasColumnType("int");
b.HasKey("Id");
b.ToTable("GanjoorMetres");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<int?>("CatId")
.HasColumnType("int");
b.Property<string>("FullTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("FullUrl")
.HasColumnType("nvarchar(450)");
b.Property<int>("GanjoorPageType")
.HasColumnType("int");
b.Property<string>("HtmlText")
.HasColumnType("nvarchar(max)");
b.Property<int>("PageOrder")
.HasColumnType("int");
b.Property<int?>("ParentId")
.HasColumnType("int");
b.Property<int?>("PoemId")
.HasColumnType("int");
b.Property<int?>("PoetId")
.HasColumnType("int");
b.Property<DateTime>("PostDate")
.HasColumnType("datetime2");
b.Property<bool>("Published")
.HasColumnType("bit");
b.Property<int?>("SecondPoetId")
.HasColumnType("int");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<string>("UrlSlug")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("CatId");
b.HasIndex("FullUrl");
b.HasIndex("ParentId");
b.HasIndex("PoemId");
b.HasIndex("PoetId");
b.HasIndex("SecondPoetId");
b.ToTable("GanjoorPages");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<int>("CatId")
.HasColumnType("int");
b.Property<string>("FullTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("FullUrl")
.HasColumnType("nvarchar(450)");
b.Property<int?>("GanjoorMetreId")
.HasColumnType("int");
b.Property<string>("HtmlText")
.HasColumnType("nvarchar(max)");
b.Property<string>("PlainText")
.HasColumnType("nvarchar(max)");
b.Property<string>("RhymeLetters")
.HasColumnType("nvarchar(max)");
b.Property<string>("SourceName")
.HasColumnType("nvarchar(max)");
b.Property<string>("SourceUrlSlug")
.HasColumnType("nvarchar(max)");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<string>("UrlSlug")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("CatId");
b.HasIndex("FullUrl");
b.HasIndex("GanjoorMetreId");
b.ToTable("GanjoorPoems");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("GanjoorPoets");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<int>("PoemId")
.HasColumnType("int");
b.Property<string>("Text")
.HasColumnType("nvarchar(max)");
b.Property<int>("VOrder")
.HasColumnType("int");
b.Property<int>("VersePosition")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("PoemId");
b.ToTable("GanjoorVerses");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("AlbumName")
.HasColumnType("nvarchar(max)");
b.Property<string>("AlbumUrl")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("ApprovalDate")
.HasColumnType("datetime2");
b.Property<bool>("Approved")
.HasColumnType("bit");
b.Property<string>("ArtistName")
.HasColumnType("nvarchar(max)");
b.Property<string>("ArtistUrl")
.HasColumnType("nvarchar(max)");
b.Property<bool>("BrokenLink")
.HasColumnType("bit");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<int?>("GanjoorTrackId")
.HasColumnType("int");
b.Property<int?>("GolhaTrackId")
.HasColumnType("int");
b.Property<int>("PoemId")
.HasColumnType("int");
b.Property<int?>("SingerId")
.HasColumnType("int");
b.Property<Guid?>("SuggestedById")
.HasColumnType("uniqueidentifier");
b.Property<string>("TrackName")
.HasColumnType("nvarchar(max)");
b.Property<int>("TrackType")
.HasColumnType("int");
b.Property<string>("TrackUrl")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("GanjoorTrackId");
b.HasIndex("GolhaTrackId");
b.HasIndex("PoemId");
b.HasIndex("SingerId");
b.HasIndex("SuggestedById");
b.ToTable("GanjoorPoemMusicTracks");
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("AudioArtist")
.HasColumnType("nvarchar(max)");
b.Property<string>("AudioArtistUrl")
.HasColumnType("nvarchar(max)");
b.Property<int>("AudioOrder")
.HasColumnType("int");
b.Property<string>("AudioSrc")
.HasColumnType("nvarchar(max)");
b.Property<string>("AudioSrcUrl")
.HasColumnType("nvarchar(max)");
b.Property<int>("AudioSyncStatus")
.HasColumnType("int");
b.Property<string>("AudioTitle")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("FileLastUpdated")
.HasColumnType("datetime2");
b.Property<string>("FileNameWithoutExtension")
.HasColumnType("nvarchar(max)");
b.Property<int>("GanjoorAudioId")
.HasColumnType("int");
b.Property<int>("GanjoorPostId")
.HasColumnType("int");
b.Property<Guid>("LegacyAudioGuid")
.HasColumnType("uniqueidentifier");
b.Property<string>("LocalMp3FilePath")
.HasColumnType("nvarchar(max)");
b.Property<string>("LocalXmlFilePath")
.HasColumnType("nvarchar(max)");
b.Property<string>("Mp3FileCheckSum")
.HasColumnType("nvarchar(max)");
b.Property<int>("Mp3SizeInBytes")
.HasColumnType("int");
b.Property<int>("OggSizeInBytes")
.HasColumnType("int");
b.Property<Guid>("OwnerId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("ReviewDate")
.HasColumnType("datetime2");
b.Property<string>("ReviewMsg")
.HasColumnType("nvarchar(max)");
b.Property<int>("ReviewStatus")
.HasColumnType("int");
b.Property<Guid?>("ReviewerId")
.HasColumnType("uniqueidentifier");
b.Property<string>("SoundFilesFolder")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("UploadDate")
.HasColumnType("datetime2");
b.HasKey("Id");
b.HasIndex("GanjoorPostId");
b.HasIndex("OwnerId");
b.HasIndex("ReviewerId");
b.ToTable("Recitations");
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("FinishDate")
.HasColumnType("datetime2");
b.Property<bool>("Finished")
.HasColumnType("bit");
b.Property<bool>("FirstDbUpdated")
.HasColumnType("bit");
b.Property<string>("LastException")
.HasColumnType("nvarchar(max)");
b.Property<bool>("Mp3FileCopied")
.HasColumnType("bit");
b.Property<int>("PoemNarrationId")
.HasColumnType("int");
b.Property<bool>("SecondDbUpdated")
.HasColumnType("bit");
b.Property<DateTime>("StartDate")
.HasColumnType("datetime2");
b.Property<bool>("XmlFileCopied")
.HasColumnType("bit");
b.HasKey("Id");
b.HasIndex("PoemNarrationId");
b.ToTable("RecitationPublishingTrackers");
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ArtistName")
.HasColumnType("nvarchar(max)");
b.Property<string>("ArtistUrl")
.HasColumnType("nvarchar(max)");
b.Property<string>("AudioSrc")
.HasColumnType("nvarchar(max)");
b.Property<string>("AudioSrcUrl")
.HasColumnType("nvarchar(max)");
b.Property<string>("FileSuffixWithoutDash")
.HasColumnType("nvarchar(max)");
b.Property<bool>("IsDefault")
.HasColumnType("bit");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("UserRecitationProfiles");
});
modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("ArtifactId")
.HasColumnType("uniqueidentifier");
b.Property<int>("GanjoorPostId")
.HasColumnType("int");
b.Property<string>("GanjoorTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("GanjoorUrl")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("ItemId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("ReviewDate")
.HasColumnType("datetime2");
b.Property<int>("ReviewResult")
.HasColumnType("int");
b.Property<Guid?>("ReviewerId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("SuggestedById")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("SuggestionDate")
.HasColumnType("datetime2");
b.Property<bool>("Synchronized")
.HasColumnType("bit");
b.HasKey("Id");
b.HasIndex("ArtifactId");
b.HasIndex("ItemId");
b.HasIndex("ReviewerId");
b.HasIndex("SuggestedById");
b.ToTable("GanjoorLinks");
});
modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("AltText")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("ArtifactId")
.HasColumnType("uniqueidentifier");
b.Property<int>("GanjoorPostId")
.HasColumnType("int");
b.Property<string>("GanjoorTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("GanjoorUrl")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("ItemId")
.HasColumnType("uniqueidentifier");
b.Property<int>("LinkType")
.HasColumnType("int");
b.Property<string>("PinterestImageUrl")
.HasColumnType("nvarchar(max)");
b.Property<string>("PinterestUrl")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("ReviewDate")
.HasColumnType("datetime2");
b.Property<string>("ReviewDesc")
.HasColumnType("nvarchar(max)");
b.Property<int>("ReviewResult")
.HasColumnType("int");
b.Property<Guid?>("ReviewerId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("SuggestedById")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("SuggestionDate")
.HasColumnType("datetime2");
b.Property<bool>("Synchronized")
.HasColumnType("bit");
b.HasKey("Id");
b.HasIndex("ArtifactId");
b.HasIndex("ItemId");
b.HasIndex("ReviewerId");
b.HasIndex("SuggestedById");
b.ToTable("PinterestLinks");
});
modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("ArtifactId")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("EndTime")
.HasColumnType("datetime2");
b.Property<string>("Exception")
.HasColumnType("nvarchar(max)");
b.Property<string>("FriendlyUrl")
.HasColumnType("nvarchar(max)");
b.Property<int>("JobType")
.HasColumnType("int");
b.Property<decimal>("ProgressPercent")
.HasColumnType("decimal(18,2)");
b.Property<DateTime>("QueueTime")
.HasColumnType("datetime2");
b.Property<string>("ResourceNumber")
.HasColumnType("nvarchar(max)");
b.Property<string>("SrcContent")
.HasColumnType("nvarchar(max)");
b.Property<string>("SrcUrl")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("StartTime")
.HasColumnType("datetime2");
b.Property<int>("Status")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("ArtifactId");
b.ToTable("ImportJobs");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<int>("SingerId")
.HasColumnType("int");
b.Property<string>("Url")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("SingerId");
b.ToTable("GanjoorAlbum");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<string>("Name")
.HasColumnType("nvarchar(450)");
b.Property<string>("Url")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("Name");
b.ToTable("GanjoorSingers");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property<int>("AlbumId")
.HasColumnType("int");
b.Property<string>("BlockReason")
.HasColumnType("nvarchar(max)");
b.Property<bool>("Blocked")
.HasColumnType("bit");
b.Property<string>("Name")
.HasColumnType("nvarchar(450)");
b.Property<string>("Url")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("AlbumId");
b.HasIndex("Name");
b.ToTable("GanjoorMusicCatalogueTracks");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("GolhaCollections");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<int>("GolhaCollectionId")
.HasColumnType("int");
b.Property<string>("Mp3")
.HasColumnType("nvarchar(max)");
b.Property<int>("ProgramOrder")
.HasColumnType("int");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<string>("Url")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("GolhaCollectionId");
b.ToTable("GolhaPrograms");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b =>
{
b.Property<int>("Id")
.HasColumnType("int");
b.Property<string>("BlockReason")
.HasColumnType("nvarchar(max)");
b.Property<bool>("Blocked")
.HasColumnType("bit");
b.Property<int>("GolhaProgramId")
.HasColumnType("int");
b.Property<int?>("SingerId")
.HasColumnType("int");
b.Property<string>("Timing")
.HasColumnType("nvarchar(max)");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<int>("TrackNo")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("GolhaProgramId");
b.HasIndex("SingerId");
b.ToTable("GolhaTracks");
});
modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<string>("HtmlContent")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("LastModified")
.HasColumnType("datetime2");
b.Property<bool>("Modified")
.HasColumnType("bit");
b.Property<int>("NoteType")
.HasColumnType("int");
b.Property<Guid>("RAppUserId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RArtifactItemRecordId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RArtifactMasterRecordId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("ReferenceNoteId")
.HasColumnType("uniqueidentifier");
b.Property<int>("Status")
.HasColumnType("int");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.HasIndex("ReferenceNoteId");
b.ToTable("UserNotes");
});
modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("ProcessEndTime")
.HasColumnType("datetime2");
b.Property<int>("ProcessProgress")
.HasColumnType("int");
b.Property<DateTime>("ProcessStartTime")
.HasColumnType("datetime2");
b.Property<int>("SessionType")
.HasColumnType("int");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<DateTime>("UploadEndTime")
.HasColumnType("datetime2");
b.Property<DateTime>("UploadStartTime")
.HasColumnType("datetime2");
b.Property<Guid>("UseId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("UploadSessions");
});
modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ContentDisposition")
.HasColumnType("nvarchar(max)");
b.Property<string>("ContentType")
.HasColumnType("nvarchar(max)");
b.Property<string>("FileName")
.HasColumnType("nvarchar(max)");
b.Property<string>("FilePath")
.HasColumnType("nvarchar(max)");
b.Property<long>("Length")
.HasColumnType("bigint");
b.Property<string>("MP3FileCheckSum")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<bool>("ProcessResult")
.HasColumnType("bit");
b.Property<string>("ProcessResultMsg")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("UploadSessionId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UploadSessionId");
b.ToTable("UploadedFiles");
});
modelBuilder.Entity("RSecurityBackend.Models.Audit.Db.REvent", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<int>("Duration")
.HasColumnType("int");
b.Property<DateTime?>("EndDate")
.HasColumnType("datetime2");
b.Property<string>("EventType")
.HasColumnType("nvarchar(max)");
b.Property<string>("IpAddress")
.HasColumnType("nvarchar(max)");
b.Property<string>("JsonData")
.HasColumnType("nvarchar(max)");
b.Property<string>("RequestUrl")
.HasColumnType("nvarchar(max)");
b.Property<int>("ResponseStatusCode")
.HasColumnType("int");
b.Property<DateTime>("StartDate")
.HasColumnType("datetime2");
b.Property<string>("UserName")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("AuditLogs");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.HasColumnType("nvarchar(max)");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.Property<string>("NormalizedName")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.HasKey("Id");
b.HasIndex("NormalizedName")
.IsUnique()
.HasName("RoleNameIndex")
.HasFilter("[NormalizedName] IS NOT NULL");
b.ToTable("AspNetRoles");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<int>("AccessFailedCount")
.HasColumnType("int");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreateDate")
.HasColumnType("datetime2");
b.Property<string>("Email")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.Property<bool>("EmailConfirmed")
.HasColumnType("bit");
b.Property<string>("FirstName")
.HasColumnType("nvarchar(max)");
b.Property<bool>("LockoutEnabled")
.HasColumnType("bit");
b.Property<DateTimeOffset?>("LockoutEnd")
.HasColumnType("datetimeoffset");
b.Property<string>("NormalizedEmail")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.Property<string>("NormalizedUserName")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.Property<string>("PasswordHash")
.HasColumnType("nvarchar(max)");
b.Property<string>("PhoneNumber")
.HasColumnType("nvarchar(max)");
b.Property<bool>("PhoneNumberConfirmed")
.HasColumnType("bit");
b.Property<Guid?>("RImageId")
.HasColumnType("uniqueidentifier");
b.Property<string>("SecurityStamp")
.HasColumnType("nvarchar(max)");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<string>("SureName")
.HasColumnType("nvarchar(max)");
b.Property<bool>("TwoFactorEnabled")
.HasColumnType("bit");
b.Property<string>("UserName")
.HasColumnType("nvarchar(256)")
.HasMaxLength(256);
b.HasKey("Id");
b.HasIndex("NormalizedEmail")
.HasName("EmailIndex");
b.HasIndex("NormalizedUserName")
.IsUnique()
.HasName("UserNameIndex")
.HasFilter("[NormalizedUserName] IS NOT NULL");
b.HasIndex("RImageId");
b.ToTable("AspNetUsers");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<Guid>("RImageId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Value")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("RImageId");
b.ToTable("CaptchaImages");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("OperationShortName")
.HasColumnType("nvarchar(max)");
b.Property<Guid?>("RAppRoleId")
.HasColumnType("uniqueidentifier");
b.Property<string>("SecurableItemShortName")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("RAppRoleId");
b.ToTable("Permissions");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ClientAppName")
.HasColumnType("nvarchar(max)");
b.Property<string>("ClientIPAddress")
.HasColumnType("nvarchar(max)");
b.Property<string>("Language")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("LastRenewal")
.HasColumnType("datetime2");
b.Property<DateTime>("LoginTime")
.HasColumnType("datetime2");
b.Property<Guid>("RAppUserId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Token")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("ValidUntil")
.HasColumnType("datetime2");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.ToTable("Sessions");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RVerifyQueueItem", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ClientAppName")
.HasColumnType("nvarchar(max)");
b.Property<string>("ClientIPAddress")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<string>("Email")
.HasColumnType("nvarchar(max)");
b.Property<string>("Language")
.HasColumnType("nvarchar(max)");
b.Property<string>("PhoneNumber")
.HasColumnType("nvarchar(max)");
b.Property<int>("QueueType")
.HasColumnType("int");
b.Property<string>("Secret")
.HasColumnType("nvarchar(450)");
b.HasKey("Id");
b.HasIndex("Secret")
.IsUnique()
.HasFilter("[Secret] IS NOT NULL");
b.ToTable("VerifyQueueItems");
});
modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RLongRunningJobStatus", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("EndTime")
.HasColumnType("datetime2");
b.Property<string>("Exception")
.HasColumnType("nvarchar(max)");
b.Property<string>("Name")
.HasColumnType("nvarchar(max)");
b.Property<double>("Progress")
.HasColumnType("float");
b.Property<DateTime>("StartTime")
.HasColumnType("datetime2");
b.Property<string>("Step")
.HasColumnType("nvarchar(max)");
b.Property<bool>("Succeeded")
.HasColumnType("bit");
b.HasKey("Id");
b.ToTable("LongRunningJobs");
});
modelBuilder.Entity("RSecurityBackend.Models.Image.RImage", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<string>("ContentType")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("DataTime")
.HasColumnType("datetime2");
b.Property<string>("Discriminator")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<long>("FileSizeInBytes")
.HasColumnType("bigint");
b.Property<string>("FolderName")
.HasColumnType("nvarchar(max)");
b.Property<int>("ImageHeight")
.HasColumnType("int");
b.Property<int>("ImageWidth")
.HasColumnType("int");
b.Property<DateTime>("LastModified")
.HasColumnType("datetime2");
b.Property<string>("OriginalFileName")
.HasColumnType("nvarchar(max)");
b.Property<string>("StoredFileName")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("GeneralImages");
b.HasDiscriminator<string>("Discriminator").HasValue("RImage");
});
modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("DateTime")
.HasColumnType("datetime2");
b.Property<string>("HtmlText")
.HasColumnType("nvarchar(max)");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<string>("Subject")
.HasColumnType("nvarchar(max)");
b.Property<Guid>("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("Notifications");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b =>
{
b.HasBaseType("RSecurityBackend.Models.Image.RImage");
b.Property<string>("Description")
.HasColumnType("nvarchar(max)");
b.Property<string>("DescriptionInEnglish")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("LastModifiedMeta")
.HasColumnType("datetime2");
b.Property<int>("NormalSizeImageHeight")
.HasColumnType("int");
b.Property<string>("NormalSizeImageStoredFileName")
.HasColumnType("nvarchar(max)");
b.Property<int>("NormalSizeImageWidth")
.HasColumnType("int");
b.Property<int>("Order")
.HasColumnType("int");
b.Property<Guid?>("RArtifactItemRecordId")
.HasColumnType("uniqueidentifier");
b.Property<string>("SrcUrl")
.HasColumnType("nvarchar(max)");
b.Property<int>("Status")
.HasColumnType("int");
b.Property<int>("ThumbnailImageHeight")
.HasColumnType("int");
b.Property<string>("ThumbnailImageStoredFileName")
.HasColumnType("nvarchar(max)");
b.Property<int>("ThumbnailImageWidth")
.HasColumnType("int");
b.Property<string>("Title")
.HasColumnType("nvarchar(max)");
b.Property<string>("TitleInEnglish")
.HasColumnType("nvarchar(max)");
b.HasIndex("RArtifactItemRecordId");
b.HasDiscriminator().HasValue("RPictureFile");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<System.Guid>", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null)
.WithMany()
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<System.Guid>", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null)
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<System.Guid>", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null)
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<System.Guid>", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null)
.WithMany()
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null)
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<System.Guid>", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null)
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", null)
.WithMany("Items")
.HasForeignKey("RArtifactMasterRecordId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b =>
{
b.HasOne("RMuseum.Models.Artifact.RPictureFile", "CoverImage")
.WithMany()
.HasForeignKey("CoverImageId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null)
.WithMany("Tags")
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", null)
.WithMany("Tags")
.HasForeignKey("RArtifactMasterRecordId");
b.HasOne("RMuseum.Models.Artifact.RTag", "RTag")
.WithMany()
.HasForeignKey("RTagId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "RArtifactItemRecord")
.WithMany()
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord")
.WithMany()
.HasForeignKey("RArtifactMasterRecordId");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b =>
{
b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Parent")
.WithMany()
.HasForeignKey("ParentId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet")
.WithMany()
.HasForeignKey("PoetId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b =>
{
b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Cat")
.WithMany()
.HasForeignKey("CatId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "Parent")
.WithMany()
.HasForeignKey("ParentId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet")
.WithMany()
.HasForeignKey("PoetId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "SecondPoet")
.WithMany()
.HasForeignKey("SecondPoetId");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b =>
{
b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Cat")
.WithMany()
.HasForeignKey("CatId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.Ganjoor.GanjoorMetre", "GanjoorMetre")
.WithMany()
.HasForeignKey("GanjoorMetreId");
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b =>
{
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorTrack", "GanjoorTrack")
.WithMany()
.HasForeignKey("GanjoorTrackId");
b.HasOne("RMuseum.Models.MusicCatalogue.GolhaTrack", "GolhaTrack")
.WithMany()
.HasForeignKey("GolhaTrackId");
b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer")
.WithMany()
.HasForeignKey("SingerId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy")
.WithMany()
.HasForeignKey("SuggestedById");
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Owner")
.WithMany()
.HasForeignKey("OwnerId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer")
.WithMany()
.HasForeignKey("ReviewerId");
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b =>
{
b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "PoemNarration")
.WithMany()
.HasForeignKey("PoemNarrationId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact")
.WithMany()
.HasForeignKey("ArtifactId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item")
.WithMany()
.HasForeignKey("ItemId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer")
.WithMany()
.HasForeignKey("ReviewerId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy")
.WithMany()
.HasForeignKey("SuggestedById")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact")
.WithMany()
.HasForeignKey("ArtifactId");
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item")
.WithMany()
.HasForeignKey("ItemId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer")
.WithMany()
.HasForeignKey("ReviewerId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy")
.WithMany()
.HasForeignKey("SuggestedById");
});
modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact")
.WithMany()
.HasForeignKey("ArtifactId");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer")
.WithMany("Albums")
.HasForeignKey("SingerId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorAlbum", "Album")
.WithMany("Tracks")
.HasForeignKey("AlbumId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.GolhaCollection", "GolhaCollection")
.WithMany("Programs")
.HasForeignKey("GolhaCollectionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.GolhaProgram", "GolhaProgram")
.WithMany("Tracks")
.HasForeignKey("GolhaProgramId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer")
.WithMany()
.HasForeignKey("SingerId");
});
modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "RArtifactItemRecord")
.WithMany()
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord")
.WithMany()
.HasForeignKey("RArtifactMasterRecordId");
b.HasOne("RMuseum.Models.Note.RUserNote", "ReferenceNote")
.WithMany()
.HasForeignKey("ReferenceNoteId");
});
modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User")
.WithMany()
.HasForeignKey("UserId");
});
modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b =>
{
b.HasOne("RMuseum.Models.UploadSession.UploadSession", null)
.WithMany("UploadedFiles")
.HasForeignKey("UploadSessionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b =>
{
b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage")
.WithMany()
.HasForeignKey("RImageId");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b =>
{
b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage")
.WithMany()
.HasForeignKey("RImageId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null)
.WithMany("Permissions")
.HasForeignKey("RAppRoleId");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null)
.WithMany("Images")
.HasForeignKey("RArtifactItemRecordId");
});
#pragma warning restore 612, 618
}
}
}