From f19f22438e1d0cd27633a508cd8706f16e1ffa33 Mon Sep 17 00:00:00 2001 From: Hamid Reza Mohammadi Date: Fri, 17 Dec 2021 18:13:42 +0330 Subject: [PATCH] #263 rolling back webp conversion code --- RMuseum/Controllers/ArtifactController.cs | 25 - RMuseum/DbContext/RMuseumDbContext.cs | 5 - .../20211217120953_WebpLogModel.Designer.cs | 3552 ------------- .../Migrations/20211217120953_WebpLogModel.cs | 47 - .../RMuseumDbContextModelSnapshot.cs | 4611 ++++++++--------- RMuseum/Models/Artifact/WebpConvertionLog.cs | 45 - RMuseum/RMuseum.csproj | 2 - RMuseum/RMuseum.xml | 66 - RMuseum/Services/IArtifactService.cs | 8 +- .../ArtifactService-ConvertToWebp.cs | 123 - 10 files changed, 2286 insertions(+), 6198 deletions(-) delete mode 100644 RMuseum/Migrations/20211217120953_WebpLogModel.Designer.cs delete mode 100644 RMuseum/Migrations/20211217120953_WebpLogModel.cs delete mode 100644 RMuseum/Models/Artifact/WebpConvertionLog.cs delete mode 100644 RMuseum/Services/Implementation/ArtifactService-Partials/ArtifactService-ConvertToWebp.cs diff --git a/RMuseum/Controllers/ArtifactController.cs b/RMuseum/Controllers/ArtifactController.cs index 2a84011d..2c90d8a6 100644 --- a/RMuseum/Controllers/ArtifactController.cs +++ b/RMuseum/Controllers/ArtifactController.cs @@ -1974,31 +1974,6 @@ namespace RMuseum.Controllers return BadRequest(exp.ToString()); } } - - /// - /// convert original images to webp - /// - /// - [HttpPost("webpconvert")] - [Authorize(Policy = RMuseumSecurableItem.ArtifactEntityShortName + ":" + RMuseumSecurableItem.ImportOperationShortName)] - [ProducesResponseType((int)HttpStatusCode.OK)] - [ProducesResponseType((int)HttpStatusCode.BadRequest, Type = typeof(string))] - [ProducesResponseType((int)HttpStatusCode.Unauthorized)] - public IActionResult StartConvertingOriginalImagesToWebp() - { - try - { - var res = _artifactService.StartConvertingOriginalImagesToWebp(); - if (!string.IsNullOrEmpty(res.ExceptionString)) - return BadRequest(res.ExceptionString); - return Ok(); - } - catch (Exception exp) - { - return BadRequest(exp.ToString()); - } - } - /// /// readonly mode /// diff --git a/RMuseum/DbContext/RMuseumDbContext.cs b/RMuseum/DbContext/RMuseumDbContext.cs index fc47db53..23ea45b1 100644 --- a/RMuseum/DbContext/RMuseumDbContext.cs +++ b/RMuseum/DbContext/RMuseumDbContext.cs @@ -400,10 +400,5 @@ namespace RMuseum.DbContext /// public DbSet RecitationErrorReports { get; set; } - /// - /// webp convertion log - /// - public DbSet WebpConvertionLogs { get; set; } - } } diff --git a/RMuseum/Migrations/20211217120953_WebpLogModel.Designer.cs b/RMuseum/Migrations/20211217120953_WebpLogModel.Designer.cs deleted file mode 100644 index f5317543..00000000 --- a/RMuseum/Migrations/20211217120953_WebpLogModel.Designer.cs +++ /dev/null @@ -1,3552 +0,0 @@ -// -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; - -#nullable disable - -namespace RMuseum.Migrations -{ - [DbContext(typeof(RMuseumDbContext))] - [Migration("20211217120953_WebpLogModel")] - partial class WebpLogModel - { - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "6.0.0") - .HasAnnotation("Relational:MaxIdentifierLength", 128); - - SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("ClaimType") - .HasColumnType("nvarchar(max)"); - - b.Property("ClaimValue") - .HasColumnType("nvarchar(max)"); - - b.Property("RoleId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("RoleId"); - - b.ToTable("AspNetRoleClaims", (string)null); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("ClaimType") - .HasColumnType("nvarchar(max)"); - - b.Property("ClaimValue") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("UserId"); - - b.ToTable("AspNetUserClaims", (string)null); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => - { - b.Property("LoginProvider") - .HasColumnType("nvarchar(450)"); - - b.Property("ProviderKey") - .HasColumnType("nvarchar(450)"); - - b.Property("ProviderDisplayName") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("LoginProvider", "ProviderKey"); - - b.HasIndex("UserId"); - - b.ToTable("AspNetUserLogins", (string)null); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => - { - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.Property("RoleId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("UserId", "RoleId"); - - b.HasIndex("RoleId"); - - b.ToTable("AspNetUserRoles", (string)null); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => - { - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.Property("LoginProvider") - .HasColumnType("nvarchar(450)"); - - b.Property("Name") - .HasColumnType("nvarchar(450)"); - - b.Property("Value") - .HasColumnType("nvarchar(max)"); - - b.HasKey("UserId", "LoginProvider", "Name"); - - b.ToTable("AspNetUserTokens", (string)null); - }); - - modelBuilder.Entity("RMuseum.Models.Accounting.DonationExpenditure", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Amount") - .HasColumnType("decimal(18,2)"); - - b.Property("GanjoorDonationId") - .HasColumnType("int"); - - b.Property("GanjoorExpenseId") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorDonationId"); - - b.HasIndex("GanjoorExpenseId"); - - b.ToTable("DonationExpenditure"); - }); - - modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorDonation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Amount") - .HasColumnType("decimal(18,2)"); - - b.Property("AmountString") - .HasColumnType("nvarchar(max)"); - - b.Property("DateString") - .HasColumnType("nvarchar(max)"); - - b.Property("DonorLink") - .HasColumnType("nvarchar(max)"); - - b.Property("DonorName") - .HasColumnType("nvarchar(max)"); - - b.Property("ExpenditureDesc") - .HasColumnType("nvarchar(max)"); - - b.Property("ImportedRecord") - .HasColumnType("bit"); - - b.Property("RecordDate") - .HasColumnType("datetime2"); - - b.Property("Remaining") - .HasColumnType("decimal(18,2)"); - - b.Property("Unit") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GanjoorDonations"); - }); - - modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorExpense", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Amount") - .HasColumnType("decimal(18,2)"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("ExpenseDate") - .HasColumnType("datetime2"); - - b.Property("Unit") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GanjoorExpenses"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("CoverImageIndex") - .HasColumnType("int"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("LastModified") - .HasColumnType("datetime2"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("Order") - .HasColumnType("int"); - - b.Property("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("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("CoverImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("CoverItemIndex") - .HasColumnType("int"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("ItemCount") - .HasColumnType("int"); - - b.Property("LastModified") - .HasColumnType("datetime2"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("Status") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("CoverImageId"); - - b.HasIndex("FriendlyUrl") - .IsUnique() - .HasFilter("[FriendlyUrl] IS NOT NULL"); - - b.HasIndex("LastModified"); - - b.HasIndex("CoverItemIndex", "Status"); - - b.ToTable("Artifacts"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RTag", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("GlobalValue") - .HasColumnType("bit"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("Order") - .HasColumnType("int"); - - b.Property("PluralName") - .HasColumnType("nvarchar(max)"); - - b.Property("PluralNameInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("TagType") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("FriendlyUrl"); - - b.ToTable("Tags"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("Order") - .HasColumnType("int"); - - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("RTagId") - .HasColumnType("uniqueidentifier"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("Value") - .HasColumnType("nvarchar(max)"); - - b.Property("ValueInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("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.Artifact.WebpConvertionLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("FinishTime") - .HasColumnType("datetime2"); - - b.Property("OriginalFileSizeInByte") - .HasColumnType("bigint"); - - b.Property("PictureId") - .HasColumnType("uniqueidentifier"); - - b.Property("StartTime") - .HasColumnType("datetime2"); - - b.Property("TargetFileSizeInByte") - .HasColumnType("bigint"); - - b.HasKey("Id"); - - b.HasIndex("PictureId"); - - b.ToTable("WebpConvertionLogs"); - }); - - modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("Note") - .HasColumnType("nvarchar(max)"); - - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("RBookmarkType") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("RAppUserId"); - - b.HasIndex("RArtifactItemRecordId"); - - b.HasIndex("RArtifactMasterRecordId"); - - b.ToTable("UserBookmarks"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCachedRelatedPoem", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("HtmlExcerpt") - .HasColumnType("nvarchar(max)"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("PoetId") - .HasColumnType("int"); - - b.Property("PoetImageUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("PoetMorePoemsLikeThisCount") - .HasColumnType("int"); - - b.Property("PoetName") - .HasColumnType("nvarchar(max)"); - - b.Property("RelationOrder") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("FullUrl"); - - b.HasIndex("PoemId"); - - b.ToTable("GanjoorCachedRelatedPoems"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("ParentId") - .HasColumnType("int"); - - b.Property("PoetId") - .HasColumnType("int"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("FullUrl"); - - b.HasIndex("PoetId"); - - b.HasIndex("ParentId", "PoetId"); - - SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("ParentId", "PoetId"), new[] { "Id" }); - - b.ToTable("GanjoorCategories"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCentury", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("EndYear") - .HasColumnType("int"); - - b.Property("HalfCenturyOrder") - .HasColumnType("int"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("ShowInTimeLine") - .HasColumnType("bit"); - - b.Property("StartYear") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.ToTable("GanjoorCenturies"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCenturyPoet", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("GanjoorCenturyId") - .HasColumnType("int"); - - b.Property("PoetId") - .HasColumnType("int"); - - b.Property("PoetOrder") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorCenturyId"); - - b.HasIndex("PoetId"); - - b.ToTable("GanjoorCenturyPoet"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("AuthorEmail") - .HasColumnType("nvarchar(max)"); - - b.Property("AuthorIpAddress") - .HasColumnType("nvarchar(max)"); - - b.Property("AuthorName") - .HasColumnType("nvarchar(max)"); - - b.Property("AuthorUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("CommentDate") - .HasColumnType("datetime2"); - - b.Property("CoupletIndex") - .HasColumnType("int"); - - b.Property("HtmlComment") - .HasColumnType("nvarchar(max)"); - - b.Property("InReplyToId") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Verse12d") - .HasColumnType("int"); - - b.Property("Verse1Id") - .HasColumnType("int"); - - b.Property("Verse2Id") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("CommentDate"); - - b.HasIndex("InReplyToId"); - - b.HasIndex("PoemId"); - - b.HasIndex("Status"); - - b.HasIndex("UserId"); - - b.HasIndex("Verse1Id"); - - b.HasIndex("Verse2Id"); - - b.ToTable("GanjoorComments"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("GanjoorCommentId") - .HasColumnType("int"); - - b.Property("ReasonCode") - .HasColumnType("nvarchar(max)"); - - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); - - b.Property("ReportedById") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorCommentId"); - - b.HasIndex("ReportedById"); - - b.ToTable("GanjoorReportedComments"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorGeoLocation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Latitude") - .HasColumnType("decimal(12,9)"); - - b.Property("Longitude") - .HasColumnType("decimal(12,9)"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GanjoorGeoLocations"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorHealthCheckError", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("BrokenLink") - .HasColumnType("bit"); - - b.Property("MulipleTargets") - .HasColumnType("bit"); - - b.Property("ReferrerPageUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("TargetUrl") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GanjoorHealthCheckErrors"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorLanguage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Code") - .HasColumnType("nvarchar(max)"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasColumnType("nvarchar(450)"); - - b.Property("NativeName") - .HasColumnType("nvarchar(max)"); - - b.Property("RightToLeft") - .HasColumnType("bit"); - - b.HasKey("Id"); - - b.HasIndex("Name") - .IsUnique() - .HasFilter("[Name] IS NOT NULL"); - - b.ToTable("GanjoorLanguages"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorMetre", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); - - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); - - b.Property("VerseCount") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.ToTable("GanjoorMetres"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorNumbering", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("EndCatId") - .HasColumnType("int"); - - b.Property("LastCountingDate") - .HasColumnType("datetime2"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("StartCatId") - .HasColumnType("int"); - - b.Property("TotalCouplets") - .HasColumnType("int"); - - b.Property("TotalLines") - .HasColumnType("int"); - - b.Property("TotalParagraphs") - .HasColumnType("int"); - - b.Property("TotalVerses") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("EndCatId"); - - b.HasIndex("StartCatId"); - - b.ToTable("GanjoorNumberings"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("CatId") - .HasColumnType("int"); - - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("GanjoorPageType") - .HasColumnType("int"); - - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); - - b.Property("PageOrder") - .HasColumnType("int"); - - b.Property("ParentId") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("PoetId") - .HasColumnType("int"); - - b.Property("PostDate") - .HasColumnType("datetime2"); - - b.Property("Published") - .HasColumnType("bit"); - - b.Property("SecondPoetId") - .HasColumnType("int"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("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.GanjoorPageSnapshot", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("GanjoorPageId") - .HasColumnType("int"); - - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); - - b.Property("MadeObsoleteByUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Note") - .HasColumnType("nvarchar(max)"); - - b.Property("OldTag") - .HasColumnType("nvarchar(max)"); - - b.Property("OldTagPageUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("RecordDate") - .HasColumnType("datetime2"); - - b.Property("RhymeLetters") - .HasColumnType("nvarchar(max)"); - - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); - - b.Property("SourceName") - .HasColumnType("nvarchar(max)"); - - b.Property("SourceUrlSlug") - .HasColumnType("nvarchar(max)"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorPageId"); - - b.HasIndex("MadeObsoleteByUserId"); - - b.ToTable("GanjoorPageSnapshots"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("CatId") - .HasColumnType("int"); - - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); - - b.Property("GanjoorMetreId") - .HasColumnType("int"); - - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); - - b.Property("OldTag") - .HasColumnType("nvarchar(max)"); - - b.Property("OldTagPageUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("PlainText") - .HasColumnType("nvarchar(max)"); - - b.Property("RhymeLetters") - .HasColumnType("nvarchar(max)"); - - b.Property("SourceName") - .HasColumnType("nvarchar(max)"); - - b.Property("SourceUrlSlug") - .HasColumnType("nvarchar(max)"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("CatId"); - - b.HasIndex("FullUrl"); - - b.HasIndex("GanjoorMetreId"); - - b.HasIndex("Id"); - - b.ToTable("GanjoorPoems"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("AffectedThePoem") - .HasColumnType("bit"); - - b.Property("ApplicationOrder") - .HasColumnType("int"); - - b.Property("Date") - .HasColumnType("datetime2"); - - b.Property("Note") - .HasColumnType("nvarchar(max)"); - - b.Property("OriginalRhythm") - .HasColumnType("nvarchar(max)"); - - b.Property("OriginalTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("Result") - .HasColumnType("int"); - - b.Property("ReviewDate") - .HasColumnType("datetime2"); - - b.Property("ReviewNote") - .HasColumnType("nvarchar(max)"); - - b.Property("Reviewed") - .HasColumnType("bit"); - - b.Property("ReviewerUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); - - b.Property("RhythmResult") - .HasColumnType("int"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("PoemId"); - - b.HasIndex("ReviewerUserId"); - - b.HasIndex("UserId"); - - b.ToTable("GanjoorPoemCorrections"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("LanguageId") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("Published") - .HasColumnType("bit"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("LanguageId"); - - b.HasIndex("PoemId"); - - b.HasIndex("UserId"); - - b.ToTable("GanjoorPoemTranslations"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("BirthLocationId") - .HasColumnType("int"); - - b.Property("BirthYearInLHijri") - .HasColumnType("int"); - - b.Property("DeathLocationId") - .HasColumnType("int"); - - b.Property("DeathYearInLHijri") - .HasColumnType("int"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("Nickname") - .HasColumnType("nvarchar(max)"); - - b.Property("PinOrder") - .HasColumnType("int"); - - b.Property("Published") - .HasColumnType("bit"); - - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("ValidBirthDate") - .HasColumnType("bit"); - - b.Property("ValidDeathDate") - .HasColumnType("bit"); - - b.HasKey("Id"); - - b.HasIndex("BirthLocationId"); - - b.HasIndex("DeathLocationId"); - - b.HasIndex("RImageId"); - - b.HasIndex("Published", "Id"); - - SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("Published", "Id"), new[] { "Name", "Nickname", "RImageId" }); - - b.ToTable("GanjoorPoets"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Active") - .HasColumnType("bit"); - - b.Property("AlternateText") - .HasColumnType("nvarchar(max)"); - - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("TargetUrl") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("RImageId"); - - b.ToTable("GanjoorSiteBanners"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorUserBookmark", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("CoupletIndex") - .HasColumnType("int"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Verse2Id") - .HasColumnType("int"); - - b.Property("VerseId") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("PoemId"); - - b.HasIndex("UserId", "PoemId", "CoupletIndex"); - - b.ToTable("GanjoorUserBookmarks"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("CoupletIndex") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("Text") - .HasColumnType("nvarchar(max)"); - - b.Property("VOrder") - .HasColumnType("int"); - - b.Property("VersePosition") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("PoemId"); - - b.HasIndex("PoemId", "CoupletIndex"); - - b.ToTable("GanjoorVerses"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseNumber", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("CoupletIndex") - .HasColumnType("int"); - - b.Property("IsPoemVerse") - .HasColumnType("bit"); - - b.Property("Number") - .HasColumnType("int"); - - b.Property("NumberingId") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("SameTypeNumber") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("PoemId", "CoupletIndex"); - - b.HasIndex("NumberingId", "PoemId", "CoupletIndex") - .IsUnique(); - - b.ToTable("GanjoorVerseNumbers"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseTranslation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("GanjoorPoemTranslationId") - .HasColumnType("int"); - - b.Property("TText") - .HasColumnType("nvarchar(max)"); - - b.Property("VerseId") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorPoemTranslationId"); - - b.HasIndex("VerseId"); - - b.ToTable("GanjoorVerseTranslation"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseVOrderText", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("CoupletIndex") - .HasColumnType("int"); - - b.Property("GanjoorPoemCorrectionId") - .HasColumnType("int"); - - b.Property("OriginalText") - .HasColumnType("nvarchar(max)"); - - b.Property("Result") - .HasColumnType("int"); - - b.Property("ReviewNote") - .HasColumnType("nvarchar(max)"); - - b.Property("Text") - .HasColumnType("nvarchar(max)"); - - b.Property("VORder") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorPoemCorrectionId"); - - b.ToTable("GanjoorVerseVOrderText"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("AlbumName") - .HasColumnType("nvarchar(max)"); - - b.Property("AlbumUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ApprovalDate") - .HasColumnType("datetime2"); - - b.Property("Approved") - .HasColumnType("bit"); - - b.Property("ArtistName") - .HasColumnType("nvarchar(max)"); - - b.Property("ArtistUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("BrokenLink") - .HasColumnType("bit"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("GanjoorTrackId") - .HasColumnType("int"); - - b.Property("GolhaTrackId") - .HasColumnType("int"); - - b.Property("PoemId") - .HasColumnType("int"); - - b.Property("Rejected") - .HasColumnType("bit"); - - b.Property("RejectionCause") - .HasColumnType("nvarchar(max)"); - - b.Property("SingerId") - .HasColumnType("int"); - - b.Property("SongOrder") - .HasColumnType("int"); - - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); - - b.Property("TrackName") - .HasColumnType("nvarchar(max)"); - - b.Property("TrackType") - .HasColumnType("int"); - - b.Property("TrackUrl") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorTrackId"); - - b.HasIndex("GolhaTrackId"); - - b.HasIndex("PoemId"); - - b.HasIndex("SingerId"); - - b.HasIndex("SuggestedById"); - - b.HasIndex("Approved", "Rejected"); - - b.ToTable("GanjoorPoemMusicTracks"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("AudioArtist") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioArtistUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioOrder") - .HasColumnType("int"); - - b.Property("AudioSrc") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioSrcUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioSyncStatus") - .HasColumnType("int"); - - b.Property("AudioTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("FileLastUpdated") - .HasColumnType("datetime2"); - - b.Property("FileNameWithoutExtension") - .HasColumnType("nvarchar(max)"); - - b.Property("GanjoorAudioId") - .HasColumnType("int"); - - b.Property("GanjoorPostId") - .HasColumnType("int"); - - b.Property("LegacyAudioGuid") - .HasColumnType("uniqueidentifier"); - - b.Property("LocalMp3FilePath") - .HasColumnType("nvarchar(max)"); - - b.Property("LocalXmlFilePath") - .HasColumnType("nvarchar(max)"); - - b.Property("Mp3FileCheckSum") - .HasColumnType("nvarchar(max)"); - - b.Property("Mp3SizeInBytes") - .HasColumnType("int"); - - b.Property("OggSizeInBytes") - .HasColumnType("int"); - - b.Property("OwnerId") - .HasColumnType("uniqueidentifier"); - - b.Property("ReviewDate") - .HasColumnType("datetime2"); - - b.Property("ReviewMsg") - .HasColumnType("nvarchar(max)"); - - b.Property("ReviewStatus") - .HasColumnType("int"); - - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); - - b.Property("SoundFilesFolder") - .HasColumnType("nvarchar(max)"); - - b.Property("UploadDate") - .HasColumnType("datetime2"); - - b.HasKey("Id"); - - b.HasIndex("GanjoorAudioId"); - - b.HasIndex("GanjoorPostId"); - - b.HasIndex("OwnerId"); - - b.HasIndex("ReviewerId"); - - b.HasIndex("ReviewStatus", "GanjoorPostId"); - - b.ToTable("Recitations"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationErrorReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); - - b.Property("RecitationId") - .HasColumnType("int"); - - b.Property("ReporterId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("RecitationId"); - - b.HasIndex("ReporterId"); - - b.ToTable("RecitationErrorReports"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("FinishDate") - .HasColumnType("datetime2"); - - b.Property("Finished") - .HasColumnType("bit"); - - b.Property("FirstDbUpdated") - .HasColumnType("bit"); - - b.Property("LastException") - .HasColumnType("nvarchar(max)"); - - b.Property("Mp3FileCopied") - .HasColumnType("bit"); - - b.Property("PoemNarrationId") - .HasColumnType("int"); - - b.Property("SecondDbUpdated") - .HasColumnType("bit"); - - b.Property("StartDate") - .HasColumnType("datetime2"); - - b.Property("XmlFileCopied") - .HasColumnType("bit"); - - b.HasKey("Id"); - - b.HasIndex("PoemNarrationId"); - - b.ToTable("RecitationPublishingTrackers"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ArtistName") - .HasColumnType("nvarchar(max)"); - - b.Property("ArtistUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioSrc") - .HasColumnType("nvarchar(max)"); - - b.Property("AudioSrcUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("FileSuffixWithoutDash") - .HasColumnType("nvarchar(max)"); - - b.Property("IsDefault") - .HasColumnType("bit"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("UserId"); - - b.ToTable("UserRecitationProfiles"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); - - b.Property("DisplayOnPage") - .HasColumnType("bit"); - - b.Property("GanjoorPostId") - .HasColumnType("int"); - - b.Property("GanjoorTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("GanjoorUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ItemId") - .HasColumnType("uniqueidentifier"); - - b.Property("LinkToOriginalSource") - .HasColumnType("bit"); - - b.Property("OriginalSourceUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ReviewDate") - .HasColumnType("datetime2"); - - b.Property("ReviewResult") - .HasColumnType("int"); - - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); - - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); - - b.Property("SuggestionDate") - .HasColumnType("datetime2"); - - b.Property("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("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("AltText") - .HasColumnType("nvarchar(max)"); - - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); - - b.Property("GanjoorPostId") - .HasColumnType("int"); - - b.Property("GanjoorTitle") - .HasColumnType("nvarchar(max)"); - - b.Property("GanjoorUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ItemId") - .HasColumnType("uniqueidentifier"); - - b.Property("LinkType") - .HasColumnType("int"); - - b.Property("PinterestImageUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("PinterestUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ReviewDate") - .HasColumnType("datetime2"); - - b.Property("ReviewDesc") - .HasColumnType("nvarchar(max)"); - - b.Property("ReviewResult") - .HasColumnType("int"); - - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); - - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); - - b.Property("SuggestionDate") - .HasColumnType("datetime2"); - - b.Property("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("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); - - b.Property("EndTime") - .HasColumnType("datetime2"); - - b.Property("Exception") - .HasColumnType("nvarchar(max)"); - - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("JobType") - .HasColumnType("int"); - - b.Property("ProgressPercent") - .HasColumnType("decimal(18,2)"); - - b.Property("QueueTime") - .HasColumnType("datetime2"); - - b.Property("ResourceNumber") - .HasColumnType("nvarchar(max)"); - - b.Property("SrcContent") - .HasColumnType("nvarchar(max)"); - - b.Property("SrcUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("StartTime") - .HasColumnType("datetime2"); - - b.Property("Status") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("ArtifactId"); - - b.ToTable("ImportJobs"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("SingerId") - .HasColumnType("int"); - - b.Property("Url") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("SingerId"); - - b.ToTable("GanjoorAlbum"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Name") - .HasColumnType("nvarchar(450)"); - - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("Url") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("Name"); - - b.HasIndex("RImageId"); - - b.ToTable("GanjoorSingers"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("AlbumId") - .HasColumnType("int"); - - b.Property("BlockReason") - .HasColumnType("nvarchar(max)"); - - b.Property("Blocked") - .HasColumnType("bit"); - - b.Property("Name") - .HasColumnType("nvarchar(450)"); - - b.Property("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("Id") - .HasColumnType("int"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GolhaCollections"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("GolhaCollectionId") - .HasColumnType("int"); - - b.Property("Mp3") - .HasColumnType("nvarchar(max)"); - - b.Property("ProgramOrder") - .HasColumnType("int"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("Url") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("GolhaCollectionId"); - - b.ToTable("GolhaPrograms"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b => - { - b.Property("Id") - .HasColumnType("int"); - - b.Property("BlockReason") - .HasColumnType("nvarchar(max)"); - - b.Property("Blocked") - .HasColumnType("bit"); - - b.Property("GolhaProgramId") - .HasColumnType("int"); - - b.Property("SingerId") - .HasColumnType("int"); - - b.Property("Timing") - .HasColumnType("nvarchar(max)"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("TrackNo") - .HasColumnType("int"); - - b.HasKey("Id"); - - b.HasIndex("GolhaProgramId"); - - b.HasIndex("SingerId"); - - b.ToTable("GolhaTracks"); - }); - - modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("HtmlContent") - .HasColumnType("nvarchar(max)"); - - b.Property("LastModified") - .HasColumnType("datetime2"); - - b.Property("Modified") - .HasColumnType("bit"); - - b.Property("NoteType") - .HasColumnType("int"); - - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("ReferenceNoteId") - .HasColumnType("uniqueidentifier"); - - b.Property("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.Note.RUserNoteAbuseReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("NoteId") - .HasColumnType("uniqueidentifier"); - - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); - - b.Property("ReporterId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("NoteId"); - - b.HasIndex("ReporterId"); - - b.ToTable("ReportedUserNotes"); - }); - - modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ProcessEndTime") - .HasColumnType("datetime2"); - - b.Property("ProcessProgress") - .HasColumnType("int"); - - b.Property("ProcessStartTime") - .HasColumnType("datetime2"); - - b.Property("SessionType") - .HasColumnType("int"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("UploadEndTime") - .HasColumnType("datetime2"); - - b.Property("UploadStartTime") - .HasColumnType("datetime2"); - - b.Property("UseId") - .HasColumnType("uniqueidentifier"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("UserId"); - - b.ToTable("UploadSessions"); - }); - - modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ContentDisposition") - .HasColumnType("nvarchar(max)"); - - b.Property("ContentType") - .HasColumnType("nvarchar(max)"); - - b.Property("FileName") - .HasColumnType("nvarchar(max)"); - - b.Property("FilePath") - .HasColumnType("nvarchar(max)"); - - b.Property("Length") - .HasColumnType("bigint"); - - b.Property("MP3FileCheckSum") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("ProcessResult") - .HasColumnType("bit"); - - b.Property("ProcessResultMsg") - .HasColumnType("nvarchar(max)"); - - b.Property("UploadSessionId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("UploadSessionId"); - - b.ToTable("UploadedFiles"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Audit.Db.REvent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("Duration") - .HasColumnType("int"); - - b.Property("EndDate") - .HasColumnType("datetime2"); - - b.Property("EventType") - .HasColumnType("nvarchar(max)"); - - b.Property("IpAddress") - .HasColumnType("nvarchar(max)"); - - b.Property("JsonData") - .HasColumnType("nvarchar(max)"); - - b.Property("RequestUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("ResponseStatusCode") - .HasColumnType("int"); - - b.Property("StartDate") - .HasColumnType("datetime2"); - - b.Property("UserName") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("AuditLogs"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.BannedEmail", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("NormalizedEmail") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("BannedEmails"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ConcurrencyStamp") - .IsConcurrencyToken() - .HasColumnType("nvarchar(max)"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.Property("NormalizedName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.HasKey("Id"); - - b.HasIndex("NormalizedName") - .IsUnique() - .HasDatabaseName("RoleNameIndex") - .HasFilter("[NormalizedName] IS NOT NULL"); - - b.ToTable("AspNetRoles", (string)null); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("AccessFailedCount") - .HasColumnType("int"); - - b.Property("Bio") - .HasColumnType("nvarchar(max)"); - - b.Property("ConcurrencyStamp") - .IsConcurrencyToken() - .HasColumnType("nvarchar(max)"); - - b.Property("CreateDate") - .HasColumnType("datetime2"); - - b.Property("Email") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.Property("EmailConfirmed") - .HasColumnType("bit"); - - b.Property("FirstName") - .HasColumnType("nvarchar(max)"); - - b.Property("LockoutEnabled") - .HasColumnType("bit"); - - b.Property("LockoutEnd") - .HasColumnType("datetimeoffset"); - - b.Property("LockoutMessage") - .HasColumnType("nvarchar(max)"); - - b.Property("NickName") - .HasColumnType("nvarchar(max)"); - - b.Property("NormalizedEmail") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.Property("NormalizedUserName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.Property("PasswordHash") - .HasColumnType("nvarchar(max)"); - - b.Property("PhoneNumber") - .HasColumnType("nvarchar(max)"); - - b.Property("PhoneNumberConfirmed") - .HasColumnType("bit"); - - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("ScreenName") - .HasColumnType("nvarchar(max)"); - - b.Property("SecurityStamp") - .HasColumnType("nvarchar(max)"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("SureName") - .HasColumnType("nvarchar(max)"); - - b.Property("TwoFactorEnabled") - .HasColumnType("bit"); - - b.Property("UserName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); - - b.Property("Website") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("NormalizedEmail") - .HasDatabaseName("EmailIndex"); - - b.HasIndex("NormalizedUserName") - .IsUnique() - .HasDatabaseName("UserNameIndex") - .HasFilter("[NormalizedUserName] IS NOT NULL"); - - b.HasIndex("RImageId"); - - b.ToTable("AspNetUsers", (string)null); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); - - b.Property("Value") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("RImageId"); - - b.ToTable("CaptchaImages"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("OperationShortName") - .HasColumnType("nvarchar(max)"); - - b.Property("RAppRoleId") - .HasColumnType("uniqueidentifier"); - - b.Property("SecurableItemShortName") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("RAppRoleId"); - - b.ToTable("Permissions"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ClientAppName") - .HasColumnType("nvarchar(max)"); - - b.Property("ClientIPAddress") - .HasColumnType("nvarchar(max)"); - - b.Property("Language") - .HasColumnType("nvarchar(max)"); - - b.Property("LastRenewal") - .HasColumnType("datetime2"); - - b.Property("LoginTime") - .HasColumnType("datetime2"); - - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Token") - .HasColumnType("nvarchar(max)"); - - b.Property("ValidUntil") - .HasColumnType("datetime2"); - - b.HasKey("Id"); - - b.HasIndex("RAppUserId"); - - b.ToTable("Sessions"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RUserBehaviourLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("UserId") - .HasColumnType("uniqueidentifier"); - - b.HasKey("Id"); - - b.HasIndex("UserId"); - - b.ToTable("UserBehaviourLogs"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RVerifyQueueItem", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ClientAppName") - .HasColumnType("nvarchar(max)"); - - b.Property("ClientIPAddress") - .HasColumnType("nvarchar(max)"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("Email") - .HasColumnType("nvarchar(max)"); - - b.Property("Language") - .HasColumnType("nvarchar(max)"); - - b.Property("PhoneNumber") - .HasColumnType("nvarchar(max)"); - - b.Property("QueueType") - .HasColumnType("int"); - - b.Property("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.RGenericOption", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("Name") - .HasColumnType("nvarchar(450)"); - - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); - - b.Property("Value") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.HasIndex("RAppUserId", "Name") - .IsUnique() - .HasFilter("[RAppUserId] IS NOT NULL AND [Name] IS NOT NULL"); - - b.ToTable("Options"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RLongRunningJobStatus", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("EndTime") - .HasColumnType("datetime2"); - - b.Property("Exception") - .HasColumnType("nvarchar(max)"); - - b.Property("Name") - .HasColumnType("nvarchar(max)"); - - b.Property("Progress") - .HasColumnType("float"); - - b.Property("StartTime") - .HasColumnType("datetime2"); - - b.Property("Step") - .HasColumnType("nvarchar(max)"); - - b.Property("Succeeded") - .HasColumnType("bit"); - - b.HasKey("Id"); - - b.ToTable("LongRunningJobs"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Image.RImage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("ContentType") - .HasColumnType("nvarchar(max)"); - - b.Property("DataTime") - .HasColumnType("datetime2"); - - b.Property("Discriminator") - .IsRequired() - .HasColumnType("nvarchar(max)"); - - b.Property("FileSizeInBytes") - .HasColumnType("bigint"); - - b.Property("FolderName") - .HasColumnType("nvarchar(max)"); - - b.Property("ImageHeight") - .HasColumnType("int"); - - b.Property("ImageWidth") - .HasColumnType("int"); - - b.Property("LastModified") - .HasColumnType("datetime2"); - - b.Property("OriginalFileName") - .HasColumnType("nvarchar(max)"); - - b.Property("StoredFileName") - .HasColumnType("nvarchar(max)"); - - b.HasKey("Id"); - - b.ToTable("GeneralImages"); - - b.HasDiscriminator("Discriminator").HasValue("RImage"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); - - b.Property("DateTime") - .HasColumnType("datetime2"); - - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("Subject") - .HasColumnType("nvarchar(max)"); - - b.Property("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("Description") - .HasColumnType("nvarchar(max)"); - - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); - - b.Property("LastModifiedMeta") - .HasColumnType("datetime2"); - - b.Property("NormalSizeImageHeight") - .HasColumnType("int"); - - b.Property("NormalSizeImageStoredFileName") - .HasColumnType("nvarchar(max)"); - - b.Property("NormalSizeImageWidth") - .HasColumnType("int"); - - b.Property("Order") - .HasColumnType("int"); - - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); - - b.Property("SrcUrl") - .HasColumnType("nvarchar(max)"); - - b.Property("Status") - .HasColumnType("int"); - - b.Property("ThumbnailImageHeight") - .HasColumnType("int"); - - b.Property("ThumbnailImageStoredFileName") - .HasColumnType("nvarchar(max)"); - - b.Property("ThumbnailImageWidth") - .HasColumnType("int"); - - b.Property("Title") - .HasColumnType("nvarchar(max)"); - - b.Property("TitleInEnglish") - .HasColumnType("nvarchar(max)"); - - b.HasIndex("RArtifactItemRecordId"); - - b.HasDiscriminator().HasValue("RPictureFile"); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) - .WithMany() - .HasForeignKey("RoleId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); - - modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", 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", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); - - modelBuilder.Entity("RMuseum.Models.Accounting.DonationExpenditure", b => - { - b.HasOne("RMuseum.Models.Accounting.GanjoorDonation", "GanjoorDonation") - .WithMany() - .HasForeignKey("GanjoorDonationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RMuseum.Models.Accounting.GanjoorExpense", null) - .WithMany("DonationExpenditures") - .HasForeignKey("GanjoorExpenseId"); - - b.Navigation("GanjoorDonation"); - }); - - 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(); - - b.Navigation("CoverImage"); - }); - - 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(); - - b.Navigation("RTag"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.WebpConvertionLog", b => - { - b.HasOne("RMuseum.Models.Artifact.RPictureFile", "Picture") - .WithMany() - .HasForeignKey("PictureId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Picture"); - }); - - 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"); - - b.Navigation("RAppUser"); - - b.Navigation("RArtifactItemRecord"); - - b.Navigation("RArtifactMasterRecord"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCachedRelatedPoem", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Poem"); - }); - - 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(); - - b.Navigation("Parent"); - - b.Navigation("Poet"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCenturyPoet", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCentury", null) - .WithMany("Poets") - .HasForeignKey("GanjoorCenturyId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") - .WithMany() - .HasForeignKey("PoetId"); - - b.Navigation("Poet"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "InReplyTo") - .WithMany() - .HasForeignKey("InReplyToId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse1") - .WithMany() - .HasForeignKey("Verse1Id"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse2") - .WithMany() - .HasForeignKey("Verse2Id"); - - b.Navigation("InReplyTo"); - - b.Navigation("Poem"); - - b.Navigation("User"); - - b.Navigation("Verse1"); - - b.Navigation("Verse2"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "GanjoorComment") - .WithMany() - .HasForeignKey("GanjoorCommentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReportedBy") - .WithMany() - .HasForeignKey("ReportedById"); - - b.Navigation("GanjoorComment"); - - b.Navigation("ReportedBy"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorNumbering", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "EndCat") - .WithMany() - .HasForeignKey("EndCatId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "StartCat") - .WithMany() - .HasForeignKey("StartCatId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("EndCat"); - - b.Navigation("StartCat"); - }); - - 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"); - - b.Navigation("Cat"); - - b.Navigation("Parent"); - - b.Navigation("Poem"); - - b.Navigation("Poet"); - - b.Navigation("SecondPoet"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPageSnapshot", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "GanjoorPage") - .WithMany() - .HasForeignKey("GanjoorPageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "MadeObsoleteByUser") - .WithMany() - .HasForeignKey("MadeObsoleteByUserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("GanjoorPage"); - - b.Navigation("MadeObsoleteByUser"); - }); - - 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"); - - b.Navigation("Cat"); - - b.Navigation("GanjoorMetre"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReviewerUser") - .WithMany() - .HasForeignKey("ReviewerUserId"); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Poem"); - - b.Navigation("ReviewerUser"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorLanguage", "Language") - .WithMany() - .HasForeignKey("LanguageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Language"); - - b.Navigation("Poem"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "BirthLocation") - .WithMany() - .HasForeignKey("BirthLocationId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "DeathLocation") - .WithMany() - .HasForeignKey("DeathLocationId"); - - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId"); - - b.Navigation("BirthLocation"); - - b.Navigation("DeathLocation"); - - b.Navigation("RImage"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("RImage"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorUserBookmark", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Poem"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Poem"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseNumber", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorNumbering", "Numbering") - .WithMany() - .HasForeignKey("NumberingId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Numbering"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseTranslation", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", null) - .WithMany("Verses") - .HasForeignKey("GanjoorPoemTranslationId"); - - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse") - .WithMany() - .HasForeignKey("VerseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Verse"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseVOrderText", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", null) - .WithMany("VerseOrderText") - .HasForeignKey("GanjoorPoemCorrectionId"); - }); - - 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"); - - b.Navigation("GanjoorTrack"); - - b.Navigation("GolhaTrack"); - - b.Navigation("Poem"); - - b.Navigation("Singer"); - - b.Navigation("SuggestedBy"); - }); - - 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"); - - b.Navigation("Owner"); - - b.Navigation("Reviewer"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationErrorReport", b => - { - b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "Recitation") - .WithMany() - .HasForeignKey("RecitationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") - .WithMany() - .HasForeignKey("ReporterId"); - - b.Navigation("Recitation"); - - b.Navigation("Reporter"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => - { - b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "PoemNarration") - .WithMany() - .HasForeignKey("PoemNarrationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("PoemNarration"); - }); - - modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - 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(); - - b.Navigation("Artifact"); - - b.Navigation("Item"); - - b.Navigation("Reviewer"); - - b.Navigation("SuggestedBy"); - }); - - 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"); - - b.Navigation("Artifact"); - - b.Navigation("Item"); - - b.Navigation("Reviewer"); - - b.Navigation("SuggestedBy"); - }); - - modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") - .WithMany() - .HasForeignKey("ArtifactId"); - - b.Navigation("Artifact"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") - .WithMany("Albums") - .HasForeignKey("SingerId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Singer"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId"); - - b.Navigation("RImage"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorAlbum", "Album") - .WithMany("Tracks") - .HasForeignKey("AlbumId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Album"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GolhaCollection", "GolhaCollection") - .WithMany("Programs") - .HasForeignKey("GolhaCollectionId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("GolhaCollection"); - }); - - 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"); - - b.Navigation("GolhaProgram"); - - b.Navigation("Singer"); - }); - - 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"); - - b.Navigation("RAppUser"); - - b.Navigation("RArtifactItemRecord"); - - b.Navigation("RArtifactMasterRecord"); - - b.Navigation("ReferenceNote"); - }); - - modelBuilder.Entity("RMuseum.Models.Note.RUserNoteAbuseReport", b => - { - b.HasOne("RMuseum.Models.Note.RUserNote", "Note") - .WithMany() - .HasForeignKey("NoteId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") - .WithMany() - .HasForeignKey("ReporterId"); - - b.Navigation("Note"); - - b.Navigation("Reporter"); - }); - - modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId"); - - b.Navigation("User"); - }); - - 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"); - - b.Navigation("RImage"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("RImage"); - }); - - 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(); - - b.Navigation("RAppUser"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RUserBehaviourLog", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RGenericOption", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") - .WithMany() - .HasForeignKey("RAppUserId"); - - b.Navigation("RAppUser"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) - .WithMany("Images") - .HasForeignKey("RArtifactItemRecordId"); - }); - - modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorExpense", b => - { - b.Navigation("DonationExpenditures"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => - { - b.Navigation("Images"); - - b.Navigation("Tags"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b => - { - b.Navigation("Items"); - - b.Navigation("Tags"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCentury", b => - { - b.Navigation("Poets"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.Navigation("VerseOrderText"); - }); - - modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.Navigation("Verses"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.Navigation("Tracks"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.Navigation("Albums"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b => - { - b.Navigation("Programs"); - }); - - modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.Navigation("Tracks"); - }); - - modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.Navigation("UploadedFiles"); - }); - - modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => - { - b.Navigation("Permissions"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/RMuseum/Migrations/20211217120953_WebpLogModel.cs b/RMuseum/Migrations/20211217120953_WebpLogModel.cs deleted file mode 100644 index 5d8c5864..00000000 --- a/RMuseum/Migrations/20211217120953_WebpLogModel.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace RMuseum.Migrations -{ - public partial class WebpLogModel : Migration - { - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "WebpConvertionLogs", - columns: table => new - { - Id = table.Column(type: "int", nullable: false) - .Annotation("SqlServer:Identity", "1, 1"), - PictureId = table.Column(type: "uniqueidentifier", nullable: false), - OriginalFileSizeInByte = table.Column(type: "bigint", nullable: false), - StartTime = table.Column(type: "datetime2", nullable: false), - TargetFileSizeInByte = table.Column(type: "bigint", nullable: false), - FinishTime = table.Column(type: "datetime2", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_WebpConvertionLogs", x => x.Id); - table.ForeignKey( - name: "FK_WebpConvertionLogs_GeneralImages_PictureId", - column: x => x.PictureId, - principalTable: "GeneralImages", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateIndex( - name: "IX_WebpConvertionLogs_PictureId", - table: "WebpConvertionLogs", - column: "PictureId"); - } - - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "WebpConvertionLogs"); - } - } -} diff --git a/RMuseum/Migrations/RMuseumDbContextModelSnapshot.cs b/RMuseum/Migrations/RMuseumDbContextModelSnapshot.cs index 83b4ac80..45289764 100644 --- a/RMuseum/Migrations/RMuseumDbContextModelSnapshot.cs +++ b/RMuseum/Migrations/RMuseumDbContextModelSnapshot.cs @@ -23,3527 +23,3486 @@ namespace RMuseum.Migrations SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("ClaimType") - .HasColumnType("nvarchar(max)"); + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); - b.Property("ClaimValue") - .HasColumnType("nvarchar(max)"); + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); - b.Property("RoleId") - .HasColumnType("uniqueidentifier"); + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RoleId"); + b.HasIndex("RoleId"); - b.ToTable("AspNetRoleClaims", (string)null); - }); + b.ToTable("AspNetRoleClaims", (string)null); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("ClaimType") - .HasColumnType("nvarchar(max)"); + b.Property("ClaimType") + .HasColumnType("nvarchar(max)"); - b.Property("ClaimValue") - .HasColumnType("nvarchar(max)"); + b.Property("ClaimValue") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("AspNetUserClaims", (string)null); - }); + b.ToTable("AspNetUserClaims", (string)null); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => - { - b.Property("LoginProvider") - .HasColumnType("nvarchar(450)"); + { + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); - b.Property("ProviderKey") - .HasColumnType("nvarchar(450)"); + b.Property("ProviderKey") + .HasColumnType("nvarchar(450)"); - b.Property("ProviderDisplayName") - .HasColumnType("nvarchar(max)"); + b.Property("ProviderDisplayName") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("LoginProvider", "ProviderKey"); + b.HasKey("LoginProvider", "ProviderKey"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("AspNetUserLogins", (string)null); - }); + b.ToTable("AspNetUserLogins", (string)null); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => - { - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.Property("RoleId") - .HasColumnType("uniqueidentifier"); + b.Property("RoleId") + .HasColumnType("uniqueidentifier"); - b.HasKey("UserId", "RoleId"); + b.HasKey("UserId", "RoleId"); - b.HasIndex("RoleId"); + b.HasIndex("RoleId"); - b.ToTable("AspNetUserRoles", (string)null); - }); + b.ToTable("AspNetUserRoles", (string)null); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => - { - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + { + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.Property("LoginProvider") - .HasColumnType("nvarchar(450)"); + b.Property("LoginProvider") + .HasColumnType("nvarchar(450)"); - b.Property("Name") - .HasColumnType("nvarchar(450)"); + b.Property("Name") + .HasColumnType("nvarchar(450)"); - b.Property("Value") - .HasColumnType("nvarchar(max)"); + b.Property("Value") + .HasColumnType("nvarchar(max)"); - b.HasKey("UserId", "LoginProvider", "Name"); + b.HasKey("UserId", "LoginProvider", "Name"); - b.ToTable("AspNetUserTokens", (string)null); - }); + b.ToTable("AspNetUserTokens", (string)null); + }); modelBuilder.Entity("RMuseum.Models.Accounting.DonationExpenditure", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Amount") - .HasColumnType("decimal(18,2)"); + b.Property("Amount") + .HasColumnType("decimal(18,2)"); - b.Property("GanjoorDonationId") - .HasColumnType("int"); + b.Property("GanjoorDonationId") + .HasColumnType("int"); - b.Property("GanjoorExpenseId") - .HasColumnType("int"); + b.Property("GanjoorExpenseId") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorDonationId"); + b.HasIndex("GanjoorDonationId"); - b.HasIndex("GanjoorExpenseId"); + b.HasIndex("GanjoorExpenseId"); - b.ToTable("DonationExpenditure"); - }); + b.ToTable("DonationExpenditure"); + }); modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorDonation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Amount") - .HasColumnType("decimal(18,2)"); + b.Property("Amount") + .HasColumnType("decimal(18,2)"); - b.Property("AmountString") - .HasColumnType("nvarchar(max)"); + b.Property("AmountString") + .HasColumnType("nvarchar(max)"); - b.Property("DateString") - .HasColumnType("nvarchar(max)"); + b.Property("DateString") + .HasColumnType("nvarchar(max)"); - b.Property("DonorLink") - .HasColumnType("nvarchar(max)"); + b.Property("DonorLink") + .HasColumnType("nvarchar(max)"); - b.Property("DonorName") - .HasColumnType("nvarchar(max)"); + b.Property("DonorName") + .HasColumnType("nvarchar(max)"); - b.Property("ExpenditureDesc") - .HasColumnType("nvarchar(max)"); + b.Property("ExpenditureDesc") + .HasColumnType("nvarchar(max)"); - b.Property("ImportedRecord") - .HasColumnType("bit"); + b.Property("ImportedRecord") + .HasColumnType("bit"); - b.Property("RecordDate") - .HasColumnType("datetime2"); + b.Property("RecordDate") + .HasColumnType("datetime2"); - b.Property("Remaining") - .HasColumnType("decimal(18,2)"); + b.Property("Remaining") + .HasColumnType("decimal(18,2)"); - b.Property("Unit") - .HasColumnType("nvarchar(max)"); + b.Property("Unit") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorDonations"); - }); + b.ToTable("GanjoorDonations"); + }); modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorExpense", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Amount") - .HasColumnType("decimal(18,2)"); + b.Property("Amount") + .HasColumnType("decimal(18,2)"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("ExpenseDate") - .HasColumnType("datetime2"); + b.Property("ExpenseDate") + .HasColumnType("datetime2"); - b.Property("Unit") - .HasColumnType("nvarchar(max)"); + b.Property("Unit") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorExpenses"); - }); + b.ToTable("GanjoorExpenses"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("CoverImageIndex") - .HasColumnType("int"); + b.Property("CoverImageIndex") + .HasColumnType("int"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("DescriptionInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FriendlyUrl") + .HasColumnType("nvarchar(450)"); - b.Property("LastModified") - .HasColumnType("datetime2"); + b.Property("LastModified") + .HasColumnType("datetime2"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("NameInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("Order") - .HasColumnType("int"); + b.Property("Order") + .HasColumnType("int"); - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactMasterRecordId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RArtifactMasterRecordId", "FriendlyUrl") - .IsUnique() - .HasFilter("[FriendlyUrl] IS NOT NULL"); + b.HasIndex("RArtifactMasterRecordId", "FriendlyUrl") + .IsUnique() + .HasFilter("[FriendlyUrl] IS NOT NULL"); - b.HasIndex("RArtifactMasterRecordId", "Order") - .IsUnique(); + b.HasIndex("RArtifactMasterRecordId", "Order") + .IsUnique(); - b.ToTable("Items"); - }); + b.ToTable("Items"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("CoverImageId") - .HasColumnType("uniqueidentifier"); + b.Property("CoverImageId") + .HasColumnType("uniqueidentifier"); - b.Property("CoverItemIndex") - .HasColumnType("int"); + b.Property("CoverItemIndex") + .HasColumnType("int"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("DescriptionInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FriendlyUrl") + .HasColumnType("nvarchar(450)"); - b.Property("ItemCount") - .HasColumnType("int"); + b.Property("ItemCount") + .HasColumnType("int"); - b.Property("LastModified") - .HasColumnType("datetime2"); + b.Property("LastModified") + .HasColumnType("datetime2"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("NameInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("CoverImageId"); + b.HasIndex("CoverImageId"); - b.HasIndex("FriendlyUrl") - .IsUnique() - .HasFilter("[FriendlyUrl] IS NOT NULL"); + b.HasIndex("FriendlyUrl") + .IsUnique() + .HasFilter("[FriendlyUrl] IS NOT NULL"); - b.HasIndex("LastModified"); + b.HasIndex("LastModified"); - b.HasIndex("CoverItemIndex", "Status"); + b.HasIndex("CoverItemIndex", "Status"); - b.ToTable("Artifacts"); - }); + b.ToTable("Artifacts"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RTag", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FriendlyUrl") + .HasColumnType("nvarchar(450)"); - b.Property("GlobalValue") - .HasColumnType("bit"); + b.Property("GlobalValue") + .HasColumnType("bit"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("NameInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("NameInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("Order") - .HasColumnType("int"); + b.Property("Order") + .HasColumnType("int"); - b.Property("PluralName") - .HasColumnType("nvarchar(max)"); + b.Property("PluralName") + .HasColumnType("nvarchar(max)"); - b.Property("PluralNameInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("PluralNameInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("TagType") - .HasColumnType("int"); + b.Property("TagType") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("FriendlyUrl"); + b.HasIndex("FriendlyUrl"); - b.ToTable("Tags"); - }); + b.ToTable("Tags"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FriendlyUrl") + .HasColumnType("nvarchar(450)"); - b.Property("Order") - .HasColumnType("int"); + b.Property("Order") + .HasColumnType("int"); - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactItemRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactMasterRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("RTagId") - .HasColumnType("uniqueidentifier"); + b.Property("RTagId") + .HasColumnType("uniqueidentifier"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("Value") - .HasColumnType("nvarchar(max)"); + b.Property("Value") + .HasColumnType("nvarchar(max)"); - b.Property("ValueInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("ValueInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("ValueSupplement") - .HasColumnType("nvarchar(max)"); + b.Property("ValueSupplement") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("FriendlyUrl"); + b.HasIndex("FriendlyUrl"); - b.HasIndex("RArtifactItemRecordId"); + b.HasIndex("RArtifactItemRecordId"); - b.HasIndex("RArtifactMasterRecordId"); + b.HasIndex("RArtifactMasterRecordId"); - b.HasIndex("RTagId"); + b.HasIndex("RTagId"); - b.ToTable("TagValues"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.WebpConvertionLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); - - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - - b.Property("FinishTime") - .HasColumnType("datetime2"); - - b.Property("OriginalFileSizeInByte") - .HasColumnType("bigint"); - - b.Property("PictureId") - .HasColumnType("uniqueidentifier"); - - b.Property("StartTime") - .HasColumnType("datetime2"); - - b.Property("TargetFileSizeInByte") - .HasColumnType("bigint"); - - b.HasKey("Id"); - - b.HasIndex("PictureId"); - - b.ToTable("WebpConvertionLogs"); - }); + b.ToTable("TagValues"); + }); modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("Note") - .HasColumnType("nvarchar(max)"); + b.Property("Note") + .HasColumnType("nvarchar(max)"); - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); + b.Property("RAppUserId") + .HasColumnType("uniqueidentifier"); - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactItemRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactMasterRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("RBookmarkType") - .HasColumnType("int"); + b.Property("RBookmarkType") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RAppUserId"); + b.HasIndex("RAppUserId"); - b.HasIndex("RArtifactItemRecordId"); + b.HasIndex("RArtifactItemRecordId"); - b.HasIndex("RArtifactMasterRecordId"); + b.HasIndex("RArtifactMasterRecordId"); - b.ToTable("UserBookmarks"); - }); + b.ToTable("UserBookmarks"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCachedRelatedPoem", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); + b.Property("FullTitle") + .HasColumnType("nvarchar(max)"); - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FullUrl") + .HasColumnType("nvarchar(450)"); - b.Property("HtmlExcerpt") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlExcerpt") + .HasColumnType("nvarchar(max)"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("PoetId") - .HasColumnType("int"); + b.Property("PoetId") + .HasColumnType("int"); - b.Property("PoetImageUrl") - .HasColumnType("nvarchar(max)"); + b.Property("PoetImageUrl") + .HasColumnType("nvarchar(max)"); - b.Property("PoetMorePoemsLikeThisCount") - .HasColumnType("int"); + b.Property("PoetMorePoemsLikeThisCount") + .HasColumnType("int"); - b.Property("PoetName") - .HasColumnType("nvarchar(max)"); + b.Property("PoetName") + .HasColumnType("nvarchar(max)"); - b.Property("RelationOrder") - .HasColumnType("int"); + b.Property("RelationOrder") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("FullUrl"); + b.HasIndex("FullUrl"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.ToTable("GanjoorCachedRelatedPoems"); - }); + b.ToTable("GanjoorCachedRelatedPoems"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FullUrl") + .HasColumnType("nvarchar(450)"); - b.Property("ParentId") - .HasColumnType("int"); + b.Property("ParentId") + .HasColumnType("int"); - b.Property("PoetId") - .HasColumnType("int"); + b.Property("PoetId") + .HasColumnType("int"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("UrlSlug") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("FullUrl"); + b.HasIndex("FullUrl"); - b.HasIndex("PoetId"); + b.HasIndex("PoetId"); - b.HasIndex("ParentId", "PoetId"); + b.HasIndex("ParentId", "PoetId"); - SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("ParentId", "PoetId"), new[] { "Id" }); + SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("ParentId", "PoetId"), new[] { "Id" }); - b.ToTable("GanjoorCategories"); - }); + b.ToTable("GanjoorCategories"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCentury", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("EndYear") - .HasColumnType("int"); + b.Property("EndYear") + .HasColumnType("int"); - b.Property("HalfCenturyOrder") - .HasColumnType("int"); + b.Property("HalfCenturyOrder") + .HasColumnType("int"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("ShowInTimeLine") - .HasColumnType("bit"); + b.Property("ShowInTimeLine") + .HasColumnType("bit"); - b.Property("StartYear") - .HasColumnType("int"); + b.Property("StartYear") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorCenturies"); - }); + b.ToTable("GanjoorCenturies"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCenturyPoet", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("GanjoorCenturyId") - .HasColumnType("int"); + b.Property("GanjoorCenturyId") + .HasColumnType("int"); - b.Property("PoetId") - .HasColumnType("int"); + b.Property("PoetId") + .HasColumnType("int"); - b.Property("PoetOrder") - .HasColumnType("int"); + b.Property("PoetOrder") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorCenturyId"); + b.HasIndex("GanjoorCenturyId"); - b.HasIndex("PoetId"); + b.HasIndex("PoetId"); - b.ToTable("GanjoorCenturyPoet"); - }); + b.ToTable("GanjoorCenturyPoet"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("AuthorEmail") - .HasColumnType("nvarchar(max)"); + b.Property("AuthorEmail") + .HasColumnType("nvarchar(max)"); - b.Property("AuthorIpAddress") - .HasColumnType("nvarchar(max)"); + b.Property("AuthorIpAddress") + .HasColumnType("nvarchar(max)"); - b.Property("AuthorName") - .HasColumnType("nvarchar(max)"); + b.Property("AuthorName") + .HasColumnType("nvarchar(max)"); - b.Property("AuthorUrl") - .HasColumnType("nvarchar(max)"); + b.Property("AuthorUrl") + .HasColumnType("nvarchar(max)"); - b.Property("CommentDate") - .HasColumnType("datetime2"); + b.Property("CommentDate") + .HasColumnType("datetime2"); - b.Property("CoupletIndex") - .HasColumnType("int"); + b.Property("CoupletIndex") + .HasColumnType("int"); - b.Property("HtmlComment") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlComment") + .HasColumnType("nvarchar(max)"); - b.Property("InReplyToId") - .HasColumnType("int"); + b.Property("InReplyToId") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.Property("Verse12d") - .HasColumnType("int"); + b.Property("Verse12d") + .HasColumnType("int"); - b.Property("Verse1Id") - .HasColumnType("int"); + b.Property("Verse1Id") + .HasColumnType("int"); - b.Property("Verse2Id") - .HasColumnType("int"); + b.Property("Verse2Id") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("CommentDate"); + b.HasIndex("CommentDate"); - b.HasIndex("InReplyToId"); + b.HasIndex("InReplyToId"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("Status"); + b.HasIndex("Status"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.HasIndex("Verse1Id"); + b.HasIndex("Verse1Id"); - b.HasIndex("Verse2Id"); + b.HasIndex("Verse2Id"); - b.ToTable("GanjoorComments"); - }); + b.ToTable("GanjoorComments"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("GanjoorCommentId") - .HasColumnType("int"); + b.Property("GanjoorCommentId") + .HasColumnType("int"); - b.Property("ReasonCode") - .HasColumnType("nvarchar(max)"); + b.Property("ReasonCode") + .HasColumnType("nvarchar(max)"); - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); + b.Property("ReasonText") + .HasColumnType("nvarchar(max)"); - b.Property("ReportedById") - .HasColumnType("uniqueidentifier"); + b.Property("ReportedById") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorCommentId"); + b.HasIndex("GanjoorCommentId"); - b.HasIndex("ReportedById"); + b.HasIndex("ReportedById"); - b.ToTable("GanjoorReportedComments"); - }); + b.ToTable("GanjoorReportedComments"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorGeoLocation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Latitude") - .HasColumnType("decimal(12,9)"); + b.Property("Latitude") + .HasColumnType("decimal(12,9)"); - b.Property("Longitude") - .HasColumnType("decimal(12,9)"); + b.Property("Longitude") + .HasColumnType("decimal(12,9)"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorGeoLocations"); - }); + b.ToTable("GanjoorGeoLocations"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorHealthCheckError", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("BrokenLink") - .HasColumnType("bit"); + b.Property("BrokenLink") + .HasColumnType("bit"); - b.Property("MulipleTargets") - .HasColumnType("bit"); + b.Property("MulipleTargets") + .HasColumnType("bit"); - b.Property("ReferrerPageUrl") - .HasColumnType("nvarchar(max)"); + b.Property("ReferrerPageUrl") + .HasColumnType("nvarchar(max)"); - b.Property("TargetUrl") - .HasColumnType("nvarchar(max)"); + b.Property("TargetUrl") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorHealthCheckErrors"); - }); + b.ToTable("GanjoorHealthCheckErrors"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorLanguage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Code") - .HasColumnType("nvarchar(max)"); + b.Property("Code") + .HasColumnType("nvarchar(max)"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasColumnType("nvarchar(450)"); + b.Property("Name") + .HasColumnType("nvarchar(450)"); - b.Property("NativeName") - .HasColumnType("nvarchar(max)"); + b.Property("NativeName") + .HasColumnType("nvarchar(max)"); - b.Property("RightToLeft") - .HasColumnType("bit"); + b.Property("RightToLeft") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("Name") - .IsUnique() - .HasFilter("[Name] IS NOT NULL"); + b.HasIndex("Name") + .IsUnique() + .HasFilter("[Name] IS NOT NULL"); - b.ToTable("GanjoorLanguages"); - }); + b.ToTable("GanjoorLanguages"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorMetre", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); + b.Property("Rhythm") + .HasColumnType("nvarchar(max)"); - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("UrlSlug") + .HasColumnType("nvarchar(max)"); - b.Property("VerseCount") - .HasColumnType("int"); + b.Property("VerseCount") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GanjoorMetres"); - }); + b.ToTable("GanjoorMetres"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorNumbering", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("EndCatId") - .HasColumnType("int"); + b.Property("EndCatId") + .HasColumnType("int"); - b.Property("LastCountingDate") - .HasColumnType("datetime2"); + b.Property("LastCountingDate") + .HasColumnType("datetime2"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("StartCatId") - .HasColumnType("int"); + b.Property("StartCatId") + .HasColumnType("int"); - b.Property("TotalCouplets") - .HasColumnType("int"); + b.Property("TotalCouplets") + .HasColumnType("int"); - b.Property("TotalLines") - .HasColumnType("int"); + b.Property("TotalLines") + .HasColumnType("int"); - b.Property("TotalParagraphs") - .HasColumnType("int"); + b.Property("TotalParagraphs") + .HasColumnType("int"); - b.Property("TotalVerses") - .HasColumnType("int"); + b.Property("TotalVerses") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("EndCatId"); + b.HasIndex("EndCatId"); - b.HasIndex("StartCatId"); + b.HasIndex("StartCatId"); - b.ToTable("GanjoorNumberings"); - }); + b.ToTable("GanjoorNumberings"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("CatId") - .HasColumnType("int"); + b.Property("CatId") + .HasColumnType("int"); - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); + b.Property("FullTitle") + .HasColumnType("nvarchar(max)"); - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FullUrl") + .HasColumnType("nvarchar(450)"); - b.Property("GanjoorPageType") - .HasColumnType("int"); + b.Property("GanjoorPageType") + .HasColumnType("int"); - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlText") + .HasColumnType("nvarchar(max)"); - b.Property("PageOrder") - .HasColumnType("int"); + b.Property("PageOrder") + .HasColumnType("int"); - b.Property("ParentId") - .HasColumnType("int"); + b.Property("ParentId") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("PoetId") - .HasColumnType("int"); + b.Property("PoetId") + .HasColumnType("int"); - b.Property("PostDate") - .HasColumnType("datetime2"); + b.Property("PostDate") + .HasColumnType("datetime2"); - b.Property("Published") - .HasColumnType("bit"); + b.Property("Published") + .HasColumnType("bit"); - b.Property("SecondPoetId") - .HasColumnType("int"); + b.Property("SecondPoetId") + .HasColumnType("int"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("UrlSlug") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("CatId"); + b.HasIndex("CatId"); - b.HasIndex("FullUrl"); + b.HasIndex("FullUrl"); - b.HasIndex("ParentId"); + b.HasIndex("ParentId"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("PoetId"); + b.HasIndex("PoetId"); - b.HasIndex("SecondPoetId"); + b.HasIndex("SecondPoetId"); - b.ToTable("GanjoorPages"); - }); + b.ToTable("GanjoorPages"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPageSnapshot", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("GanjoorPageId") - .HasColumnType("int"); + b.Property("GanjoorPageId") + .HasColumnType("int"); - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlText") + .HasColumnType("nvarchar(max)"); - b.Property("MadeObsoleteByUserId") - .HasColumnType("uniqueidentifier"); + b.Property("MadeObsoleteByUserId") + .HasColumnType("uniqueidentifier"); - b.Property("Note") - .HasColumnType("nvarchar(max)"); + b.Property("Note") + .HasColumnType("nvarchar(max)"); - b.Property("OldTag") - .HasColumnType("nvarchar(max)"); + b.Property("OldTag") + .HasColumnType("nvarchar(max)"); - b.Property("OldTagPageUrl") - .HasColumnType("nvarchar(max)"); + b.Property("OldTagPageUrl") + .HasColumnType("nvarchar(max)"); - b.Property("RecordDate") - .HasColumnType("datetime2"); + b.Property("RecordDate") + .HasColumnType("datetime2"); - b.Property("RhymeLetters") - .HasColumnType("nvarchar(max)"); + b.Property("RhymeLetters") + .HasColumnType("nvarchar(max)"); - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); + b.Property("Rhythm") + .HasColumnType("nvarchar(max)"); - b.Property("SourceName") - .HasColumnType("nvarchar(max)"); + b.Property("SourceName") + .HasColumnType("nvarchar(max)"); - b.Property("SourceUrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("SourceUrlSlug") + .HasColumnType("nvarchar(max)"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("UrlSlug") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorPageId"); + b.HasIndex("GanjoorPageId"); - b.HasIndex("MadeObsoleteByUserId"); + b.HasIndex("MadeObsoleteByUserId"); - b.ToTable("GanjoorPageSnapshots"); - }); + b.ToTable("GanjoorPageSnapshots"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("CatId") - .HasColumnType("int"); + b.Property("CatId") + .HasColumnType("int"); - b.Property("FullTitle") - .HasColumnType("nvarchar(max)"); + b.Property("FullTitle") + .HasColumnType("nvarchar(max)"); - b.Property("FullUrl") - .HasColumnType("nvarchar(450)"); + b.Property("FullUrl") + .HasColumnType("nvarchar(450)"); - b.Property("GanjoorMetreId") - .HasColumnType("int"); + b.Property("GanjoorMetreId") + .HasColumnType("int"); - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlText") + .HasColumnType("nvarchar(max)"); - b.Property("OldTag") - .HasColumnType("nvarchar(max)"); + b.Property("OldTag") + .HasColumnType("nvarchar(max)"); - b.Property("OldTagPageUrl") - .HasColumnType("nvarchar(max)"); + b.Property("OldTagPageUrl") + .HasColumnType("nvarchar(max)"); - b.Property("PlainText") - .HasColumnType("nvarchar(max)"); + b.Property("PlainText") + .HasColumnType("nvarchar(max)"); - b.Property("RhymeLetters") - .HasColumnType("nvarchar(max)"); + b.Property("RhymeLetters") + .HasColumnType("nvarchar(max)"); - b.Property("SourceName") - .HasColumnType("nvarchar(max)"); + b.Property("SourceName") + .HasColumnType("nvarchar(max)"); - b.Property("SourceUrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("SourceUrlSlug") + .HasColumnType("nvarchar(max)"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UrlSlug") - .HasColumnType("nvarchar(max)"); + b.Property("UrlSlug") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("CatId"); + b.HasIndex("CatId"); - b.HasIndex("FullUrl"); + b.HasIndex("FullUrl"); - b.HasIndex("GanjoorMetreId"); + b.HasIndex("GanjoorMetreId"); - b.HasIndex("Id"); + b.HasIndex("Id"); - b.ToTable("GanjoorPoems"); - }); + b.ToTable("GanjoorPoems"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("AffectedThePoem") - .HasColumnType("bit"); + b.Property("AffectedThePoem") + .HasColumnType("bit"); - b.Property("ApplicationOrder") - .HasColumnType("int"); + b.Property("ApplicationOrder") + .HasColumnType("int"); - b.Property("Date") - .HasColumnType("datetime2"); + b.Property("Date") + .HasColumnType("datetime2"); - b.Property("Note") - .HasColumnType("nvarchar(max)"); + b.Property("Note") + .HasColumnType("nvarchar(max)"); - b.Property("OriginalRhythm") - .HasColumnType("nvarchar(max)"); + b.Property("OriginalRhythm") + .HasColumnType("nvarchar(max)"); - b.Property("OriginalTitle") - .HasColumnType("nvarchar(max)"); + b.Property("OriginalTitle") + .HasColumnType("nvarchar(max)"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("Result") - .HasColumnType("int"); + b.Property("Result") + .HasColumnType("int"); - b.Property("ReviewDate") - .HasColumnType("datetime2"); + b.Property("ReviewDate") + .HasColumnType("datetime2"); - b.Property("ReviewNote") - .HasColumnType("nvarchar(max)"); + b.Property("ReviewNote") + .HasColumnType("nvarchar(max)"); - b.Property("Reviewed") - .HasColumnType("bit"); + b.Property("Reviewed") + .HasColumnType("bit"); - b.Property("ReviewerUserId") - .HasColumnType("uniqueidentifier"); + b.Property("ReviewerUserId") + .HasColumnType("uniqueidentifier"); - b.Property("Rhythm") - .HasColumnType("nvarchar(max)"); + b.Property("Rhythm") + .HasColumnType("nvarchar(max)"); - b.Property("RhythmResult") - .HasColumnType("int"); + b.Property("RhythmResult") + .HasColumnType("int"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("ReviewerUserId"); + b.HasIndex("ReviewerUserId"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("GanjoorPoemCorrections"); - }); + b.ToTable("GanjoorPoemCorrections"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("LanguageId") - .HasColumnType("int"); + b.Property("LanguageId") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("Published") - .HasColumnType("bit"); + b.Property("Published") + .HasColumnType("bit"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("LanguageId"); + b.HasIndex("LanguageId"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("GanjoorPoemTranslations"); - }); + b.ToTable("GanjoorPoemTranslations"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("BirthLocationId") - .HasColumnType("int"); + b.Property("BirthLocationId") + .HasColumnType("int"); - b.Property("BirthYearInLHijri") - .HasColumnType("int"); + b.Property("BirthYearInLHijri") + .HasColumnType("int"); - b.Property("DeathLocationId") - .HasColumnType("int"); + b.Property("DeathLocationId") + .HasColumnType("int"); - b.Property("DeathYearInLHijri") - .HasColumnType("int"); + b.Property("DeathYearInLHijri") + .HasColumnType("int"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("Nickname") - .HasColumnType("nvarchar(max)"); + b.Property("Nickname") + .HasColumnType("nvarchar(max)"); - b.Property("PinOrder") - .HasColumnType("int"); + b.Property("PinOrder") + .HasColumnType("int"); - b.Property("Published") - .HasColumnType("bit"); + b.Property("Published") + .HasColumnType("bit"); - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); + b.Property("RImageId") + .HasColumnType("uniqueidentifier"); - b.Property("ValidBirthDate") - .HasColumnType("bit"); + b.Property("ValidBirthDate") + .HasColumnType("bit"); - b.Property("ValidDeathDate") - .HasColumnType("bit"); + b.Property("ValidDeathDate") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("BirthLocationId"); + b.HasIndex("BirthLocationId"); - b.HasIndex("DeathLocationId"); + b.HasIndex("DeathLocationId"); - b.HasIndex("RImageId"); + b.HasIndex("RImageId"); - b.HasIndex("Published", "Id"); + b.HasIndex("Published", "Id"); - SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("Published", "Id"), new[] { "Name", "Nickname", "RImageId" }); + SqlServerIndexBuilderExtensions.IncludeProperties(b.HasIndex("Published", "Id"), new[] { "Name", "Nickname", "RImageId" }); - b.ToTable("GanjoorPoets"); - }); + b.ToTable("GanjoorPoets"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Active") - .HasColumnType("bit"); + b.Property("Active") + .HasColumnType("bit"); - b.Property("AlternateText") - .HasColumnType("nvarchar(max)"); + b.Property("AlternateText") + .HasColumnType("nvarchar(max)"); - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); + b.Property("RImageId") + .HasColumnType("uniqueidentifier"); - b.Property("TargetUrl") - .HasColumnType("nvarchar(max)"); + b.Property("TargetUrl") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RImageId"); + b.HasIndex("RImageId"); - b.ToTable("GanjoorSiteBanners"); - }); + b.ToTable("GanjoorSiteBanners"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorUserBookmark", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("CoupletIndex") - .HasColumnType("int"); + b.Property("CoupletIndex") + .HasColumnType("int"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.Property("Verse2Id") - .HasColumnType("int"); + b.Property("Verse2Id") + .HasColumnType("int"); - b.Property("VerseId") - .HasColumnType("int"); + b.Property("VerseId") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("UserId", "PoemId", "CoupletIndex"); + b.HasIndex("UserId", "PoemId", "CoupletIndex"); - b.ToTable("GanjoorUserBookmarks"); - }); + b.ToTable("GanjoorUserBookmarks"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("CoupletIndex") - .HasColumnType("int"); + b.Property("CoupletIndex") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("Text") - .HasColumnType("nvarchar(max)"); + b.Property("Text") + .HasColumnType("nvarchar(max)"); - b.Property("VOrder") - .HasColumnType("int"); + b.Property("VOrder") + .HasColumnType("int"); - b.Property("VersePosition") - .HasColumnType("int"); + b.Property("VersePosition") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("PoemId", "CoupletIndex"); + b.HasIndex("PoemId", "CoupletIndex"); - b.ToTable("GanjoorVerses"); - }); + b.ToTable("GanjoorVerses"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseNumber", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("CoupletIndex") - .HasColumnType("int"); + b.Property("CoupletIndex") + .HasColumnType("int"); - b.Property("IsPoemVerse") - .HasColumnType("bit"); + b.Property("IsPoemVerse") + .HasColumnType("bit"); - b.Property("Number") - .HasColumnType("int"); + b.Property("Number") + .HasColumnType("int"); - b.Property("NumberingId") - .HasColumnType("int"); + b.Property("NumberingId") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("SameTypeNumber") - .HasColumnType("int"); + b.Property("SameTypeNumber") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("PoemId", "CoupletIndex"); + b.HasIndex("PoemId", "CoupletIndex"); - b.HasIndex("NumberingId", "PoemId", "CoupletIndex") - .IsUnique(); + b.HasIndex("NumberingId", "PoemId", "CoupletIndex") + .IsUnique(); - b.ToTable("GanjoorVerseNumbers"); - }); + b.ToTable("GanjoorVerseNumbers"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseTranslation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("GanjoorPoemTranslationId") - .HasColumnType("int"); + b.Property("GanjoorPoemTranslationId") + .HasColumnType("int"); - b.Property("TText") - .HasColumnType("nvarchar(max)"); + b.Property("TText") + .HasColumnType("nvarchar(max)"); - b.Property("VerseId") - .HasColumnType("int"); + b.Property("VerseId") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorPoemTranslationId"); + b.HasIndex("GanjoorPoemTranslationId"); - b.HasIndex("VerseId"); + b.HasIndex("VerseId"); - b.ToTable("GanjoorVerseTranslation"); - }); + b.ToTable("GanjoorVerseTranslation"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseVOrderText", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("CoupletIndex") - .HasColumnType("int"); + b.Property("CoupletIndex") + .HasColumnType("int"); - b.Property("GanjoorPoemCorrectionId") - .HasColumnType("int"); + b.Property("GanjoorPoemCorrectionId") + .HasColumnType("int"); - b.Property("OriginalText") - .HasColumnType("nvarchar(max)"); + b.Property("OriginalText") + .HasColumnType("nvarchar(max)"); - b.Property("Result") - .HasColumnType("int"); + b.Property("Result") + .HasColumnType("int"); - b.Property("ReviewNote") - .HasColumnType("nvarchar(max)"); + b.Property("ReviewNote") + .HasColumnType("nvarchar(max)"); - b.Property("Text") - .HasColumnType("nvarchar(max)"); + b.Property("Text") + .HasColumnType("nvarchar(max)"); - b.Property("VORder") - .HasColumnType("int"); + b.Property("VORder") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorPoemCorrectionId"); + b.HasIndex("GanjoorPoemCorrectionId"); - b.ToTable("GanjoorVerseVOrderText"); - }); + b.ToTable("GanjoorVerseVOrderText"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("AlbumName") - .HasColumnType("nvarchar(max)"); + b.Property("AlbumName") + .HasColumnType("nvarchar(max)"); - b.Property("AlbumUrl") - .HasColumnType("nvarchar(max)"); + b.Property("AlbumUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ApprovalDate") - .HasColumnType("datetime2"); + b.Property("ApprovalDate") + .HasColumnType("datetime2"); - b.Property("Approved") - .HasColumnType("bit"); + b.Property("Approved") + .HasColumnType("bit"); - b.Property("ArtistName") - .HasColumnType("nvarchar(max)"); + b.Property("ArtistName") + .HasColumnType("nvarchar(max)"); - b.Property("ArtistUrl") - .HasColumnType("nvarchar(max)"); + b.Property("ArtistUrl") + .HasColumnType("nvarchar(max)"); - b.Property("BrokenLink") - .HasColumnType("bit"); + b.Property("BrokenLink") + .HasColumnType("bit"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("GanjoorTrackId") - .HasColumnType("int"); + b.Property("GanjoorTrackId") + .HasColumnType("int"); - b.Property("GolhaTrackId") - .HasColumnType("int"); + b.Property("GolhaTrackId") + .HasColumnType("int"); - b.Property("PoemId") - .HasColumnType("int"); + b.Property("PoemId") + .HasColumnType("int"); - b.Property("Rejected") - .HasColumnType("bit"); + b.Property("Rejected") + .HasColumnType("bit"); - b.Property("RejectionCause") - .HasColumnType("nvarchar(max)"); + b.Property("RejectionCause") + .HasColumnType("nvarchar(max)"); - b.Property("SingerId") - .HasColumnType("int"); + b.Property("SingerId") + .HasColumnType("int"); - b.Property("SongOrder") - .HasColumnType("int"); + b.Property("SongOrder") + .HasColumnType("int"); - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); + b.Property("SuggestedById") + .HasColumnType("uniqueidentifier"); - b.Property("TrackName") - .HasColumnType("nvarchar(max)"); + b.Property("TrackName") + .HasColumnType("nvarchar(max)"); - b.Property("TrackType") - .HasColumnType("int"); + b.Property("TrackType") + .HasColumnType("int"); - b.Property("TrackUrl") - .HasColumnType("nvarchar(max)"); + b.Property("TrackUrl") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorTrackId"); + b.HasIndex("GanjoorTrackId"); - b.HasIndex("GolhaTrackId"); + b.HasIndex("GolhaTrackId"); - b.HasIndex("PoemId"); + b.HasIndex("PoemId"); - b.HasIndex("SingerId"); + b.HasIndex("SingerId"); - b.HasIndex("SuggestedById"); + b.HasIndex("SuggestedById"); - b.HasIndex("Approved", "Rejected"); + b.HasIndex("Approved", "Rejected"); - b.ToTable("GanjoorPoemMusicTracks"); - }); + b.ToTable("GanjoorPoemMusicTracks"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("AudioArtist") - .HasColumnType("nvarchar(max)"); + b.Property("AudioArtist") + .HasColumnType("nvarchar(max)"); - b.Property("AudioArtistUrl") - .HasColumnType("nvarchar(max)"); + b.Property("AudioArtistUrl") + .HasColumnType("nvarchar(max)"); - b.Property("AudioOrder") - .HasColumnType("int"); + b.Property("AudioOrder") + .HasColumnType("int"); - b.Property("AudioSrc") - .HasColumnType("nvarchar(max)"); + b.Property("AudioSrc") + .HasColumnType("nvarchar(max)"); - b.Property("AudioSrcUrl") - .HasColumnType("nvarchar(max)"); + b.Property("AudioSrcUrl") + .HasColumnType("nvarchar(max)"); - b.Property("AudioSyncStatus") - .HasColumnType("int"); + b.Property("AudioSyncStatus") + .HasColumnType("int"); - b.Property("AudioTitle") - .HasColumnType("nvarchar(max)"); + b.Property("AudioTitle") + .HasColumnType("nvarchar(max)"); - b.Property("FileLastUpdated") - .HasColumnType("datetime2"); + b.Property("FileLastUpdated") + .HasColumnType("datetime2"); - b.Property("FileNameWithoutExtension") - .HasColumnType("nvarchar(max)"); + b.Property("FileNameWithoutExtension") + .HasColumnType("nvarchar(max)"); - b.Property("GanjoorAudioId") - .HasColumnType("int"); + b.Property("GanjoorAudioId") + .HasColumnType("int"); - b.Property("GanjoorPostId") - .HasColumnType("int"); + b.Property("GanjoorPostId") + .HasColumnType("int"); - b.Property("LegacyAudioGuid") - .HasColumnType("uniqueidentifier"); + b.Property("LegacyAudioGuid") + .HasColumnType("uniqueidentifier"); - b.Property("LocalMp3FilePath") - .HasColumnType("nvarchar(max)"); + b.Property("LocalMp3FilePath") + .HasColumnType("nvarchar(max)"); - b.Property("LocalXmlFilePath") - .HasColumnType("nvarchar(max)"); + b.Property("LocalXmlFilePath") + .HasColumnType("nvarchar(max)"); - b.Property("Mp3FileCheckSum") - .HasColumnType("nvarchar(max)"); + b.Property("Mp3FileCheckSum") + .HasColumnType("nvarchar(max)"); - b.Property("Mp3SizeInBytes") - .HasColumnType("int"); + b.Property("Mp3SizeInBytes") + .HasColumnType("int"); - b.Property("OggSizeInBytes") - .HasColumnType("int"); + b.Property("OggSizeInBytes") + .HasColumnType("int"); - b.Property("OwnerId") - .HasColumnType("uniqueidentifier"); + b.Property("OwnerId") + .HasColumnType("uniqueidentifier"); - b.Property("ReviewDate") - .HasColumnType("datetime2"); + b.Property("ReviewDate") + .HasColumnType("datetime2"); - b.Property("ReviewMsg") - .HasColumnType("nvarchar(max)"); + b.Property("ReviewMsg") + .HasColumnType("nvarchar(max)"); - b.Property("ReviewStatus") - .HasColumnType("int"); + b.Property("ReviewStatus") + .HasColumnType("int"); - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); + b.Property("ReviewerId") + .HasColumnType("uniqueidentifier"); - b.Property("SoundFilesFolder") - .HasColumnType("nvarchar(max)"); + b.Property("SoundFilesFolder") + .HasColumnType("nvarchar(max)"); - b.Property("UploadDate") - .HasColumnType("datetime2"); + b.Property("UploadDate") + .HasColumnType("datetime2"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GanjoorAudioId"); + b.HasIndex("GanjoorAudioId"); - b.HasIndex("GanjoorPostId"); + b.HasIndex("GanjoorPostId"); - b.HasIndex("OwnerId"); + b.HasIndex("OwnerId"); - b.HasIndex("ReviewerId"); + b.HasIndex("ReviewerId"); - b.HasIndex("ReviewStatus", "GanjoorPostId"); + b.HasIndex("ReviewStatus", "GanjoorPostId"); - b.ToTable("Recitations"); - }); + b.ToTable("Recitations"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationErrorReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); + b.Property("ReasonText") + .HasColumnType("nvarchar(max)"); - b.Property("RecitationId") - .HasColumnType("int"); + b.Property("RecitationId") + .HasColumnType("int"); - b.Property("ReporterId") - .HasColumnType("uniqueidentifier"); + b.Property("ReporterId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RecitationId"); + b.HasIndex("RecitationId"); - b.HasIndex("ReporterId"); + b.HasIndex("ReporterId"); - b.ToTable("RecitationErrorReports"); - }); + b.ToTable("RecitationErrorReports"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("FinishDate") - .HasColumnType("datetime2"); + b.Property("FinishDate") + .HasColumnType("datetime2"); - b.Property("Finished") - .HasColumnType("bit"); + b.Property("Finished") + .HasColumnType("bit"); - b.Property("FirstDbUpdated") - .HasColumnType("bit"); + b.Property("FirstDbUpdated") + .HasColumnType("bit"); - b.Property("LastException") - .HasColumnType("nvarchar(max)"); + b.Property("LastException") + .HasColumnType("nvarchar(max)"); - b.Property("Mp3FileCopied") - .HasColumnType("bit"); + b.Property("Mp3FileCopied") + .HasColumnType("bit"); - b.Property("PoemNarrationId") - .HasColumnType("int"); + b.Property("PoemNarrationId") + .HasColumnType("int"); - b.Property("SecondDbUpdated") - .HasColumnType("bit"); + b.Property("SecondDbUpdated") + .HasColumnType("bit"); - b.Property("StartDate") - .HasColumnType("datetime2"); + b.Property("StartDate") + .HasColumnType("datetime2"); - b.Property("XmlFileCopied") - .HasColumnType("bit"); + b.Property("XmlFileCopied") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("PoemNarrationId"); + b.HasIndex("PoemNarrationId"); - b.ToTable("RecitationPublishingTrackers"); - }); + b.ToTable("RecitationPublishingTrackers"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ArtistName") - .HasColumnType("nvarchar(max)"); + b.Property("ArtistName") + .HasColumnType("nvarchar(max)"); - b.Property("ArtistUrl") - .HasColumnType("nvarchar(max)"); + b.Property("ArtistUrl") + .HasColumnType("nvarchar(max)"); - b.Property("AudioSrc") - .HasColumnType("nvarchar(max)"); + b.Property("AudioSrc") + .HasColumnType("nvarchar(max)"); - b.Property("AudioSrcUrl") - .HasColumnType("nvarchar(max)"); + b.Property("AudioSrcUrl") + .HasColumnType("nvarchar(max)"); - b.Property("FileSuffixWithoutDash") - .HasColumnType("nvarchar(max)"); + b.Property("FileSuffixWithoutDash") + .HasColumnType("nvarchar(max)"); - b.Property("IsDefault") - .HasColumnType("bit"); + b.Property("IsDefault") + .HasColumnType("bit"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("UserRecitationProfiles"); - }); + b.ToTable("UserRecitationProfiles"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); + b.Property("ArtifactId") + .HasColumnType("uniqueidentifier"); - b.Property("DisplayOnPage") - .HasColumnType("bit"); + b.Property("DisplayOnPage") + .HasColumnType("bit"); - b.Property("GanjoorPostId") - .HasColumnType("int"); + b.Property("GanjoorPostId") + .HasColumnType("int"); - b.Property("GanjoorTitle") - .HasColumnType("nvarchar(max)"); + b.Property("GanjoorTitle") + .HasColumnType("nvarchar(max)"); - b.Property("GanjoorUrl") - .HasColumnType("nvarchar(max)"); + b.Property("GanjoorUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ItemId") - .HasColumnType("uniqueidentifier"); + b.Property("ItemId") + .HasColumnType("uniqueidentifier"); - b.Property("LinkToOriginalSource") - .HasColumnType("bit"); + b.Property("LinkToOriginalSource") + .HasColumnType("bit"); - b.Property("OriginalSourceUrl") - .HasColumnType("nvarchar(max)"); + b.Property("OriginalSourceUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ReviewDate") - .HasColumnType("datetime2"); + b.Property("ReviewDate") + .HasColumnType("datetime2"); - b.Property("ReviewResult") - .HasColumnType("int"); + b.Property("ReviewResult") + .HasColumnType("int"); - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); + b.Property("ReviewerId") + .HasColumnType("uniqueidentifier"); - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); + b.Property("SuggestedById") + .HasColumnType("uniqueidentifier"); - b.Property("SuggestionDate") - .HasColumnType("datetime2"); + b.Property("SuggestionDate") + .HasColumnType("datetime2"); - b.Property("Synchronized") - .HasColumnType("bit"); + b.Property("Synchronized") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ArtifactId"); + b.HasIndex("ArtifactId"); - b.HasIndex("ItemId"); + b.HasIndex("ItemId"); - b.HasIndex("ReviewerId"); + b.HasIndex("ReviewerId"); - b.HasIndex("SuggestedById"); + b.HasIndex("SuggestedById"); - b.ToTable("GanjoorLinks"); - }); + b.ToTable("GanjoorLinks"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("AltText") - .HasColumnType("nvarchar(max)"); + b.Property("AltText") + .HasColumnType("nvarchar(max)"); - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); + b.Property("ArtifactId") + .HasColumnType("uniqueidentifier"); - b.Property("GanjoorPostId") - .HasColumnType("int"); + b.Property("GanjoorPostId") + .HasColumnType("int"); - b.Property("GanjoorTitle") - .HasColumnType("nvarchar(max)"); + b.Property("GanjoorTitle") + .HasColumnType("nvarchar(max)"); - b.Property("GanjoorUrl") - .HasColumnType("nvarchar(max)"); + b.Property("GanjoorUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ItemId") - .HasColumnType("uniqueidentifier"); + b.Property("ItemId") + .HasColumnType("uniqueidentifier"); - b.Property("LinkType") - .HasColumnType("int"); + b.Property("LinkType") + .HasColumnType("int"); - b.Property("PinterestImageUrl") - .HasColumnType("nvarchar(max)"); + b.Property("PinterestImageUrl") + .HasColumnType("nvarchar(max)"); - b.Property("PinterestUrl") - .HasColumnType("nvarchar(max)"); + b.Property("PinterestUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ReviewDate") - .HasColumnType("datetime2"); + b.Property("ReviewDate") + .HasColumnType("datetime2"); - b.Property("ReviewDesc") - .HasColumnType("nvarchar(max)"); + b.Property("ReviewDesc") + .HasColumnType("nvarchar(max)"); - b.Property("ReviewResult") - .HasColumnType("int"); + b.Property("ReviewResult") + .HasColumnType("int"); - b.Property("ReviewerId") - .HasColumnType("uniqueidentifier"); + b.Property("ReviewerId") + .HasColumnType("uniqueidentifier"); - b.Property("SuggestedById") - .HasColumnType("uniqueidentifier"); + b.Property("SuggestedById") + .HasColumnType("uniqueidentifier"); - b.Property("SuggestionDate") - .HasColumnType("datetime2"); + b.Property("SuggestionDate") + .HasColumnType("datetime2"); - b.Property("Synchronized") - .HasColumnType("bit"); + b.Property("Synchronized") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ArtifactId"); + b.HasIndex("ArtifactId"); - b.HasIndex("ItemId"); + b.HasIndex("ItemId"); - b.HasIndex("ReviewerId"); + b.HasIndex("ReviewerId"); - b.HasIndex("SuggestedById"); + b.HasIndex("SuggestedById"); - b.ToTable("PinterestLinks"); - }); + b.ToTable("PinterestLinks"); + }); modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ArtifactId") - .HasColumnType("uniqueidentifier"); + b.Property("ArtifactId") + .HasColumnType("uniqueidentifier"); - b.Property("EndTime") - .HasColumnType("datetime2"); + b.Property("EndTime") + .HasColumnType("datetime2"); - b.Property("Exception") - .HasColumnType("nvarchar(max)"); + b.Property("Exception") + .HasColumnType("nvarchar(max)"); - b.Property("FriendlyUrl") - .HasColumnType("nvarchar(max)"); + b.Property("FriendlyUrl") + .HasColumnType("nvarchar(max)"); - b.Property("JobType") - .HasColumnType("int"); + b.Property("JobType") + .HasColumnType("int"); - b.Property("ProgressPercent") - .HasColumnType("decimal(18,2)"); + b.Property("ProgressPercent") + .HasColumnType("decimal(18,2)"); - b.Property("QueueTime") - .HasColumnType("datetime2"); + b.Property("QueueTime") + .HasColumnType("datetime2"); - b.Property("ResourceNumber") - .HasColumnType("nvarchar(max)"); + b.Property("ResourceNumber") + .HasColumnType("nvarchar(max)"); - b.Property("SrcContent") - .HasColumnType("nvarchar(max)"); + b.Property("SrcContent") + .HasColumnType("nvarchar(max)"); - b.Property("SrcUrl") - .HasColumnType("nvarchar(max)"); + b.Property("SrcUrl") + .HasColumnType("nvarchar(max)"); - b.Property("StartTime") - .HasColumnType("datetime2"); + b.Property("StartTime") + .HasColumnType("datetime2"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("ArtifactId"); + b.HasIndex("ArtifactId"); - b.ToTable("ImportJobs"); - }); + b.ToTable("ImportJobs"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("SingerId") - .HasColumnType("int"); + b.Property("SingerId") + .HasColumnType("int"); - b.Property("Url") - .HasColumnType("nvarchar(max)"); + b.Property("Url") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("SingerId"); + b.HasIndex("SingerId"); - b.ToTable("GanjoorAlbum"); - }); + b.ToTable("GanjoorAlbum"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Name") - .HasColumnType("nvarchar(450)"); + b.Property("Name") + .HasColumnType("nvarchar(450)"); - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); + b.Property("RImageId") + .HasColumnType("uniqueidentifier"); - b.Property("Url") - .HasColumnType("nvarchar(max)"); + b.Property("Url") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("Name"); + b.HasIndex("Name"); - b.HasIndex("RImageId"); + b.HasIndex("RImageId"); - b.ToTable("GanjoorSingers"); - }); + b.ToTable("GanjoorSingers"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("AlbumId") - .HasColumnType("int"); + b.Property("AlbumId") + .HasColumnType("int"); - b.Property("BlockReason") - .HasColumnType("nvarchar(max)"); + b.Property("BlockReason") + .HasColumnType("nvarchar(max)"); - b.Property("Blocked") - .HasColumnType("bit"); + b.Property("Blocked") + .HasColumnType("bit"); - b.Property("Name") - .HasColumnType("nvarchar(450)"); + b.Property("Name") + .HasColumnType("nvarchar(450)"); - b.Property("Url") - .HasColumnType("nvarchar(max)"); + b.Property("Url") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("AlbumId"); + b.HasIndex("AlbumId"); - b.HasIndex("Name"); + b.HasIndex("Name"); - b.ToTable("GanjoorMusicCatalogueTracks"); - }); + b.ToTable("GanjoorMusicCatalogueTracks"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GolhaCollections"); - }); + b.ToTable("GolhaCollections"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("GolhaCollectionId") - .HasColumnType("int"); + b.Property("GolhaCollectionId") + .HasColumnType("int"); - b.Property("Mp3") - .HasColumnType("nvarchar(max)"); + b.Property("Mp3") + .HasColumnType("nvarchar(max)"); - b.Property("ProgramOrder") - .HasColumnType("int"); + b.Property("ProgramOrder") + .HasColumnType("int"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("Url") - .HasColumnType("nvarchar(max)"); + b.Property("Url") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GolhaCollectionId"); + b.HasIndex("GolhaCollectionId"); - b.ToTable("GolhaPrograms"); - }); + b.ToTable("GolhaPrograms"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b => - { - b.Property("Id") - .HasColumnType("int"); + { + b.Property("Id") + .HasColumnType("int"); - b.Property("BlockReason") - .HasColumnType("nvarchar(max)"); + b.Property("BlockReason") + .HasColumnType("nvarchar(max)"); - b.Property("Blocked") - .HasColumnType("bit"); + b.Property("Blocked") + .HasColumnType("bit"); - b.Property("GolhaProgramId") - .HasColumnType("int"); + b.Property("GolhaProgramId") + .HasColumnType("int"); - b.Property("SingerId") - .HasColumnType("int"); + b.Property("SingerId") + .HasColumnType("int"); - b.Property("Timing") - .HasColumnType("nvarchar(max)"); + b.Property("Timing") + .HasColumnType("nvarchar(max)"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("TrackNo") - .HasColumnType("int"); + b.Property("TrackNo") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("GolhaProgramId"); + b.HasIndex("GolhaProgramId"); - b.HasIndex("SingerId"); + b.HasIndex("SingerId"); - b.ToTable("GolhaTracks"); - }); + b.ToTable("GolhaTracks"); + }); modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("HtmlContent") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlContent") + .HasColumnType("nvarchar(max)"); - b.Property("LastModified") - .HasColumnType("datetime2"); + b.Property("LastModified") + .HasColumnType("datetime2"); - b.Property("Modified") - .HasColumnType("bit"); + b.Property("Modified") + .HasColumnType("bit"); - b.Property("NoteType") - .HasColumnType("int"); + b.Property("NoteType") + .HasColumnType("int"); - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); + b.Property("RAppUserId") + .HasColumnType("uniqueidentifier"); - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactItemRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("RArtifactMasterRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactMasterRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("ReferenceNoteId") - .HasColumnType("uniqueidentifier"); + b.Property("ReferenceNoteId") + .HasColumnType("uniqueidentifier"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RAppUserId"); + b.HasIndex("RAppUserId"); - b.HasIndex("RArtifactItemRecordId"); + b.HasIndex("RArtifactItemRecordId"); - b.HasIndex("RArtifactMasterRecordId"); + b.HasIndex("RArtifactMasterRecordId"); - b.HasIndex("ReferenceNoteId"); + b.HasIndex("ReferenceNoteId"); - b.ToTable("UserNotes"); - }); + b.ToTable("UserNotes"); + }); modelBuilder.Entity("RMuseum.Models.Note.RUserNoteAbuseReport", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("NoteId") - .HasColumnType("uniqueidentifier"); + b.Property("NoteId") + .HasColumnType("uniqueidentifier"); - b.Property("ReasonText") - .HasColumnType("nvarchar(max)"); + b.Property("ReasonText") + .HasColumnType("nvarchar(max)"); - b.Property("ReporterId") - .HasColumnType("uniqueidentifier"); + b.Property("ReporterId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("NoteId"); + b.HasIndex("NoteId"); - b.HasIndex("ReporterId"); + b.HasIndex("ReporterId"); - b.ToTable("ReportedUserNotes"); - }); + b.ToTable("ReportedUserNotes"); + }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ProcessEndTime") - .HasColumnType("datetime2"); + b.Property("ProcessEndTime") + .HasColumnType("datetime2"); - b.Property("ProcessProgress") - .HasColumnType("int"); + b.Property("ProcessProgress") + .HasColumnType("int"); - b.Property("ProcessStartTime") - .HasColumnType("datetime2"); + b.Property("ProcessStartTime") + .HasColumnType("datetime2"); - b.Property("SessionType") - .HasColumnType("int"); + b.Property("SessionType") + .HasColumnType("int"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("UploadEndTime") - .HasColumnType("datetime2"); + b.Property("UploadEndTime") + .HasColumnType("datetime2"); - b.Property("UploadStartTime") - .HasColumnType("datetime2"); + b.Property("UploadStartTime") + .HasColumnType("datetime2"); - b.Property("UseId") - .HasColumnType("uniqueidentifier"); + b.Property("UseId") + .HasColumnType("uniqueidentifier"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("UploadSessions"); - }); + b.ToTable("UploadSessions"); + }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ContentDisposition") - .HasColumnType("nvarchar(max)"); + b.Property("ContentDisposition") + .HasColumnType("nvarchar(max)"); - b.Property("ContentType") - .HasColumnType("nvarchar(max)"); + b.Property("ContentType") + .HasColumnType("nvarchar(max)"); - b.Property("FileName") - .HasColumnType("nvarchar(max)"); + b.Property("FileName") + .HasColumnType("nvarchar(max)"); - b.Property("FilePath") - .HasColumnType("nvarchar(max)"); + b.Property("FilePath") + .HasColumnType("nvarchar(max)"); - b.Property("Length") - .HasColumnType("bigint"); + b.Property("Length") + .HasColumnType("bigint"); - b.Property("MP3FileCheckSum") - .HasColumnType("nvarchar(max)"); + b.Property("MP3FileCheckSum") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("ProcessResult") - .HasColumnType("bit"); + b.Property("ProcessResult") + .HasColumnType("bit"); - b.Property("ProcessResultMsg") - .HasColumnType("nvarchar(max)"); + b.Property("ProcessResultMsg") + .HasColumnType("nvarchar(max)"); - b.Property("UploadSessionId") - .HasColumnType("uniqueidentifier"); + b.Property("UploadSessionId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UploadSessionId"); + b.HasIndex("UploadSessionId"); - b.ToTable("UploadedFiles"); - }); + b.ToTable("UploadedFiles"); + }); modelBuilder.Entity("RSecurityBackend.Models.Audit.Db.REvent", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("Duration") - .HasColumnType("int"); + b.Property("Duration") + .HasColumnType("int"); - b.Property("EndDate") - .HasColumnType("datetime2"); + b.Property("EndDate") + .HasColumnType("datetime2"); - b.Property("EventType") - .HasColumnType("nvarchar(max)"); + b.Property("EventType") + .HasColumnType("nvarchar(max)"); - b.Property("IpAddress") - .HasColumnType("nvarchar(max)"); + b.Property("IpAddress") + .HasColumnType("nvarchar(max)"); - b.Property("JsonData") - .HasColumnType("nvarchar(max)"); + b.Property("JsonData") + .HasColumnType("nvarchar(max)"); - b.Property("RequestUrl") - .HasColumnType("nvarchar(max)"); + b.Property("RequestUrl") + .HasColumnType("nvarchar(max)"); - b.Property("ResponseStatusCode") - .HasColumnType("int"); + b.Property("ResponseStatusCode") + .HasColumnType("int"); - b.Property("StartDate") - .HasColumnType("datetime2"); + b.Property("StartDate") + .HasColumnType("datetime2"); - b.Property("UserName") - .HasColumnType("nvarchar(max)"); + b.Property("UserName") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("AuditLogs"); - }); + b.ToTable("AuditLogs"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.BannedEmail", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("NormalizedEmail") - .HasColumnType("nvarchar(max)"); + b.Property("NormalizedEmail") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("BannedEmails"); - }); + b.ToTable("BannedEmails"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ConcurrencyStamp") - .IsConcurrencyToken() - .HasColumnType("nvarchar(max)"); + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("Name") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.Property("NormalizedName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("NormalizedName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("NormalizedName") - .IsUnique() - .HasDatabaseName("RoleNameIndex") - .HasFilter("[NormalizedName] IS NOT NULL"); + b.HasIndex("NormalizedName") + .IsUnique() + .HasDatabaseName("RoleNameIndex") + .HasFilter("[NormalizedName] IS NOT NULL"); - b.ToTable("AspNetRoles", (string)null); - }); + b.ToTable("AspNetRoles", (string)null); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("AccessFailedCount") - .HasColumnType("int"); + b.Property("AccessFailedCount") + .HasColumnType("int"); - b.Property("Bio") - .HasColumnType("nvarchar(max)"); + b.Property("Bio") + .HasColumnType("nvarchar(max)"); - b.Property("ConcurrencyStamp") - .IsConcurrencyToken() - .HasColumnType("nvarchar(max)"); + b.Property("ConcurrencyStamp") + .IsConcurrencyToken() + .HasColumnType("nvarchar(max)"); - b.Property("CreateDate") - .HasColumnType("datetime2"); + b.Property("CreateDate") + .HasColumnType("datetime2"); - b.Property("Email") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("Email") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.Property("EmailConfirmed") - .HasColumnType("bit"); + b.Property("EmailConfirmed") + .HasColumnType("bit"); - b.Property("FirstName") - .HasColumnType("nvarchar(max)"); + b.Property("FirstName") + .HasColumnType("nvarchar(max)"); - b.Property("LockoutEnabled") - .HasColumnType("bit"); + b.Property("LockoutEnabled") + .HasColumnType("bit"); - b.Property("LockoutEnd") - .HasColumnType("datetimeoffset"); + b.Property("LockoutEnd") + .HasColumnType("datetimeoffset"); - b.Property("LockoutMessage") - .HasColumnType("nvarchar(max)"); + b.Property("LockoutMessage") + .HasColumnType("nvarchar(max)"); - b.Property("NickName") - .HasColumnType("nvarchar(max)"); + b.Property("NickName") + .HasColumnType("nvarchar(max)"); - b.Property("NormalizedEmail") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("NormalizedEmail") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.Property("NormalizedUserName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("NormalizedUserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.Property("PasswordHash") - .HasColumnType("nvarchar(max)"); + b.Property("PasswordHash") + .HasColumnType("nvarchar(max)"); - b.Property("PhoneNumber") - .HasColumnType("nvarchar(max)"); + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); - b.Property("PhoneNumberConfirmed") - .HasColumnType("bit"); + b.Property("PhoneNumberConfirmed") + .HasColumnType("bit"); - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); + b.Property("RImageId") + .HasColumnType("uniqueidentifier"); - b.Property("ScreenName") - .HasColumnType("nvarchar(max)"); + b.Property("ScreenName") + .HasColumnType("nvarchar(max)"); - b.Property("SecurityStamp") - .HasColumnType("nvarchar(max)"); + b.Property("SecurityStamp") + .HasColumnType("nvarchar(max)"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("SureName") - .HasColumnType("nvarchar(max)"); + b.Property("SureName") + .HasColumnType("nvarchar(max)"); - b.Property("TwoFactorEnabled") - .HasColumnType("bit"); + b.Property("TwoFactorEnabled") + .HasColumnType("bit"); - b.Property("UserName") - .HasMaxLength(256) - .HasColumnType("nvarchar(256)"); + b.Property("UserName") + .HasMaxLength(256) + .HasColumnType("nvarchar(256)"); - b.Property("Website") - .HasColumnType("nvarchar(max)"); + b.Property("Website") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("NormalizedEmail") - .HasDatabaseName("EmailIndex"); + b.HasIndex("NormalizedEmail") + .HasDatabaseName("EmailIndex"); - b.HasIndex("NormalizedUserName") - .IsUnique() - .HasDatabaseName("UserNameIndex") - .HasFilter("[NormalizedUserName] IS NOT NULL"); + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasDatabaseName("UserNameIndex") + .HasFilter("[NormalizedUserName] IS NOT NULL"); - b.HasIndex("RImageId"); + b.HasIndex("RImageId"); - b.ToTable("AspNetUsers", (string)null); - }); + b.ToTable("AspNetUsers", (string)null); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("RImageId") - .HasColumnType("uniqueidentifier"); + b.Property("RImageId") + .HasColumnType("uniqueidentifier"); - b.Property("Value") - .HasColumnType("nvarchar(max)"); + b.Property("Value") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RImageId"); + b.HasIndex("RImageId"); - b.ToTable("CaptchaImages"); - }); + b.ToTable("CaptchaImages"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("OperationShortName") - .HasColumnType("nvarchar(max)"); + b.Property("OperationShortName") + .HasColumnType("nvarchar(max)"); - b.Property("RAppRoleId") - .HasColumnType("uniqueidentifier"); + b.Property("RAppRoleId") + .HasColumnType("uniqueidentifier"); - b.Property("SecurableItemShortName") - .HasColumnType("nvarchar(max)"); + b.Property("SecurableItemShortName") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RAppRoleId"); + b.HasIndex("RAppRoleId"); - b.ToTable("Permissions"); - }); + b.ToTable("Permissions"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ClientAppName") - .HasColumnType("nvarchar(max)"); + b.Property("ClientAppName") + .HasColumnType("nvarchar(max)"); - b.Property("ClientIPAddress") - .HasColumnType("nvarchar(max)"); + b.Property("ClientIPAddress") + .HasColumnType("nvarchar(max)"); - b.Property("Language") - .HasColumnType("nvarchar(max)"); + b.Property("Language") + .HasColumnType("nvarchar(max)"); - b.Property("LastRenewal") - .HasColumnType("datetime2"); + b.Property("LastRenewal") + .HasColumnType("datetime2"); - b.Property("LoginTime") - .HasColumnType("datetime2"); + b.Property("LoginTime") + .HasColumnType("datetime2"); - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); + b.Property("RAppUserId") + .HasColumnType("uniqueidentifier"); - b.Property("Token") - .HasColumnType("nvarchar(max)"); + b.Property("Token") + .HasColumnType("nvarchar(max)"); - b.Property("ValidUntil") - .HasColumnType("datetime2"); + b.Property("ValidUntil") + .HasColumnType("datetime2"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RAppUserId"); + b.HasIndex("RAppUserId"); - b.ToTable("Sessions"); - }); + b.ToTable("Sessions"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RUserBehaviourLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("UserBehaviourLogs"); - }); + b.ToTable("UserBehaviourLogs"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RVerifyQueueItem", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ClientAppName") - .HasColumnType("nvarchar(max)"); + b.Property("ClientAppName") + .HasColumnType("nvarchar(max)"); - b.Property("ClientIPAddress") - .HasColumnType("nvarchar(max)"); + b.Property("ClientIPAddress") + .HasColumnType("nvarchar(max)"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("Email") - .HasColumnType("nvarchar(max)"); + b.Property("Email") + .HasColumnType("nvarchar(max)"); - b.Property("Language") - .HasColumnType("nvarchar(max)"); + b.Property("Language") + .HasColumnType("nvarchar(max)"); - b.Property("PhoneNumber") - .HasColumnType("nvarchar(max)"); + b.Property("PhoneNumber") + .HasColumnType("nvarchar(max)"); - b.Property("QueueType") - .HasColumnType("int"); + b.Property("QueueType") + .HasColumnType("int"); - b.Property("Secret") - .HasColumnType("nvarchar(450)"); + b.Property("Secret") + .HasColumnType("nvarchar(450)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("Secret") - .IsUnique() - .HasFilter("[Secret] IS NOT NULL"); + b.HasIndex("Secret") + .IsUnique() + .HasFilter("[Secret] IS NOT NULL"); - b.ToTable("VerifyQueueItems"); - }); + b.ToTable("VerifyQueueItems"); + }); modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RGenericOption", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); - SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"), 1L, 1); - b.Property("Name") - .HasColumnType("nvarchar(450)"); + b.Property("Name") + .HasColumnType("nvarchar(450)"); - b.Property("RAppUserId") - .HasColumnType("uniqueidentifier"); + b.Property("RAppUserId") + .HasColumnType("uniqueidentifier"); - b.Property("Value") - .HasColumnType("nvarchar(max)"); + b.Property("Value") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("RAppUserId", "Name") - .IsUnique() - .HasFilter("[RAppUserId] IS NOT NULL AND [Name] IS NOT NULL"); + b.HasIndex("RAppUserId", "Name") + .IsUnique() + .HasFilter("[RAppUserId] IS NOT NULL AND [Name] IS NOT NULL"); - b.ToTable("Options"); - }); + b.ToTable("Options"); + }); modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RLongRunningJobStatus", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("EndTime") - .HasColumnType("datetime2"); + b.Property("EndTime") + .HasColumnType("datetime2"); - b.Property("Exception") - .HasColumnType("nvarchar(max)"); + b.Property("Exception") + .HasColumnType("nvarchar(max)"); - b.Property("Name") - .HasColumnType("nvarchar(max)"); + b.Property("Name") + .HasColumnType("nvarchar(max)"); - b.Property("Progress") - .HasColumnType("float"); + b.Property("Progress") + .HasColumnType("float"); - b.Property("StartTime") - .HasColumnType("datetime2"); + b.Property("StartTime") + .HasColumnType("datetime2"); - b.Property("Step") - .HasColumnType("nvarchar(max)"); + b.Property("Step") + .HasColumnType("nvarchar(max)"); - b.Property("Succeeded") - .HasColumnType("bit"); + b.Property("Succeeded") + .HasColumnType("bit"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("LongRunningJobs"); - }); + b.ToTable("LongRunningJobs"); + }); modelBuilder.Entity("RSecurityBackend.Models.Image.RImage", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("ContentType") - .HasColumnType("nvarchar(max)"); + b.Property("ContentType") + .HasColumnType("nvarchar(max)"); - b.Property("DataTime") - .HasColumnType("datetime2"); + b.Property("DataTime") + .HasColumnType("datetime2"); - b.Property("Discriminator") - .IsRequired() - .HasColumnType("nvarchar(max)"); + b.Property("Discriminator") + .IsRequired() + .HasColumnType("nvarchar(max)"); - b.Property("FileSizeInBytes") - .HasColumnType("bigint"); + b.Property("FileSizeInBytes") + .HasColumnType("bigint"); - b.Property("FolderName") - .HasColumnType("nvarchar(max)"); + b.Property("FolderName") + .HasColumnType("nvarchar(max)"); - b.Property("ImageHeight") - .HasColumnType("int"); + b.Property("ImageHeight") + .HasColumnType("int"); - b.Property("ImageWidth") - .HasColumnType("int"); + b.Property("ImageWidth") + .HasColumnType("int"); - b.Property("LastModified") - .HasColumnType("datetime2"); + b.Property("LastModified") + .HasColumnType("datetime2"); - b.Property("OriginalFileName") - .HasColumnType("nvarchar(max)"); + b.Property("OriginalFileName") + .HasColumnType("nvarchar(max)"); - b.Property("StoredFileName") - .HasColumnType("nvarchar(max)"); + b.Property("StoredFileName") + .HasColumnType("nvarchar(max)"); - b.HasKey("Id"); + b.HasKey("Id"); - b.ToTable("GeneralImages"); + b.ToTable("GeneralImages"); - b.HasDiscriminator("Discriminator").HasValue("RImage"); - }); + b.HasDiscriminator("Discriminator").HasValue("RImage"); + }); modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("uniqueidentifier"); + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); - b.Property("DateTime") - .HasColumnType("datetime2"); + b.Property("DateTime") + .HasColumnType("datetime2"); - b.Property("HtmlText") - .HasColumnType("nvarchar(max)"); + b.Property("HtmlText") + .HasColumnType("nvarchar(max)"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("Subject") - .HasColumnType("nvarchar(max)"); + b.Property("Subject") + .HasColumnType("nvarchar(max)"); - b.Property("UserId") - .HasColumnType("uniqueidentifier"); + b.Property("UserId") + .HasColumnType("uniqueidentifier"); - b.HasKey("Id"); + b.HasKey("Id"); - b.HasIndex("UserId"); + b.HasIndex("UserId"); - b.ToTable("Notifications"); - }); + b.ToTable("Notifications"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b => - { - b.HasBaseType("RSecurityBackend.Models.Image.RImage"); + { + b.HasBaseType("RSecurityBackend.Models.Image.RImage"); - b.Property("Description") - .HasColumnType("nvarchar(max)"); + b.Property("Description") + .HasColumnType("nvarchar(max)"); - b.Property("DescriptionInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("DescriptionInEnglish") + .HasColumnType("nvarchar(max)"); - b.Property("LastModifiedMeta") - .HasColumnType("datetime2"); + b.Property("LastModifiedMeta") + .HasColumnType("datetime2"); - b.Property("NormalSizeImageHeight") - .HasColumnType("int"); + b.Property("NormalSizeImageHeight") + .HasColumnType("int"); - b.Property("NormalSizeImageStoredFileName") - .HasColumnType("nvarchar(max)"); + b.Property("NormalSizeImageStoredFileName") + .HasColumnType("nvarchar(max)"); - b.Property("NormalSizeImageWidth") - .HasColumnType("int"); + b.Property("NormalSizeImageWidth") + .HasColumnType("int"); - b.Property("Order") - .HasColumnType("int"); + b.Property("Order") + .HasColumnType("int"); - b.Property("RArtifactItemRecordId") - .HasColumnType("uniqueidentifier"); + b.Property("RArtifactItemRecordId") + .HasColumnType("uniqueidentifier"); - b.Property("SrcUrl") - .HasColumnType("nvarchar(max)"); + b.Property("SrcUrl") + .HasColumnType("nvarchar(max)"); - b.Property("Status") - .HasColumnType("int"); + b.Property("Status") + .HasColumnType("int"); - b.Property("ThumbnailImageHeight") - .HasColumnType("int"); + b.Property("ThumbnailImageHeight") + .HasColumnType("int"); - b.Property("ThumbnailImageStoredFileName") - .HasColumnType("nvarchar(max)"); + b.Property("ThumbnailImageStoredFileName") + .HasColumnType("nvarchar(max)"); - b.Property("ThumbnailImageWidth") - .HasColumnType("int"); + b.Property("ThumbnailImageWidth") + .HasColumnType("int"); - b.Property("Title") - .HasColumnType("nvarchar(max)"); + b.Property("Title") + .HasColumnType("nvarchar(max)"); - b.Property("TitleInEnglish") - .HasColumnType("nvarchar(max)"); + b.Property("TitleInEnglish") + .HasColumnType("nvarchar(max)"); - b.HasIndex("RArtifactItemRecordId"); + b.HasIndex("RArtifactItemRecordId"); - b.HasDiscriminator().HasValue("RPictureFile"); - }); + b.HasDiscriminator().HasValue("RPictureFile"); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) - .WithMany() - .HasForeignKey("RoleId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) - .WithMany() - .HasForeignKey("RoleId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + 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(); - }); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + }); modelBuilder.Entity("RMuseum.Models.Accounting.DonationExpenditure", b => - { - b.HasOne("RMuseum.Models.Accounting.GanjoorDonation", "GanjoorDonation") - .WithMany() - .HasForeignKey("GanjoorDonationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Accounting.GanjoorDonation", "GanjoorDonation") + .WithMany() + .HasForeignKey("GanjoorDonationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.Accounting.GanjoorExpense", null) - .WithMany("DonationExpenditures") - .HasForeignKey("GanjoorExpenseId"); + b.HasOne("RMuseum.Models.Accounting.GanjoorExpense", null) + .WithMany("DonationExpenditures") + .HasForeignKey("GanjoorExpenseId"); - b.Navigation("GanjoorDonation"); - }); + b.Navigation("GanjoorDonation"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", null) - .WithMany("Items") - .HasForeignKey("RArtifactMasterRecordId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + 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(); + { + b.HasOne("RMuseum.Models.Artifact.RPictureFile", "CoverImage") + .WithMany() + .HasForeignKey("CoverImageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("CoverImage"); - }); + b.Navigation("CoverImage"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) - .WithMany("Tags") - .HasForeignKey("RArtifactItemRecordId"); + { + 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.RArtifactMasterRecord", null) + .WithMany("Tags") + .HasForeignKey("RArtifactMasterRecordId"); - b.HasOne("RMuseum.Models.Artifact.RTag", "RTag") - .WithMany() - .HasForeignKey("RTagId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Artifact.RTag", "RTag") + .WithMany() + .HasForeignKey("RTagId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("RTag"); - }); - - modelBuilder.Entity("RMuseum.Models.Artifact.WebpConvertionLog", b => - { - b.HasOne("RMuseum.Models.Artifact.RPictureFile", "Picture") - .WithMany() - .HasForeignKey("PictureId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Picture"); - }); + b.Navigation("RTag"); + }); modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") - .WithMany() - .HasForeignKey("RAppUserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + 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.RArtifactItemRecord", "RArtifactItemRecord") + .WithMany() + .HasForeignKey("RArtifactItemRecordId"); - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord") - .WithMany() - .HasForeignKey("RArtifactMasterRecordId"); + b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord") + .WithMany() + .HasForeignKey("RArtifactMasterRecordId"); - b.Navigation("RAppUser"); + b.Navigation("RAppUser"); - b.Navigation("RArtifactItemRecord"); + b.Navigation("RArtifactItemRecord"); - b.Navigation("RArtifactMasterRecord"); - }); + b.Navigation("RArtifactMasterRecord"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCachedRelatedPoem", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Poem"); - }); + b.Navigation("Poem"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Parent") - .WithMany() - .HasForeignKey("ParentId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Parent") + .WithMany() + .HasForeignKey("ParentId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") - .WithMany() - .HasForeignKey("PoetId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") + .WithMany() + .HasForeignKey("PoetId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Parent"); + b.Navigation("Parent"); - b.Navigation("Poet"); - }); + b.Navigation("Poet"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCenturyPoet", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCentury", null) - .WithMany("Poets") - .HasForeignKey("GanjoorCenturyId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorCentury", null) + .WithMany("Poets") + .HasForeignKey("GanjoorCenturyId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") - .WithMany() - .HasForeignKey("PoetId"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") + .WithMany() + .HasForeignKey("PoetId"); - b.Navigation("Poet"); - }); + b.Navigation("Poet"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "InReplyTo") - .WithMany() - .HasForeignKey("InReplyToId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "InReplyTo") + .WithMany() + .HasForeignKey("InReplyToId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse1") - .WithMany() - .HasForeignKey("Verse1Id"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse1") + .WithMany() + .HasForeignKey("Verse1Id"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse2") - .WithMany() - .HasForeignKey("Verse2Id"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse2") + .WithMany() + .HasForeignKey("Verse2Id"); - b.Navigation("InReplyTo"); + b.Navigation("InReplyTo"); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("User"); + b.Navigation("User"); - b.Navigation("Verse1"); + b.Navigation("Verse1"); - b.Navigation("Verse2"); - }); + b.Navigation("Verse2"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "GanjoorComment") - .WithMany() - .HasForeignKey("GanjoorCommentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "GanjoorComment") + .WithMany() + .HasForeignKey("GanjoorCommentId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReportedBy") - .WithMany() - .HasForeignKey("ReportedById"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReportedBy") + .WithMany() + .HasForeignKey("ReportedById"); - b.Navigation("GanjoorComment"); + b.Navigation("GanjoorComment"); - b.Navigation("ReportedBy"); - }); + b.Navigation("ReportedBy"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorNumbering", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "EndCat") - .WithMany() - .HasForeignKey("EndCatId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "EndCat") + .WithMany() + .HasForeignKey("EndCatId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "StartCat") - .WithMany() - .HasForeignKey("StartCatId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "StartCat") + .WithMany() + .HasForeignKey("StartCatId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("EndCat"); + b.Navigation("EndCat"); - b.Navigation("StartCat"); - }); + b.Navigation("StartCat"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Cat") - .WithMany() - .HasForeignKey("CatId"); + { + 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.GanjoorPage", "Parent") + .WithMany() + .HasForeignKey("ParentId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId"); + 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", "Poet") + .WithMany() + .HasForeignKey("PoetId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "SecondPoet") - .WithMany() - .HasForeignKey("SecondPoetId"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "SecondPoet") + .WithMany() + .HasForeignKey("SecondPoetId"); - b.Navigation("Cat"); + b.Navigation("Cat"); - b.Navigation("Parent"); + b.Navigation("Parent"); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("Poet"); + b.Navigation("Poet"); - b.Navigation("SecondPoet"); - }); + b.Navigation("SecondPoet"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPageSnapshot", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "GanjoorPage") - .WithMany() - .HasForeignKey("GanjoorPageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "GanjoorPage") + .WithMany() + .HasForeignKey("GanjoorPageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "MadeObsoleteByUser") - .WithMany() - .HasForeignKey("MadeObsoleteByUserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "MadeObsoleteByUser") + .WithMany() + .HasForeignKey("MadeObsoleteByUserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("GanjoorPage"); + b.Navigation("GanjoorPage"); - b.Navigation("MadeObsoleteByUser"); - }); + b.Navigation("MadeObsoleteByUser"); + }); 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.GanjoorCat", "Cat") + .WithMany() + .HasForeignKey("CatId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorMetre", "GanjoorMetre") - .WithMany() - .HasForeignKey("GanjoorMetreId"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorMetre", "GanjoorMetre") + .WithMany() + .HasForeignKey("GanjoorMetreId"); - b.Navigation("Cat"); + b.Navigation("Cat"); - b.Navigation("GanjoorMetre"); - }); + b.Navigation("GanjoorMetre"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReviewerUser") - .WithMany() - .HasForeignKey("ReviewerUserId"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReviewerUser") + .WithMany() + .HasForeignKey("ReviewerUserId"); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("ReviewerUser"); + b.Navigation("ReviewerUser"); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorLanguage", "Language") - .WithMany() - .HasForeignKey("LanguageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorLanguage", "Language") + .WithMany() + .HasForeignKey("LanguageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Language"); + b.Navigation("Language"); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "BirthLocation") - .WithMany() - .HasForeignKey("BirthLocationId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "BirthLocation") + .WithMany() + .HasForeignKey("BirthLocationId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "DeathLocation") - .WithMany() - .HasForeignKey("DeathLocationId"); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorGeoLocation", "DeathLocation") + .WithMany() + .HasForeignKey("DeathLocationId"); - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId"); + b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") + .WithMany() + .HasForeignKey("RImageId"); - b.Navigation("BirthLocation"); + b.Navigation("BirthLocation"); - b.Navigation("DeathLocation"); + b.Navigation("DeathLocation"); - b.Navigation("RImage"); - }); + b.Navigation("RImage"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") + .WithMany() + .HasForeignKey("RImageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("RImage"); - }); + b.Navigation("RImage"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorUserBookmark", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") - .WithMany() - .HasForeignKey("PoemId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Poem"); - }); + b.Navigation("Poem"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseNumber", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorNumbering", "Numbering") - .WithMany() - .HasForeignKey("NumberingId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorNumbering", "Numbering") + .WithMany() + .HasForeignKey("NumberingId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Numbering"); - }); + b.Navigation("Numbering"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseTranslation", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", null) - .WithMany("Verses") - .HasForeignKey("GanjoorPoemTranslationId"); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", null) + .WithMany("Verses") + .HasForeignKey("GanjoorPoemTranslationId"); - b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse") - .WithMany() - .HasForeignKey("VerseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RMuseum.Models.Ganjoor.GanjoorVerse", "Verse") + .WithMany() + .HasForeignKey("VerseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Verse"); - }); + b.Navigation("Verse"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerseVOrderText", b => - { - b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", null) - .WithMany("VerseOrderText") - .HasForeignKey("GanjoorPoemCorrectionId"); - }); + { + b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", null) + .WithMany("VerseOrderText") + .HasForeignKey("GanjoorPoemCorrectionId"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorTrack", "GanjoorTrack") - .WithMany() - .HasForeignKey("GanjoorTrackId"); + { + b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorTrack", "GanjoorTrack") + .WithMany() + .HasForeignKey("GanjoorTrackId"); - b.HasOne("RMuseum.Models.MusicCatalogue.GolhaTrack", "GolhaTrack") - .WithMany() - .HasForeignKey("GolhaTrackId"); + 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.Ganjoor.GanjoorPoem", "Poem") + .WithMany() + .HasForeignKey("PoemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") - .WithMany() - .HasForeignKey("SingerId"); + b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") + .WithMany() + .HasForeignKey("SingerId"); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") - .WithMany() - .HasForeignKey("SuggestedById"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") + .WithMany() + .HasForeignKey("SuggestedById"); - b.Navigation("GanjoorTrack"); + b.Navigation("GanjoorTrack"); - b.Navigation("GolhaTrack"); + b.Navigation("GolhaTrack"); - b.Navigation("Poem"); + b.Navigation("Poem"); - b.Navigation("Singer"); + b.Navigation("Singer"); - b.Navigation("SuggestedBy"); - }); + b.Navigation("SuggestedBy"); + }); 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", "Owner") + .WithMany() + .HasForeignKey("OwnerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer") - .WithMany() - .HasForeignKey("ReviewerId"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer") + .WithMany() + .HasForeignKey("ReviewerId"); - b.Navigation("Owner"); + b.Navigation("Owner"); - b.Navigation("Reviewer"); - }); + b.Navigation("Reviewer"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationErrorReport", b => - { - b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "Recitation") - .WithMany() - .HasForeignKey("RecitationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "Recitation") + .WithMany() + .HasForeignKey("RecitationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") - .WithMany() - .HasForeignKey("ReporterId"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") + .WithMany() + .HasForeignKey("ReporterId"); - b.Navigation("Recitation"); + b.Navigation("Recitation"); - b.Navigation("Reporter"); - }); + b.Navigation("Reporter"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => - { - b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "PoemNarration") - .WithMany() - .HasForeignKey("PoemNarrationId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "PoemNarration") + .WithMany() + .HasForeignKey("PoemNarrationId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("PoemNarration"); - }); + b.Navigation("PoemNarration"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("User"); - }); + b.Navigation("User"); + }); 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.RArtifactMasterRecord", "Artifact") + .WithMany() + .HasForeignKey("ArtifactId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item") - .WithMany() - .HasForeignKey("ItemId"); + 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", "Reviewer") + .WithMany() + .HasForeignKey("ReviewerId"); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") - .WithMany() - .HasForeignKey("SuggestedById") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") + .WithMany() + .HasForeignKey("SuggestedById") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Artifact"); + b.Navigation("Artifact"); - b.Navigation("Item"); + b.Navigation("Item"); - b.Navigation("Reviewer"); + b.Navigation("Reviewer"); - b.Navigation("SuggestedBy"); - }); + b.Navigation("SuggestedBy"); + }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") - .WithMany() - .HasForeignKey("ArtifactId"); + { + b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") + .WithMany() + .HasForeignKey("ArtifactId"); - b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item") - .WithMany() - .HasForeignKey("ItemId"); + 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", "Reviewer") + .WithMany() + .HasForeignKey("ReviewerId"); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") - .WithMany() - .HasForeignKey("SuggestedById"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") + .WithMany() + .HasForeignKey("SuggestedById"); - b.Navigation("Artifact"); + b.Navigation("Artifact"); - b.Navigation("Item"); + b.Navigation("Item"); - b.Navigation("Reviewer"); + b.Navigation("Reviewer"); - b.Navigation("SuggestedBy"); - }); + b.Navigation("SuggestedBy"); + }); modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") - .WithMany() - .HasForeignKey("ArtifactId"); + { + b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") + .WithMany() + .HasForeignKey("ArtifactId"); - b.Navigation("Artifact"); - }); + b.Navigation("Artifact"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") - .WithMany("Albums") - .HasForeignKey("SingerId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") + .WithMany("Albums") + .HasForeignKey("SingerId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Singer"); - }); + b.Navigation("Singer"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId"); + { + b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") + .WithMany() + .HasForeignKey("RImageId"); - b.Navigation("RImage"); - }); + b.Navigation("RImage"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorAlbum", "Album") - .WithMany("Tracks") - .HasForeignKey("AlbumId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorAlbum", "Album") + .WithMany("Tracks") + .HasForeignKey("AlbumId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("Album"); - }); + b.Navigation("Album"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.HasOne("RMuseum.Models.MusicCatalogue.GolhaCollection", "GolhaCollection") - .WithMany("Programs") - .HasForeignKey("GolhaCollectionId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.MusicCatalogue.GolhaCollection", "GolhaCollection") + .WithMany("Programs") + .HasForeignKey("GolhaCollectionId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("GolhaCollection"); - }); + b.Navigation("GolhaCollection"); + }); 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.GolhaProgram", "GolhaProgram") + .WithMany("Tracks") + .HasForeignKey("GolhaProgramId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") - .WithMany() - .HasForeignKey("SingerId"); + b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") + .WithMany() + .HasForeignKey("SingerId"); - b.Navigation("GolhaProgram"); + b.Navigation("GolhaProgram"); - b.Navigation("Singer"); - }); + b.Navigation("Singer"); + }); modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") - .WithMany() - .HasForeignKey("RAppUserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + 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.RArtifactItemRecord", "RArtifactItemRecord") + .WithMany() + .HasForeignKey("RArtifactItemRecordId"); - b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord") - .WithMany() - .HasForeignKey("RArtifactMasterRecordId"); + b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord") + .WithMany() + .HasForeignKey("RArtifactMasterRecordId"); - b.HasOne("RMuseum.Models.Note.RUserNote", "ReferenceNote") - .WithMany() - .HasForeignKey("ReferenceNoteId"); + b.HasOne("RMuseum.Models.Note.RUserNote", "ReferenceNote") + .WithMany() + .HasForeignKey("ReferenceNoteId"); - b.Navigation("RAppUser"); + b.Navigation("RAppUser"); - b.Navigation("RArtifactItemRecord"); + b.Navigation("RArtifactItemRecord"); - b.Navigation("RArtifactMasterRecord"); + b.Navigation("RArtifactMasterRecord"); - b.Navigation("ReferenceNote"); - }); + b.Navigation("ReferenceNote"); + }); modelBuilder.Entity("RMuseum.Models.Note.RUserNoteAbuseReport", b => - { - b.HasOne("RMuseum.Models.Note.RUserNote", "Note") - .WithMany() - .HasForeignKey("NoteId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RMuseum.Models.Note.RUserNote", "Note") + .WithMany() + .HasForeignKey("NoteId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") - .WithMany() - .HasForeignKey("ReporterId"); + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reporter") + .WithMany() + .HasForeignKey("ReporterId"); - b.Navigation("Note"); + b.Navigation("Note"); - b.Navigation("Reporter"); - }); + b.Navigation("Reporter"); + }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId"); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId"); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b => - { - b.HasOne("RMuseum.Models.UploadSession.UploadSession", null) - .WithMany("UploadedFiles") - .HasForeignKey("UploadSessionId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - }); + { + 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"); + { + b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") + .WithMany() + .HasForeignKey("RImageId"); - b.Navigation("RImage"); - }); + b.Navigation("RImage"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => - { - b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") - .WithMany() - .HasForeignKey("RImageId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") + .WithMany() + .HasForeignKey("RImageId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("RImage"); - }); + b.Navigation("RImage"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) - .WithMany("Permissions") - .HasForeignKey("RAppRoleId"); - }); + { + 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(); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") + .WithMany() + .HasForeignKey("RAppUserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("RAppUser"); - }); + b.Navigation("RAppUser"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RUserBehaviourLog", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RGenericOption", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") - .WithMany() - .HasForeignKey("RAppUserId"); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") + .WithMany() + .HasForeignKey("RAppUserId"); - b.Navigation("RAppUser"); - }); + b.Navigation("RAppUser"); + }); modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => - { - b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") - .WithMany() - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); + { + b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); - b.Navigation("User"); - }); + b.Navigation("User"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b => - { - b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) - .WithMany("Images") - .HasForeignKey("RArtifactItemRecordId"); - }); + { + b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) + .WithMany("Images") + .HasForeignKey("RArtifactItemRecordId"); + }); modelBuilder.Entity("RMuseum.Models.Accounting.GanjoorExpense", b => - { - b.Navigation("DonationExpenditures"); - }); + { + b.Navigation("DonationExpenditures"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => - { - b.Navigation("Images"); + { + b.Navigation("Images"); - b.Navigation("Tags"); - }); + b.Navigation("Tags"); + }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b => - { - b.Navigation("Items"); + { + b.Navigation("Items"); - b.Navigation("Tags"); - }); + b.Navigation("Tags"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCentury", b => - { - b.Navigation("Poets"); - }); + { + b.Navigation("Poets"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemCorrection", b => - { - b.Navigation("VerseOrderText"); - }); + { + b.Navigation("VerseOrderText"); + }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoemTranslation", b => - { - b.Navigation("Verses"); - }); + { + b.Navigation("Verses"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => - { - b.Navigation("Tracks"); - }); + { + b.Navigation("Tracks"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => - { - b.Navigation("Albums"); - }); + { + b.Navigation("Albums"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b => - { - b.Navigation("Programs"); - }); + { + b.Navigation("Programs"); + }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => - { - b.Navigation("Tracks"); - }); + { + b.Navigation("Tracks"); + }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => - { - b.Navigation("UploadedFiles"); - }); + { + b.Navigation("UploadedFiles"); + }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => - { - b.Navigation("Permissions"); - }); + { + b.Navigation("Permissions"); + }); #pragma warning restore 612, 618 } } diff --git a/RMuseum/Models/Artifact/WebpConvertionLog.cs b/RMuseum/Models/Artifact/WebpConvertionLog.cs deleted file mode 100644 index 23eeedde..00000000 --- a/RMuseum/Models/Artifact/WebpConvertionLog.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System; - -namespace RMuseum.Models.Artifact -{ - /// - /// webp convertion log - /// - public class WebpConvertionLog - { - /// - /// id - /// - public int Id { get; set; } - - /// - /// picture id - /// - public Guid PictureId { get; set; } - - /// - /// picture - /// - public RPictureFile Picture { get; set; } - - /// - /// original file size - /// - public long OriginalFileSizeInByte { get; set; } - - /// - /// start time - /// - public DateTime StartTime { get; set; } - - /// - /// target file size - /// - public long TargetFileSizeInByte { get; set; } - - /// - /// finish time - /// - public DateTime FinishTime { get; set; } - } -} diff --git a/RMuseum/RMuseum.csproj b/RMuseum/RMuseum.csproj index 59dded71..3ad89ed6 100644 --- a/RMuseum/RMuseum.csproj +++ b/RMuseum/RMuseum.csproj @@ -14,8 +14,6 @@ - - all diff --git a/RMuseum/RMuseum.xml b/RMuseum/RMuseum.xml index 8ac2bb44..95cacd66 100644 --- a/RMuseum/RMuseum.xml +++ b/RMuseum/RMuseum.xml @@ -576,12 +576,6 @@ - - - convert original images to webp - - - readonly mode @@ -2294,11 +2288,6 @@ recitation error reports - - - webp convertion log - - donation expenditures @@ -3172,46 +3161,6 @@ Item Friendly Url - - - webp convertion log - - - - - id - - - - - picture id - - - - - picture - - - - - original file size - - - - - start time - - - - - target file size - - - - - finish time - - specific forms and permission @@ -9010,12 +8959,6 @@ - - - convert original images to webp - - - donation service @@ -9990,15 +9933,6 @@ IArtifactService implementation - - IArtifactService implementation - - - - - convert original images to webp - - diff --git a/RMuseum/Services/IArtifactService.cs b/RMuseum/Services/IArtifactService.cs index 21989c27..a26c1d7a 100644 --- a/RMuseum/Services/IArtifactService.cs +++ b/RMuseum/Services/IArtifactService.cs @@ -217,7 +217,7 @@ namespace RMuseum.Services /// /// Task> UnTagItem(Guid itemId, Guid tagValueId); - + /// @@ -556,11 +556,5 @@ namespace RMuseum.Services /// Task> AcceptPublicNoteReport(Guid id); - /// - /// convert original images to webp - /// - /// - RServiceResult StartConvertingOriginalImagesToWebp(); - } } diff --git a/RMuseum/Services/Implementation/ArtifactService-Partials/ArtifactService-ConvertToWebp.cs b/RMuseum/Services/Implementation/ArtifactService-Partials/ArtifactService-ConvertToWebp.cs deleted file mode 100644 index b962f1c4..00000000 --- a/RMuseum/Services/Implementation/ArtifactService-Partials/ArtifactService-ConvertToWebp.cs +++ /dev/null @@ -1,123 +0,0 @@ -using ImageProcessor; -using ImageProcessor.Plugins.WebP.Imaging.Formats; -using Microsoft.EntityFrameworkCore; -using RMuseum.DbContext; -using RMuseum.Models.Artifact; -using RSecurityBackend.Models.Generic; -using RSecurityBackend.Services.Implementation; -using System; -using System.IO; -using System.Linq; - -namespace RMuseum.Services.Implementation -{ - - /// - /// IArtifactService implementation - /// - public partial class ArtifactService : IArtifactService - { - /// - /// convert original images to webp - /// - /// - public RServiceResult StartConvertingOriginalImagesToWebp() - { - _backgroundTaskQueue.QueueBackgroundWorkItem - ( - async token => - { - using (RMuseumDbContext context = new RMuseumDbContext(new DbContextOptions())) //this is long running job, so _context might be already been freed/collected by GC - { - LongRunningJobProgressServiceEF jobProgressServiceEF = new LongRunningJobProgressServiceEF(context); - var job = (await jobProgressServiceEF.NewJob($"Converting Original Images To Webp", "Query data")).Result; - try - { - string imageStoragePath = $"{Configuration.GetSection("PictureFileService")["StoragePath"]}"; - - var artifacts = await context.Artifacts.Include(a => a.Items).ThenInclude(i => i.Images).AsNoTracking().ToArrayAsync(); - - int artifactNum = 0; - foreach (var artifact in artifacts) - { - await jobProgressServiceEF.UpdateJob(job.Id, ++artifactNum, $"{artifactNum} from {artifacts.Length} artifacts ({artifact.Name}) containing {artifact.ItemCount} items"); - foreach (var item in artifact.Items) - { - foreach (var image in item.Images) - { - if(image.ContentType == "image/jpeg") - { - var imagePath = Path.Combine(imageStoragePath, image.FolderName, image.StoredFileName); - var webpPath = Path.Combine(imageStoragePath, image.FolderName, Path.GetDirectoryName(image.StoredFileName), $"{Path.GetFileNameWithoutExtension(image.StoredFileName)}.webp"); - WebpConvertionLog log = null; - if (File.Exists(imagePath)) - { - if (File.Exists(webpPath)) - File.Delete(webpPath); - - log = new WebpConvertionLog() - { - PictureId = image.Id, - StartTime = DateTime.Now, - OriginalFileSizeInByte = image.FileSizeInBytes - }; - - //convert to webp - using (ImageFactory imageFactory = new ImageFactory(preserveExifData: false)) - { - imageFactory.Load(imagePath) - .Format(new WebPFormat()) - .Quality(80) - .Save(webpPath); - } - } - - if(File.Exists(webpPath)) - { - //update db meta data - var imageInDb = await context.PictureFiles.Where(p => p.Id == image.Id).SingleAsync(); - imageInDb.ContentType = "image/webp"; - imageInDb.StoredFileName = imageInDb.StoredFileName.Replace(".jpg", ".webp", StringComparison.InvariantCultureIgnoreCase); - imageInDb.FileSizeInBytes = (await File.ReadAllBytesAsync(webpPath)).Length; - context.PictureFiles.Update(imageInDb); - - if(log != null) - { - log.FinishTime = DateTime.Now; - log.TargetFileSizeInByte = imageInDb.FileSizeInBytes; - context.WebpConvertionLogs.Add(log); - } - - await context.SaveChangesAsync(); - - if(File.Exists(imagePath)) - { - try - { - File.Delete(imagePath); - } - catch - { - //ignore exception - } - } - } - } - } - } - } - - await jobProgressServiceEF.UpdateJob(job.Id, 100, "", true); - } - catch (Exception exp) - { - await jobProgressServiceEF.UpdateJob(job.Id, 100, "", false, exp.ToString()); - } - - } - }); - - return new RServiceResult(true); - } - } -} \ No newline at end of file