divan/RMuseum/Migrations/20210128111216_PoemMusicTrack-Rejected.Designer.cs
Anas Rashid e8f2306422 Rename Ganjoor -> Diwan throughout the code
Projects (GanjooRazor -> DiwanRazor, GanjoorService.sln -> DiwanService.sln), files,
folders, classes, namespaces, settings, API routes (/api/diwan) and DB tables (Diwan*).
External addresses (ganjoor.net, github.com/ganjoor) unchanged. Migrations renamed
consistently (no pending model changes); requires a fresh database.
Upstream RUNNING_LOCALLY/SEMANTIC_SEARCH docs archived unmodified under docs/.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:49:01 +02:00

2073 lines
73 KiB
C#

// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using RMuseum.DbContext;
namespace RMuseum.Migrations
{
[DbContext(typeof(RMuseumDbContext))]
[Migration("20210128111216_PoemMusicTrack-Rejected")]
partial class PoemMusicTrackRejected
{
protected override void BuildTargetModel(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.Diwan.DiwanCat", 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("DiwanCategories");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanMetre", 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("DiwanMetres");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanPage", 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>("DiwanPageType")
.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("DiwanPages");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanPoem", 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?>("DiwanMetreId")
.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("DiwanMetreId");
b.ToTable("DiwanPoems");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanPoet", 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("DiwanPoets");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanVerse", 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("DiwanVerses");
});
modelBuilder.Entity("RMuseum.Models.Diwan.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?>("DiwanTrackId")
.HasColumnType("int");
b.Property<int?>("GolhaTrackId")
.HasColumnType("int");
b.Property<int>("PoemId")
.HasColumnType("int");
b.Property<bool>("Rejected")
.HasColumnType("bit");
b.Property<string>("RejectionCause")
.HasColumnType("nvarchar(max)");
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("DiwanTrackId");
b.HasIndex("GolhaTrackId");
b.HasIndex("PoemId");
b.HasIndex("SingerId");
b.HasIndex("SuggestedById");
b.ToTable("DiwanPoemMusicTracks");
});
modelBuilder.Entity("RMuseum.Models.DiwanAudio.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>("DiwanAudioId")
.HasColumnType("int");
b.Property<int>("DiwanPostId")
.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("DiwanPostId");
b.HasIndex("OwnerId");
b.HasIndex("ReviewerId");
b.ToTable("Recitations");
});
modelBuilder.Entity("RMuseum.Models.DiwanAudio.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.DiwanAudio.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.DiwanIntegration.DiwanLink", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("ArtifactId")
.HasColumnType("uniqueidentifier");
b.Property<bool>("DisplayOnPage")
.HasColumnType("bit");
b.Property<int>("DiwanPostId")
.HasColumnType("int");
b.Property<string>("DiwanTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("DiwanUrl")
.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("DiwanLinks");
});
modelBuilder.Entity("RMuseum.Models.DiwanIntegration.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>("DiwanPostId")
.HasColumnType("int");
b.Property<string>("DiwanTitle")
.HasColumnType("nvarchar(max)");
b.Property<string>("DiwanUrl")
.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.DiwanAlbum", 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("DiwanAlbum");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.DiwanSinger", 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("DiwanSingers");
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.DiwanTrack", 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("DiwanMusicCatalogueTracks");
});
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.Diwan.DiwanCat", b =>
{
b.HasOne("RMuseum.Models.Diwan.DiwanCat", "Parent")
.WithMany()
.HasForeignKey("ParentId");
b.HasOne("RMuseum.Models.Diwan.DiwanPoet", "Poet")
.WithMany()
.HasForeignKey("PoetId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanPage", b =>
{
b.HasOne("RMuseum.Models.Diwan.DiwanCat", "Cat")
.WithMany()
.HasForeignKey("CatId");
b.HasOne("RMuseum.Models.Diwan.DiwanPage", "Parent")
.WithMany()
.HasForeignKey("ParentId");
b.HasOne("RMuseum.Models.Diwan.DiwanPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId");
b.HasOne("RMuseum.Models.Diwan.DiwanPoet", "Poet")
.WithMany()
.HasForeignKey("PoetId");
b.HasOne("RMuseum.Models.Diwan.DiwanPoet", "SecondPoet")
.WithMany()
.HasForeignKey("SecondPoetId");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanPoem", b =>
{
b.HasOne("RMuseum.Models.Diwan.DiwanCat", "Cat")
.WithMany()
.HasForeignKey("CatId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.Diwan.DiwanMetre", "DiwanMetre")
.WithMany()
.HasForeignKey("DiwanMetreId");
});
modelBuilder.Entity("RMuseum.Models.Diwan.DiwanVerse", b =>
{
b.HasOne("RMuseum.Models.Diwan.DiwanPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.Diwan.PoemMusicTrack", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.DiwanTrack", "DiwanTrack")
.WithMany()
.HasForeignKey("DiwanTrackId");
b.HasOne("RMuseum.Models.MusicCatalogue.GolhaTrack", "GolhaTrack")
.WithMany()
.HasForeignKey("GolhaTrackId");
b.HasOne("RMuseum.Models.Diwan.DiwanPoem", "Poem")
.WithMany()
.HasForeignKey("PoemId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("RMuseum.Models.MusicCatalogue.DiwanSinger", "Singer")
.WithMany()
.HasForeignKey("SingerId");
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy")
.WithMany()
.HasForeignKey("SuggestedById");
});
modelBuilder.Entity("RMuseum.Models.DiwanAudio.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.DiwanAudio.RecitationPublishingTracker", b =>
{
b.HasOne("RMuseum.Models.DiwanAudio.Recitation", "PoemNarration")
.WithMany()
.HasForeignKey("PoemNarrationId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.DiwanAudio.UserRecitationProfile", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.DiwanIntegration.DiwanLink", 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.DiwanIntegration.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.DiwanAlbum", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.DiwanSinger", "Singer")
.WithMany("Albums")
.HasForeignKey("SingerId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("RMuseum.Models.MusicCatalogue.DiwanTrack", b =>
{
b.HasOne("RMuseum.Models.MusicCatalogue.DiwanAlbum", "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.DiwanSinger", "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
}
}
}