diff --git a/Marechai.Database/Enums.cs b/Marechai.Database/Enums.cs
index 036808d5..386a121d 100644
--- a/Marechai.Database/Enums.cs
+++ b/Marechai.Database/Enums.cs
@@ -23,6 +23,7 @@
// Copyright © 2003-2020 Natalia Portillo
*******************************************************************************/
+using System;
using System.ComponentModel.DataAnnotations;
// ReSharper disable UnusedMember.Global
@@ -500,4 +501,15 @@ namespace Marechai.Database
None = 0, Created = 1, Updated = 2,
Deleted = 3
}
+
+ [Flags]
+ public enum DumpStatus : ulong
+ {
+ Unknown = 0, Cracked = 1 << 0, Fixed = 1 << 1,
+ Hacked = 1 << 2, Modified = 1 << 3, Pirated = 1 << 4,
+ Trained = 1 << 5, Translated = 1 << 6, Overdumped = 1 << 7,
+ Underdumped = 1 << 8, Infected = 1 << 9, Damaged = 1 << 10,
+ Verified = 1 << 11, MissingData = 1 << 12, MissingNonRequiredData = 1 << 13,
+ MissingEssentialData = 1 << 14, DamagedSubchannel = 1 << 15
+ }
}
\ No newline at end of file
diff --git a/Marechai.Database/Migrations/20200611010054_AddMediaDump.Designer.cs b/Marechai.Database/Migrations/20200611010054_AddMediaDump.Designer.cs
new file mode 100644
index 00000000..6bf47c89
--- /dev/null
+++ b/Marechai.Database/Migrations/20200611010054_AddMediaDump.Designer.cs
@@ -0,0 +1,4912 @@
+//
+using System;
+using Marechai.Database.Models;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+namespace Marechai.Database.Migrations
+{
+ [DbContext(typeof(MarechaiContext))]
+ [Migration("20200611010054_AddMediaDump")]
+ partial class AddMediaDump
+ {
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "3.1.4")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("Marechai.Database.Models.ApplicationRole", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("Created")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Description")
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("Name")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.Property("NormalizedName")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.HasKey("Id");
+
+ b.HasIndex("NormalizedName")
+ .IsUnique()
+ .HasName("RoleNameIndex");
+
+ b.ToTable("AspNetRoles");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.ApplicationUser", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("AccessFailedCount")
+ .HasColumnType("int");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("Email")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.Property("EmailConfirmed")
+ .HasColumnType("bit(1)");
+
+ b.Property("LockoutEnabled")
+ .HasColumnType("bit(1)");
+
+ b.Property("LockoutEnd")
+ .HasColumnType("datetime(6)");
+
+ b.Property("NormalizedEmail")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.Property("NormalizedUserName")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.Property("PasswordHash")
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("PhoneNumber")
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("PhoneNumberConfirmed")
+ .HasColumnType("bit(1)");
+
+ b.Property("SecurityStamp")
+ .HasColumnType("longtext CHARACTER SET utf8mb4");
+
+ b.Property("TwoFactorEnabled")
+ .HasColumnType("bit(1)");
+
+ b.Property("UserName")
+ .HasColumnType("varchar(256) CHARACTER SET utf8mb4")
+ .HasMaxLength(256);
+
+ b.HasKey("Id");
+
+ b.HasIndex("NormalizedEmail")
+ .HasName("EmailIndex");
+
+ b.HasIndex("NormalizedUserName")
+ .IsUnique()
+ .HasName("UserNameIndex");
+
+ b.ToTable("AspNetUsers");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Audit", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("AffectedColumns")
+ .HasColumnType("json");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Keys")
+ .HasColumnType("json");
+
+ b.Property("NewValues")
+ .HasColumnType("json");
+
+ b.Property("OldValues")
+ .HasColumnType("json");
+
+ b.Property("Table")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Type")
+ .HasColumnType("tinyint unsigned");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("UserId")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Table");
+
+ b.HasIndex("Type");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("Audit");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Book", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CountryId")
+ .HasColumnType("smallint(3)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Edition")
+ .HasColumnType("int");
+
+ b.Property("Isbn")
+ .HasColumnType("varchar(13) CHARACTER SET utf8mb4")
+ .HasMaxLength(13);
+
+ b.Property("NativeTitle")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Pages")
+ .HasColumnType("smallint");
+
+ b.Property("PreviousId")
+ .HasColumnType("bigint");
+
+ b.Property("Published")
+ .HasColumnType("datetime(6)");
+
+ b.Property("SourceId")
+ .HasColumnType("bigint");
+
+ b.Property("Synopsis")
+ .HasColumnType("longtext CHARACTER SET utf8mb4")
+ .HasMaxLength(262144);
+
+ b.Property("Title")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CountryId");
+
+ b.HasIndex("Edition");
+
+ b.HasIndex("Isbn");
+
+ b.HasIndex("NativeTitle");
+
+ b.HasIndex("Pages");
+
+ b.HasIndex("PreviousId")
+ .IsUnique();
+
+ b.HasIndex("Published");
+
+ b.HasIndex("SourceId");
+
+ b.HasIndex("Synopsis")
+ .HasAnnotation("MySql:FullTextIndex", true);
+
+ b.HasIndex("Title");
+
+ b.ToTable("Books");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.BooksByMachine", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("BookId")
+ .HasColumnType("bigint");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("MachineId")
+ .HasColumnType("int(11)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("BookId");
+
+ b.HasIndex("MachineId");
+
+ b.ToTable("BooksByMachines");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.BooksByMachineFamily", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("BookId")
+ .HasColumnType("bigint");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("MachineFamilyId")
+ .HasColumnType("int(11)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("BookId");
+
+ b.HasIndex("MachineFamilyId");
+
+ b.ToTable("BooksByMachineFamilies");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.BrowserTest", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("int(11)");
+
+ b.Property("Agif")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("agif")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Browser")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("browser")
+ .HasColumnType("varchar(64)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(64);
+
+ b.Property("Colors")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("colors")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Flash")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("flash")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Frames")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("frames")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Gif87")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("gif87")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Gif89")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("gif89")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Jpeg")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("jpeg")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Js")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("js")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Os")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("os")
+ .HasColumnType("varchar(32)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(32);
+
+ b.Property("Platform")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("platform")
+ .HasColumnType("varchar(8)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(8);
+
+ b.Property("Png")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("png")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Pngt")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("pngt")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("Table")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("table")
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValueSql("'0'");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("UserAgent")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("user_agent")
+ .HasColumnType("varchar(128)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(128);
+
+ b.Property("Version")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("version")
+ .HasColumnType("varchar(16)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(16);
+
+ b.HasKey("Id");
+
+ b.HasIndex("Browser")
+ .HasName("idx_browser_tests_browser");
+
+ b.HasIndex("Os")
+ .HasName("idx_browser_tests_os");
+
+ b.HasIndex("Platform")
+ .HasName("idx_browser_tests_platform");
+
+ b.HasIndex("UserAgent")
+ .HasName("idx_browser_tests_user_agent");
+
+ b.HasIndex("Version")
+ .HasName("idx_browser_tests_version");
+
+ b.ToTable("browser_tests");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CompaniesByBook", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("BookId")
+ .HasColumnType("bigint");
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("RoleId")
+ .IsRequired()
+ .HasColumnType("char(3)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("BookId");
+
+ b.HasIndex("CompanyId");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("CompaniesByBooks");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CompaniesByDocument", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DocumentId")
+ .HasColumnType("bigint");
+
+ b.Property("RoleId")
+ .IsRequired()
+ .HasColumnType("char(3)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CompanyId");
+
+ b.HasIndex("DocumentId");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("CompaniesByDocuments");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CompaniesByMagazine", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CompanyId")
+ .HasColumnType("int");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("MagazineId")
+ .HasColumnType("bigint");
+
+ b.Property("RoleId")
+ .IsRequired()
+ .HasColumnType("char(3)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CompanyId");
+
+ b.HasIndex("MagazineId");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("CompaniesByMagazines");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Company", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("int(11)");
+
+ b.Property("Address")
+ .HasColumnName("address")
+ .HasColumnType("varchar(80)")
+ .HasMaxLength(80);
+
+ b.Property("City")
+ .HasColumnName("city")
+ .HasColumnType("varchar(80)")
+ .HasMaxLength(80);
+
+ b.Property("CountryId")
+ .HasColumnName("country")
+ .HasColumnType("smallint(3)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DocumentCompanyId")
+ .HasColumnType("int");
+
+ b.Property("Facebook")
+ .HasColumnName("facebook")
+ .HasColumnType("varchar(45)")
+ .HasMaxLength(45);
+
+ b.Property("Founded")
+ .HasColumnName("founded")
+ .HasColumnType("datetime");
+
+ b.Property("Name")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("name")
+ .HasColumnType("varchar(128)")
+ .HasDefaultValueSql("''");
+
+ b.Property("PostalCode")
+ .HasColumnName("postal_code")
+ .HasColumnType("varchar(25)")
+ .HasMaxLength(25);
+
+ b.Property("Province")
+ .HasColumnName("province")
+ .HasColumnType("varchar(80)")
+ .HasMaxLength(80);
+
+ b.Property("Sold")
+ .HasColumnName("sold")
+ .HasColumnType("datetime");
+
+ b.Property("SoldToId")
+ .HasColumnName("sold_to")
+ .HasColumnType("int(11)");
+
+ b.Property("Status")
+ .HasColumnName("status")
+ .HasColumnType("int(11)");
+
+ b.Property("Twitter")
+ .HasColumnName("twitter")
+ .HasColumnType("varchar(45)")
+ .HasMaxLength(45);
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Website")
+ .HasColumnName("website")
+ .HasColumnType("varchar(255)")
+ .HasMaxLength(255);
+
+ b.HasKey("Id");
+
+ b.HasIndex("Address")
+ .HasName("idx_companies_address");
+
+ b.HasIndex("City")
+ .HasName("idx_companies_city");
+
+ b.HasIndex("CountryId")
+ .HasName("idx_companies_country");
+
+ b.HasIndex("Facebook")
+ .HasName("idx_companies_facebook");
+
+ b.HasIndex("Founded")
+ .HasName("idx_companies_founded");
+
+ b.HasIndex("Name")
+ .HasName("idx_companies_name");
+
+ b.HasIndex("PostalCode")
+ .HasName("idx_companies_postal_code");
+
+ b.HasIndex("Province")
+ .HasName("idx_companies_province");
+
+ b.HasIndex("Sold")
+ .HasName("idx_companies_sold");
+
+ b.HasIndex("SoldToId")
+ .HasName("idx_companies_sold_to");
+
+ b.HasIndex("Status")
+ .HasName("idx_companies_status");
+
+ b.HasIndex("Twitter")
+ .HasName("idx_companies_twitter");
+
+ b.HasIndex("Website")
+ .HasName("idx_companies_website");
+
+ b.ToTable("companies");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CompanyDescription", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("CompanyId")
+ .HasColumnType("int(11)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Html")
+ .HasColumnType("longtext CHARACTER SET utf8mb4")
+ .HasMaxLength(262144);
+
+ b.Property("Text")
+ .IsRequired()
+ .HasColumnType("longtext CHARACTER SET utf8mb4")
+ .HasMaxLength(262144);
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CompanyId");
+
+ b.HasIndex("Text")
+ .HasAnnotation("MySql:FullTextIndex", true);
+
+ b.ToTable("CompanyDescriptions");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CompanyLogo", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("int(11)");
+
+ b.Property("CompanyId")
+ .HasColumnName("company_id")
+ .HasColumnType("int(11)");
+
+ b.Property("Guid")
+ .HasColumnName("logo_guid")
+ .HasColumnType("char(36)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Year")
+ .HasColumnName("year")
+ .HasColumnType("int(4)");
+
+ b.HasKey("Id", "CompanyId", "Guid");
+
+ b.HasIndex("CompanyId")
+ .HasName("idx_company_id");
+
+ b.HasIndex("Guid")
+ .HasName("idx_guid");
+
+ b.HasIndex("Id")
+ .IsUnique()
+ .HasName("idx_id");
+
+ b.ToTable("company_logos");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CurrencyInflation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("CurrencyCode")
+ .IsRequired()
+ .HasColumnType("varchar(3) CHARACTER SET utf8mb4");
+
+ b.Property("Inflation")
+ .HasColumnType("float");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Year")
+ .HasColumnType("int unsigned");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CurrencyCode");
+
+ b.HasIndex("Year");
+
+ b.ToTable("CurrenciesInflation");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.CurrencyPegging", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DestinationCode")
+ .IsRequired()
+ .HasColumnType("varchar(3) CHARACTER SET utf8mb4");
+
+ b.Property("End")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Ratio")
+ .HasColumnType("float");
+
+ b.Property("SourceCode")
+ .IsRequired()
+ .HasColumnType("varchar(3) CHARACTER SET utf8mb4");
+
+ b.Property("Start")
+ .HasColumnType("datetime(6)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DestinationCode");
+
+ b.HasIndex("End");
+
+ b.HasIndex("SourceCode");
+
+ b.HasIndex("Start");
+
+ b.ToTable("CurrenciesPegging");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DbFile", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned");
+
+ b.Property("AccoustId")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Hack")
+ .HasColumnType("bit(1)");
+
+ b.Property("HackGroup")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Infected")
+ .HasColumnType("bit(1)");
+
+ b.Property("Magic")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Malware")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Md5")
+ .HasColumnType("binary(16)");
+
+ b.Property("Mime")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Sha1")
+ .HasColumnType("binary(20)");
+
+ b.Property("Sha256")
+ .HasColumnType("binary(32)");
+
+ b.Property("Sha3")
+ .HasColumnType("binary(64)");
+
+ b.Property("Size")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("Spamsum")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AccoustId");
+
+ b.HasIndex("Hack");
+
+ b.HasIndex("HackGroup");
+
+ b.HasIndex("Infected");
+
+ b.HasIndex("Magic");
+
+ b.HasIndex("Malware");
+
+ b.HasIndex("Md5");
+
+ b.HasIndex("Mime");
+
+ b.HasIndex("Sha1");
+
+ b.HasIndex("Sha256");
+
+ b.HasIndex("Sha3");
+
+ b.HasIndex("Size");
+
+ b.HasIndex("Spamsum");
+
+ b.ToTable("Files");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Document", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CountryId")
+ .HasColumnType("smallint(3)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("NativeTitle")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Published")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Synopsis")
+ .HasColumnType("longtext CHARACTER SET utf8mb4")
+ .HasMaxLength(262144);
+
+ b.Property("Title")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CountryId");
+
+ b.HasIndex("NativeTitle");
+
+ b.HasIndex("Published");
+
+ b.HasIndex("Synopsis")
+ .HasAnnotation("MySql:FullTextIndex", true);
+
+ b.HasIndex("Title");
+
+ b.ToTable("Documents");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DocumentCompany", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("CompanyId")
+ .HasColumnType("int(11)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CompanyId")
+ .IsUnique();
+
+ b.HasIndex("Name");
+
+ b.ToTable("DocumentCompanies");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DocumentPerson", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ b.Property("Alias")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DisplayName")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("PersonId")
+ .HasColumnType("int");
+
+ b.Property("Surname")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Alias");
+
+ b.HasIndex("DisplayName");
+
+ b.HasIndex("Name");
+
+ b.HasIndex("PersonId")
+ .IsUnique();
+
+ b.HasIndex("Surname");
+
+ b.ToTable("DocumentPeople");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DocumentRole", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("char(3)");
+
+ b.Property("Enabled")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bit(1)")
+ .HasDefaultValue(true);
+
+ b.Property("Name")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Enabled");
+
+ b.HasIndex("Name");
+
+ b.ToTable("DocumentRoles");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DocumentsByMachine", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DocumentId")
+ .HasColumnType("bigint");
+
+ b.Property("MachineId")
+ .HasColumnType("int(11)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DocumentId");
+
+ b.HasIndex("MachineId");
+
+ b.ToTable("DocumentsByMachines");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DocumentsByMachineFamily", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DocumentId")
+ .HasColumnType("bigint");
+
+ b.Property("MachineFamilyId")
+ .HasColumnType("int(11)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("DocumentId");
+
+ b.HasIndex("MachineFamilyId");
+
+ b.ToTable("DocumentsByMachineFamily");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.DumpHardware", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Extents")
+ .IsRequired()
+ .HasColumnType("json");
+
+ b.Property("Firmware")
+ .HasColumnType("varchar(32) CHARACTER SET utf8mb4")
+ .HasMaxLength(32);
+
+ b.Property("Manufacturer")
+ .HasColumnType("varchar(48) CHARACTER SET utf8mb4")
+ .HasMaxLength(48);
+
+ b.Property("Model")
+ .IsRequired()
+ .HasColumnType("varchar(48) CHARACTER SET utf8mb4")
+ .HasMaxLength(48);
+
+ b.Property("Revision")
+ .HasColumnType("varchar(48) CHARACTER SET utf8mb4")
+ .HasMaxLength(48);
+
+ b.Property("Serial")
+ .HasColumnType("varchar(64) CHARACTER SET utf8mb4")
+ .HasMaxLength(64);
+
+ b.Property("SoftwareName")
+ .IsRequired()
+ .HasColumnType("varchar(64) CHARACTER SET utf8mb4")
+ .HasMaxLength(64);
+
+ b.Property("SoftwareOperatingSystem")
+ .HasColumnType("varchar(64) CHARACTER SET utf8mb4")
+ .HasMaxLength(64);
+
+ b.Property("SoftwareVersion")
+ .HasColumnType("varchar(32) CHARACTER SET utf8mb4")
+ .HasMaxLength(32);
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Firmware");
+
+ b.HasIndex("Manufacturer");
+
+ b.HasIndex("Model");
+
+ b.HasIndex("Revision");
+
+ b.HasIndex("Serial");
+
+ b.HasIndex("SoftwareName");
+
+ b.HasIndex("SoftwareOperatingSystem");
+
+ b.HasIndex("SoftwareVersion");
+
+ b.ToTable("DumpHardwares");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.FileDataStream", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("FileId")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("Name")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4")
+ .HasMaxLength(255);
+
+ b.Property("Size")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("FileId");
+
+ b.HasIndex("Name");
+
+ b.HasIndex("Size");
+
+ b.ToTable("FileDataStreams");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Filesystem", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned");
+
+ b.Property("ApplicationIdentifier")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("BackupDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Bootable")
+ .HasColumnType("bit(1)");
+
+ b.Property("ClusterSize")
+ .HasColumnType("int");
+
+ b.Property("Clusters")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("DataPreparerIdentifier")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("EffectiveDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("ExpirationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Files")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("FreeClusters")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("Label")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("ModificationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("PublisherIdentifier")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Serial")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("SystemIdentifier")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("Type")
+ .IsRequired()
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.Property("VolumeSetIdentifier")
+ .HasColumnType("varchar(255) CHARACTER SET utf8mb4");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ApplicationIdentifier");
+
+ b.HasIndex("BackupDate");
+
+ b.HasIndex("CreationDate");
+
+ b.HasIndex("DataPreparerIdentifier");
+
+ b.HasIndex("Label");
+
+ b.HasIndex("ModificationDate");
+
+ b.HasIndex("PublisherIdentifier");
+
+ b.HasIndex("Serial");
+
+ b.HasIndex("SystemIdentifier");
+
+ b.HasIndex("Type");
+
+ b.HasIndex("VolumeSetIdentifier");
+
+ b.ToTable("Filesystems");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.FilesystemsByLogicalPartition", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint unsigned");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("FilesystemId")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("PartitionId")
+ .HasColumnType("bigint unsigned");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("FilesystemId");
+
+ b.HasIndex("PartitionId");
+
+ b.ToTable("FilesystemsByLogicalPartition");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Forbidden", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("int(11)");
+
+ b.Property("Browser")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("browser")
+ .HasColumnType("char(128)")
+ .HasDefaultValueSql("''");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("Date")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("date")
+ .HasColumnType("char(20)")
+ .HasDefaultValueSql("''");
+
+ b.Property("Ip")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("ip")
+ .HasColumnType("char(16)")
+ .HasDefaultValueSql("''");
+
+ b.Property("Referer")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("referer")
+ .HasColumnType("char(255)")
+ .HasDefaultValueSql("''");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Browser")
+ .HasName("idx_forbidden_browser");
+
+ b.HasIndex("Date")
+ .HasName("idx_forbidden_date");
+
+ b.HasIndex("Ip")
+ .HasName("idx_forbidden_ip");
+
+ b.HasIndex("Referer")
+ .HasName("idx_forbidden_referer");
+
+ b.ToTable("forbidden");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.Gpu", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("int(11)");
+
+ b.Property("CompanyId")
+ .HasColumnName("company")
+ .HasColumnType("int(11)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("DieSize")
+ .HasColumnName("die_size")
+ .HasColumnType("float");
+
+ b.Property("Introduced")
+ .HasColumnName("introduced")
+ .HasColumnType("datetime");
+
+ b.Property("ModelCode")
+ .HasColumnName("model_code")
+ .HasColumnType("varchar(45)")
+ .HasMaxLength(45);
+
+ b.Property("Name")
+ .IsRequired()
+ .ValueGeneratedOnAdd()
+ .HasColumnName("name")
+ .HasColumnType("char(128)")
+ .HasDefaultValueSql("''")
+ .HasMaxLength(128);
+
+ b.Property("Package")
+ .HasColumnName("package")
+ .HasColumnType("varchar(45)")
+ .HasMaxLength(45);
+
+ b.Property("Process")
+ .HasColumnName("process")
+ .HasColumnType("varchar(45)")
+ .HasMaxLength(45);
+
+ b.Property("ProcessNm")
+ .HasColumnName("process_nm")
+ .HasColumnType("float");
+
+ b.Property("Transistors")
+ .HasColumnName("transistors")
+ .HasColumnType("bigint(20)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CompanyId")
+ .HasName("idx_gpus_company");
+
+ b.HasIndex("DieSize")
+ .HasName("idx_gpus_die_size");
+
+ b.HasIndex("Introduced")
+ .HasName("idx_gpus_introduced");
+
+ b.HasIndex("ModelCode")
+ .HasName("idx_gpus_model_code");
+
+ b.HasIndex("Name")
+ .HasName("idx_gpus_name");
+
+ b.HasIndex("Package")
+ .HasName("idx_gpus_package");
+
+ b.HasIndex("Process")
+ .HasName("idx_gpus_process");
+
+ b.HasIndex("ProcessNm")
+ .HasName("idx_gpus_process_nm");
+
+ b.HasIndex("Transistors")
+ .HasName("idx_gpus_transistors");
+
+ b.ToTable("gpus");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.GpusByMachine", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnName("id")
+ .HasColumnType("bigint(20)");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property("GpuId")
+ .HasColumnName("gpu")
+ .HasColumnType("int(11)");
+
+ b.Property("MachineId")
+ .HasColumnName("machine")
+ .HasColumnType("int(11)");
+
+ b.Property("UpdatedOn")
+ .ValueGeneratedOnAddOrUpdate()
+ .HasColumnType("datetime(6)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("GpuId")
+ .HasName("idx_gpus_by_machine_gpus");
+
+ b.HasIndex("MachineId")
+ .HasName("idx_gpus_by_machine_machine");
+
+ b.ToTable("gpus_by_machine");
+ });
+
+ modelBuilder.Entity("Marechai.Database.Models.GpusByOwnedMachine", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ b.Property("CreatedOn")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("datetime(6)");
+
+ b.Property