diff --git a/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.Designer.cs b/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.Designer.cs new file mode 100644 index 00000000..bb8aa796 --- /dev/null +++ b/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.Designer.cs @@ -0,0 +1,1892 @@ +// +using System; +using Cicm.Database.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +namespace Cicm.Database.Migrations +{ + [DbContext(typeof(cicmContext))] + [Migration("20190519144028_GrayscaleResolutions")] + partial class GrayscaleResolutions + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "2.2.4-servicing-10062") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("Cicm.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("''"); + + b.Property("Colors") + .ValueGeneratedOnAdd() + .HasColumnName("colors") + .HasColumnType("tinyint(1)") + .HasDefaultValueSql("'0'"); + + 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("''"); + + b.Property("Platform") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("platform") + .HasColumnType("varchar(8)") + .HasDefaultValueSql("''"); + + 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("UserAgent") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("user_agent") + .HasColumnType("varchar(128)") + .HasDefaultValueSql("''"); + + b.Property("Version") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("version") + .HasColumnType("varchar(16)") + .HasDefaultValueSql("''"); + + 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("Cicm.Database.Models.CicmDb", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Updated") + .ValueGeneratedOnAdd() + .HasColumnName("updated") + .HasColumnType("datetime") + .HasDefaultValueSql("'CURRENT_TIMESTAMP'"); + + b.Property("Version") + .HasColumnName("version") + .HasColumnType("int(11)"); + + b.HasKey("Id"); + + b.ToTable("cicm_db"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Company", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Address") + .HasColumnName("address") + .HasColumnType("varchar(80)"); + + b.Property("City") + .HasColumnName("city") + .HasColumnType("varchar(80)"); + + b.Property("CountryId") + .HasColumnName("country") + .HasColumnType("smallint(3)"); + + b.Property("Facebook") + .HasColumnName("facebook") + .HasColumnType("varchar(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)"); + + b.Property("Province") + .HasColumnName("province") + .HasColumnType("varchar(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)"); + + b.Property("Website") + .HasColumnName("website") + .HasColumnType("varchar(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("Cicm.Database.Models.CompanyDescription", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("CompanyId"); + + b.Property("Html") + .HasMaxLength(262144); + + b.Property("Text") + .HasMaxLength(262144); + + b.HasKey("Id"); + + b.HasIndex("CompanyId"); + + b.HasIndex("Text") + .HasAnnotation("MySql:FullTextIndex", true); + + b.ToTable("CompanyDescriptions"); + }); + + modelBuilder.Entity("Cicm.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("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("Cicm.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("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.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("Cicm.Database.Models.Gpu", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("CompanyId") + .HasColumnName("company") + .HasColumnType("int(11)"); + + b.Property("DieSize") + .HasColumnName("die_size"); + + b.Property("Introduced") + .HasColumnName("introduced") + .HasColumnType("datetime"); + + b.Property("ModelCode") + .HasColumnName("model_code") + .HasColumnType("varchar(45)"); + + b.Property("Name") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("name") + .HasColumnType("char(128)") + .HasDefaultValueSql("''"); + + b.Property("Package") + .HasColumnName("package") + .HasColumnType("varchar(45)"); + + b.Property("Process") + .HasColumnName("process") + .HasColumnType("varchar(45)"); + + b.Property("ProcessNm") + .HasColumnName("process_nm"); + + b.Property("Transistors") + .HasColumnName("transistors") + .HasColumnType("bigint(20)"); + + 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("Cicm.Database.Models.GpusByMachine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("GpuId") + .HasColumnName("gpu") + .HasColumnType("int(11)"); + + b.Property("MachineId") + .HasColumnName("machine") + .HasColumnType("int(11)"); + + 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("Cicm.Database.Models.InstructionSet", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Name") + .IsRequired() + .HasColumnName("instruction_set") + .HasColumnType("varchar(45)"); + + b.HasKey("Id"); + + b.ToTable("instruction_sets"); + }); + + modelBuilder.Entity("Cicm.Database.Models.InstructionSetExtension", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Extension") + .IsRequired() + .HasColumnName("extension") + .HasColumnType("varchar(45)"); + + b.HasKey("Id"); + + b.ToTable("instruction_set_extensions"); + }); + + modelBuilder.Entity("Cicm.Database.Models.InstructionSetExtensionsByProcessor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("ProcessorId") + .HasColumnName("processor_id") + .HasColumnType("int(11)"); + + b.Property("ExtensionId") + .HasColumnName("extension_id") + .HasColumnType("int(11)"); + + b.HasKey("Id", "ProcessorId", "ExtensionId"); + + b.HasIndex("ExtensionId") + .HasName("idx_setextension_extension"); + + b.HasIndex("ProcessorId") + .HasName("idx_setextension_processor"); + + b.ToTable("instruction_set_extensions_by_processor"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Iso31661Numeric", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("smallint(3)"); + + b.Property("Name") + .IsRequired() + .HasColumnName("name") + .HasColumnType("varchar(64)"); + + b.HasKey("Id"); + + b.HasIndex("Name") + .HasName("idx_name"); + + b.ToTable("iso3166_1_numeric"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Log", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Browser") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("browser") + .HasColumnType("char(128)") + .HasDefaultValueSql("''"); + + 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.HasKey("Id"); + + b.HasIndex("Browser") + .HasName("idx_log_browser"); + + b.HasIndex("Date") + .HasName("idx_log_date"); + + b.HasIndex("Ip") + .HasName("idx_log_ip"); + + b.HasIndex("Referer") + .HasName("idx_log_referer"); + + b.ToTable("log"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Machine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("CompanyId") + .ValueGeneratedOnAdd() + .HasColumnName("company") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("FamilyId") + .HasColumnName("family") + .HasColumnType("int(11)"); + + b.Property("Introduced") + .HasColumnName("introduced") + .HasColumnType("datetime"); + + b.Property("Model") + .HasColumnName("model") + .HasColumnType("varchar(50)"); + + b.Property("Name") + .IsRequired() + .HasColumnName("name") + .HasColumnType("varchar(255)"); + + b.Property("Type") + .ValueGeneratedOnAdd() + .HasColumnName("type") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("CompanyId") + .HasName("idx_machines_company"); + + b.HasIndex("FamilyId") + .HasName("idx_machines_family"); + + b.HasIndex("Introduced") + .HasName("idx_machines_introduced"); + + b.HasIndex("Model") + .HasName("idx_machines_model"); + + b.HasIndex("Name") + .HasName("idx_machines_name"); + + b.HasIndex("Type") + .HasName("idx_machines_type"); + + b.ToTable("machines"); + }); + + modelBuilder.Entity("Cicm.Database.Models.MachineFamily", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("CompanyId") + .HasColumnName("company") + .HasColumnType("int(11)"); + + b.Property("Name") + .IsRequired() + .HasColumnName("name") + .HasColumnType("varchar(255)"); + + b.HasKey("Id"); + + b.HasIndex("CompanyId") + .HasName("idx_machine_families_company"); + + b.HasIndex("Name") + .HasName("idx_machine_families_name"); + + b.ToTable("machine_families"); + }); + + modelBuilder.Entity("Cicm.Database.Models.MemoryByMachine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("MachineId") + .HasColumnName("machine") + .HasColumnType("int(11)"); + + b.Property("Size") + .HasColumnName("size") + .HasColumnType("bigint(20)"); + + b.Property("Speed") + .HasColumnName("speed"); + + b.Property("Type") + .ValueGeneratedOnAdd() + .HasColumnName("type") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Usage") + .ValueGeneratedOnAdd() + .HasColumnName("usage") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("MachineId") + .HasName("idx_memory_by_machine_machine"); + + b.HasIndex("Size") + .HasName("idx_memory_by_machine_size"); + + b.HasIndex("Speed") + .HasName("idx_memory_by_machine_speed"); + + b.HasIndex("Type") + .HasName("idx_memory_by_machine_type"); + + b.HasIndex("Usage") + .HasName("idx_memory_by_machine_usage"); + + b.ToTable("memory_by_machine"); + }); + + modelBuilder.Entity("Cicm.Database.Models.MoneyDonation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Donator") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("donator") + .HasColumnType("char(128)") + .HasDefaultValueSql("''"); + + b.Property("Quantity") + .ValueGeneratedOnAdd() + .HasColumnName("quantity") + .HasColumnType("decimal(11,2)") + .HasDefaultValueSql("'0.00'"); + + b.HasKey("Id"); + + b.HasIndex("Donator") + .HasName("idx_money_donations_donator"); + + b.HasIndex("Quantity") + .HasName("idx_money_donations_quantity"); + + b.ToTable("money_donations"); + }); + + modelBuilder.Entity("Cicm.Database.Models.News", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("AddedId") + .ValueGeneratedOnAdd() + .HasColumnName("added_id") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Date") + .HasColumnName("date") + .HasColumnType("datetime"); + + b.Property("Type") + .ValueGeneratedOnAdd() + .HasColumnName("type") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("AddedId") + .HasName("idx_news_ip"); + + b.HasIndex("Date") + .HasName("idx_news_date"); + + b.HasIndex("Type") + .HasName("idx_news_type"); + + b.ToTable("news"); + }); + + modelBuilder.Entity("Cicm.Database.Models.OwnedComputer", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Boxed") + .ValueGeneratedOnAdd() + .HasColumnName("boxed") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Cap1") + .ValueGeneratedOnAdd() + .HasColumnName("cap1") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Cap2") + .ValueGeneratedOnAdd() + .HasColumnName("cap2") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Cpu1") + .ValueGeneratedOnAdd() + .HasColumnName("cpu1") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Cpu2") + .ValueGeneratedOnAdd() + .HasColumnName("cpu2") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Date") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("date") + .HasColumnType("varchar(20)") + .HasDefaultValueSql("''"); + + b.Property("DbId") + .ValueGeneratedOnAdd() + .HasColumnName("db_id") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Disk1") + .ValueGeneratedOnAdd() + .HasColumnName("disk1") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Disk2") + .ValueGeneratedOnAdd() + .HasColumnName("disk2") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Manuals") + .ValueGeneratedOnAdd() + .HasColumnName("manuals") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Mhz1") + .ValueGeneratedOnAdd() + .HasColumnName("mhz1") + .HasColumnType("decimal(10,0)") + .HasDefaultValueSql("'0'"); + + b.Property("Mhz2") + .ValueGeneratedOnAdd() + .HasColumnName("mhz2") + .HasColumnType("decimal(10,0)") + .HasDefaultValueSql("'0'"); + + b.Property("Ram") + .ValueGeneratedOnAdd() + .HasColumnName("ram") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Rigid") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("rigid") + .HasColumnType("varchar(64)") + .HasDefaultValueSql("''"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnName("status") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Trade") + .ValueGeneratedOnAdd() + .HasColumnName("trade") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Vram") + .ValueGeneratedOnAdd() + .HasColumnName("vram") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("Boxed") + .HasName("idx_owned_computers_boxed"); + + b.HasIndex("Cap1") + .HasName("idx_owned_computers_cap1"); + + b.HasIndex("Cap2") + .HasName("idx_owned_computers_cap2"); + + b.HasIndex("Cpu1") + .HasName("idx_owned_computers_cpu1"); + + b.HasIndex("Cpu2") + .HasName("idx_owned_computers_cpu2"); + + b.HasIndex("Date") + .HasName("idx_owned_computers_date"); + + b.HasIndex("DbId") + .HasName("idx_owned_computers_db_id"); + + b.HasIndex("Disk1") + .HasName("idx_owned_computers_disk1"); + + b.HasIndex("Disk2") + .HasName("idx_owned_computers_disk2"); + + b.HasIndex("Manuals") + .HasName("idx_owned_computers_manuals"); + + b.HasIndex("Mhz1") + .HasName("idx_owned_computers_mhz1"); + + b.HasIndex("Mhz2") + .HasName("idx_owned_computers_mhz2"); + + b.HasIndex("Ram") + .HasName("idx_owned_computers_ram"); + + b.HasIndex("Rigid") + .HasName("idx_owned_computers_rigid"); + + b.HasIndex("Status") + .HasName("idx_owned_computers_status"); + + b.HasIndex("Trade") + .HasName("idx_owned_computers_trade"); + + b.HasIndex("Vram") + .HasName("idx_owned_computers_vram"); + + b.ToTable("owned_computers"); + }); + + modelBuilder.Entity("Cicm.Database.Models.OwnedConsole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Boxed") + .ValueGeneratedOnAdd() + .HasColumnName("boxed") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Date") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("date") + .HasColumnType("char(20)") + .HasDefaultValueSql("''"); + + b.Property("DbId") + .ValueGeneratedOnAdd() + .HasColumnName("db_id") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Manuals") + .ValueGeneratedOnAdd() + .HasColumnName("manuals") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnName("status") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Trade") + .ValueGeneratedOnAdd() + .HasColumnName("trade") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("Boxed") + .HasName("idx_owned_consoles_boxed"); + + b.HasIndex("Date") + .HasName("idx_owned_consoles_date"); + + b.HasIndex("DbId") + .HasName("idx_owned_consoles_db_id"); + + b.HasIndex("Manuals") + .HasName("idx_owned_consoles_manuals"); + + b.HasIndex("Status") + .HasName("idx_owned_consoles_status"); + + b.HasIndex("Trade") + .HasName("idx_owned_consoles_trade"); + + b.ToTable("owned_consoles"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Processor", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("AddrBus") + .HasColumnName("addr_bus") + .HasColumnType("int(11)"); + + b.Property("CompanyId") + .HasColumnName("company") + .HasColumnType("int(11)"); + + b.Property("Cores") + .HasColumnName("cores") + .HasColumnType("int(11)"); + + b.Property("DataBus") + .HasColumnName("data_bus") + .HasColumnType("int(11)"); + + b.Property("DieSize") + .HasColumnName("die_size"); + + b.Property("FprSize") + .HasColumnName("FPR_size") + .HasColumnType("int(11)"); + + b.Property("Fprs") + .HasColumnName("FPRs") + .HasColumnType("int(11)"); + + b.Property("GprSize") + .HasColumnName("GPR_size") + .HasColumnType("int(11)"); + + b.Property("Gprs") + .HasColumnName("GPRs") + .HasColumnType("int(11)"); + + b.Property("InstructionSetId") + .HasColumnName("instruction_set") + .HasColumnType("int(11)"); + + b.Property("Introduced") + .HasColumnName("introduced") + .HasColumnType("datetime"); + + b.Property("L1Data") + .HasColumnName("L1_data"); + + b.Property("L1Instruction") + .HasColumnName("L1_instruction"); + + b.Property("L2"); + + b.Property("L3"); + + b.Property("ModelCode") + .HasColumnName("model_code") + .HasColumnType("varchar(45)"); + + b.Property("Name") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("name") + .HasColumnType("char(50)") + .HasDefaultValueSql("''"); + + b.Property("Package") + .HasColumnName("package") + .HasColumnType("varchar(45)"); + + b.Property("Process") + .HasColumnName("process") + .HasColumnType("varchar(45)"); + + b.Property("ProcessNm") + .HasColumnName("process_nm"); + + b.Property("SimdRegisters") + .HasColumnName("SIMD_registers") + .HasColumnType("int(11)"); + + b.Property("SimdSize") + .HasColumnName("SIMD_size") + .HasColumnType("int(11)"); + + b.Property("Speed") + .HasColumnName("speed"); + + b.Property("ThreadsPerCore") + .HasColumnName("threads_per_core") + .HasColumnType("int(11)"); + + b.Property("Transistors") + .HasColumnName("transistors") + .HasColumnType("bigint(20)"); + + b.HasKey("Id"); + + b.HasIndex("AddrBus") + .HasName("idx_processors_addr_bus"); + + b.HasIndex("CompanyId") + .HasName("idx_processors_company"); + + b.HasIndex("Cores") + .HasName("idx_processors_cores"); + + b.HasIndex("DataBus") + .HasName("idx_processors_data_bus"); + + b.HasIndex("DieSize") + .HasName("idx_processors_die_size"); + + b.HasIndex("FprSize") + .HasName("idx_processors_FPR_size"); + + b.HasIndex("Fprs") + .HasName("idx_processors_FPRs"); + + b.HasIndex("GprSize") + .HasName("idx_processors_GPR_size"); + + b.HasIndex("Gprs") + .HasName("idx_processors_GPRs"); + + b.HasIndex("InstructionSetId") + .HasName("idx_processors_instruction_set"); + + b.HasIndex("Introduced") + .HasName("idx_processors_introduced"); + + b.HasIndex("L1Data") + .HasName("idx_processors_L1_data"); + + b.HasIndex("L1Instruction") + .HasName("idx_processors_L1_instruction"); + + b.HasIndex("L2") + .HasName("idx_processors_L2"); + + b.HasIndex("L3") + .HasName("idx_processors_L3"); + + b.HasIndex("ModelCode") + .HasName("idx_processors_model_code"); + + b.HasIndex("Name") + .HasName("idx_processors_name"); + + b.HasIndex("Package") + .HasName("idx_processors_package"); + + b.HasIndex("Process") + .HasName("idx_processors_process"); + + b.HasIndex("ProcessNm") + .HasName("idx_processors_process_nm"); + + b.HasIndex("SimdRegisters") + .HasName("idx_processors_SIMD_registers"); + + b.HasIndex("SimdSize") + .HasName("idx_processors_SIMD_size"); + + b.HasIndex("Speed") + .HasName("idx_processors_speed"); + + b.HasIndex("ThreadsPerCore") + .HasName("idx_processors_threads_per_core"); + + b.HasIndex("Transistors") + .HasName("idx_processors_transistors"); + + b.ToTable("processors"); + }); + + modelBuilder.Entity("Cicm.Database.Models.ProcessorsByMachine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("MachineId") + .HasColumnName("machine") + .HasColumnType("int(11)"); + + b.Property("ProcessorId") + .HasColumnName("processor") + .HasColumnType("int(11)"); + + b.Property("Speed") + .HasColumnName("speed"); + + b.HasKey("Id"); + + b.HasIndex("MachineId") + .HasName("idx_processors_by_machine_machine"); + + b.HasIndex("ProcessorId") + .HasName("idx_processors_by_machine_processor"); + + b.HasIndex("Speed") + .HasName("idx_processors_by_machine_speed"); + + b.ToTable("processors_by_machine"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Resolution", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("Chars") + .ValueGeneratedOnAdd() + .HasColumnName("chars") + .HasColumnType("tinyint(1)") + .HasDefaultValueSql("'0'"); + + b.Property("Colors") + .HasColumnName("colors") + .HasColumnType("bigint(20)"); + + b.Property("Grayscale"); + + b.Property("Height") + .ValueGeneratedOnAdd() + .HasColumnName("height") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("Palette") + .HasColumnName("palette") + .HasColumnType("bigint(20)"); + + b.Property("Width") + .ValueGeneratedOnAdd() + .HasColumnName("width") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("Colors") + .HasName("idx_resolutions_colors"); + + b.HasIndex("Height") + .HasName("idx_resolutions_height"); + + b.HasIndex("Palette") + .HasName("idx_resolutions_palette"); + + b.HasIndex("Width") + .HasName("idx_resolutions_width"); + + b.HasIndex("Width", "Height") + .HasName("idx_resolutions_resolution"); + + b.HasIndex("Width", "Height", "Colors") + .HasName("idx_resolutions_resolution_with_color"); + + b.HasIndex("Width", "Height", "Colors", "Palette") + .HasName("idx_resolutions_resolution_with_color_and_palette"); + + b.ToTable("resolutions"); + }); + + modelBuilder.Entity("Cicm.Database.Models.ResolutionsByGpu", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("GpuId") + .HasColumnName("gpu") + .HasColumnType("int(11)"); + + b.Property("ResolutionId") + .HasColumnName("resolution") + .HasColumnType("int(11)"); + + b.HasKey("Id"); + + b.HasIndex("GpuId") + .HasName("idx_resolutions_by_gpu_gpu"); + + b.HasIndex("ResolutionId") + .HasName("idx_resolutions_by_gpu_resolution"); + + b.ToTable("resolutions_by_gpu"); + }); + + modelBuilder.Entity("Cicm.Database.Models.SoundByMachine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("MachineId") + .HasColumnName("machine") + .HasColumnType("int(11)"); + + b.Property("SoundSynthId") + .HasColumnName("sound_synth") + .HasColumnType("int(11)"); + + b.HasKey("Id"); + + b.HasIndex("MachineId") + .HasName("idx_sound_by_machine_machine"); + + b.HasIndex("SoundSynthId") + .HasName("idx_sound_by_machine_sound_synth"); + + b.ToTable("sound_by_machine"); + }); + + modelBuilder.Entity("Cicm.Database.Models.SoundSynth", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("int(11)"); + + b.Property("CompanyId") + .HasColumnName("company") + .HasColumnType("int(11)"); + + b.Property("Depth") + .HasColumnName("depth") + .HasColumnType("int(11)"); + + b.Property("Frequency") + .HasColumnName("frequency"); + + b.Property("Introduced") + .HasColumnName("introduced") + .HasColumnType("datetime"); + + b.Property("ModelCode") + .HasColumnName("model_code") + .HasColumnType("varchar(45)"); + + b.Property("Name") + .IsRequired() + .ValueGeneratedOnAdd() + .HasColumnName("name") + .HasColumnType("char(50)") + .HasDefaultValueSql("''"); + + b.Property("SquareWave") + .HasColumnName("square_wave") + .HasColumnType("int(11)"); + + b.Property("Type") + .HasColumnName("type") + .HasColumnType("int(11)"); + + b.Property("Voices") + .HasColumnName("voices") + .HasColumnType("int(11)"); + + b.Property("WhiteNoise") + .HasColumnName("white_noise") + .HasColumnType("int(11)"); + + b.HasKey("Id"); + + b.HasIndex("CompanyId") + .HasName("idx_sound_synths_company"); + + b.HasIndex("Depth") + .HasName("idx_sound_synths_depth"); + + b.HasIndex("Frequency") + .HasName("idx_sound_synths_frequency"); + + b.HasIndex("Introduced") + .HasName("idx_sound_synths_introduced"); + + b.HasIndex("ModelCode") + .HasName("idx_sound_synths_model_code"); + + b.HasIndex("Name") + .HasName("idx_sound_synths_name"); + + b.HasIndex("SquareWave") + .HasName("idx_sound_synths_square_wave"); + + b.HasIndex("Type") + .HasName("idx_sound_synths_type"); + + b.HasIndex("Voices") + .HasName("idx_sound_synths_voices"); + + b.HasIndex("WhiteNoise") + .HasName("idx_sound_synths_white_noise"); + + b.ToTable("sound_synths"); + }); + + modelBuilder.Entity("Cicm.Database.Models.StorageByMachine", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnName("id") + .HasColumnType("bigint(20)"); + + b.Property("Capacity") + .HasColumnName("capacity") + .HasColumnType("bigint(20)"); + + b.Property("Interface") + .ValueGeneratedOnAdd() + .HasColumnName("interface") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.Property("MachineId") + .HasColumnName("machine") + .HasColumnType("int(11)"); + + b.Property("Type") + .ValueGeneratedOnAdd() + .HasColumnName("type") + .HasColumnType("int(11)") + .HasDefaultValueSql("'0'"); + + b.HasKey("Id"); + + b.HasIndex("Capacity") + .HasName("idx_storage_capacity"); + + b.HasIndex("Interface") + .HasName("idx_storage_interface"); + + b.HasIndex("MachineId") + .HasName("idx_storage_machine"); + + b.HasIndex("Type") + .HasName("idx_storage_type"); + + b.ToTable("storage_by_machine"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("Name") + .HasMaxLength(256); + + b.Property("NormalizedName") + .HasMaxLength(256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedName") + .IsUnique() + .HasName("RoleNameIndex"); + + b.ToTable("AspNetRoles"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType"); + + b.Property("ClaimValue"); + + b.Property("RoleId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetRoleClaims"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AccessFailedCount"); + + b.Property("ConcurrencyStamp") + .IsConcurrencyToken(); + + b.Property("Email") + .HasMaxLength(256); + + b.Property("EmailConfirmed"); + + b.Property("LockoutEnabled"); + + b.Property("LockoutEnd"); + + b.Property("NormalizedEmail") + .HasMaxLength(256); + + b.Property("NormalizedUserName") + .HasMaxLength(256); + + b.Property("PasswordHash"); + + b.Property("PhoneNumber"); + + b.Property("PhoneNumberConfirmed"); + + b.Property("SecurityStamp"); + + b.Property("TwoFactorEnabled"); + + b.Property("UserName") + .HasMaxLength(256); + + b.HasKey("Id"); + + b.HasIndex("NormalizedEmail") + .HasName("EmailIndex"); + + b.HasIndex("NormalizedUserName") + .IsUnique() + .HasName("UserNameIndex"); + + b.ToTable("AspNetUsers"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ClaimType"); + + b.Property("ClaimValue"); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserClaims"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.Property("LoginProvider") + .HasMaxLength(128); + + b.Property("ProviderKey") + .HasMaxLength(128); + + b.Property("ProviderDisplayName"); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("LoginProvider", "ProviderKey"); + + b.HasIndex("UserId"); + + b.ToTable("AspNetUserLogins"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.Property("UserId"); + + b.Property("RoleId"); + + b.HasKey("UserId", "RoleId"); + + b.HasIndex("RoleId"); + + b.ToTable("AspNetUserRoles"); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.Property("UserId"); + + b.Property("LoginProvider") + .HasMaxLength(128); + + b.Property("Name") + .HasMaxLength(128); + + b.Property("Value"); + + b.HasKey("UserId", "LoginProvider", "Name"); + + b.ToTable("AspNetUserTokens"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Company", b => + { + b.HasOne("Cicm.Database.Models.Iso31661Numeric", "Country") + .WithMany("Companies") + .HasForeignKey("CountryId") + .HasConstraintName("fk_companies_country"); + + b.HasOne("Cicm.Database.Models.Company", "SoldTo") + .WithMany("InverseSoldToNavigation") + .HasForeignKey("SoldToId") + .HasConstraintName("fk_companies_sold_to"); + }); + + modelBuilder.Entity("Cicm.Database.Models.CompanyDescription", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("Descriptions") + .HasForeignKey("CompanyId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.CompanyLogo", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("Logos") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_company_logos_company1"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Gpu", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("Gpus") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_gpus_company"); + }); + + modelBuilder.Entity("Cicm.Database.Models.GpusByMachine", b => + { + b.HasOne("Cicm.Database.Models.Gpu", "Gpu") + .WithMany("GpusByMachine") + .HasForeignKey("GpuId") + .HasConstraintName("fk_gpus_by_machine_gpu") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Cicm.Database.Models.Machine", "Machine") + .WithMany("Gpus") + .HasForeignKey("MachineId") + .HasConstraintName("fk_gpus_by_machine_machine") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.InstructionSetExtensionsByProcessor", b => + { + b.HasOne("Cicm.Database.Models.InstructionSetExtension", "Extension") + .WithMany("InstructionSetExtensionsByProcessor") + .HasForeignKey("ExtensionId") + .HasConstraintName("fk_extension_extension_id"); + + b.HasOne("Cicm.Database.Models.Processor", "Processor") + .WithMany("InstructionSetExtensions") + .HasForeignKey("ProcessorId") + .HasConstraintName("fk_extension_processor_id"); + }); + + modelBuilder.Entity("Cicm.Database.Models.Machine", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("Machines") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_machines_company"); + + b.HasOne("Cicm.Database.Models.MachineFamily", "Family") + .WithMany("Machines") + .HasForeignKey("FamilyId") + .HasConstraintName("fk_machines_family"); + }); + + modelBuilder.Entity("Cicm.Database.Models.MachineFamily", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("MachineFamilies") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_machine_families_company") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.MemoryByMachine", b => + { + b.HasOne("Cicm.Database.Models.Machine", "Machine") + .WithMany("Memory") + .HasForeignKey("MachineId") + .HasConstraintName("fk_memory_by_machine_machine") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.Processor", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("Processors") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_processors_company"); + + b.HasOne("Cicm.Database.Models.InstructionSet", "InstructionSet") + .WithMany("Processors") + .HasForeignKey("InstructionSetId") + .HasConstraintName("fk_processors_instruction_set"); + }); + + modelBuilder.Entity("Cicm.Database.Models.ProcessorsByMachine", b => + { + b.HasOne("Cicm.Database.Models.Machine", "Machine") + .WithMany("Processors") + .HasForeignKey("MachineId") + .HasConstraintName("fk_processors_by_machine_machine") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Cicm.Database.Models.Processor", "Processor") + .WithMany("ProcessorsByMachine") + .HasForeignKey("ProcessorId") + .HasConstraintName("fk_processors_by_machine_processor") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.ResolutionsByGpu", b => + { + b.HasOne("Cicm.Database.Models.Gpu", "Gpu") + .WithMany("ResolutionsByGpu") + .HasForeignKey("GpuId") + .HasConstraintName("fk_resolutions_by_gpu_gpu") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Cicm.Database.Models.Resolution", "Resolution") + .WithMany("ResolutionsByGpu") + .HasForeignKey("ResolutionId") + .HasConstraintName("fk_resolutions_by_gpu_resolution") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.SoundByMachine", b => + { + b.HasOne("Cicm.Database.Models.Machine", "Machine") + .WithMany("Sound") + .HasForeignKey("MachineId") + .HasConstraintName("fk_sound_by_machine_machine") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Cicm.Database.Models.SoundSynth", "SoundSynth") + .WithMany("SoundByMachine") + .HasForeignKey("SoundSynthId") + .HasConstraintName("fk_sound_by_machine_sound_synth") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Cicm.Database.Models.SoundSynth", b => + { + b.HasOne("Cicm.Database.Models.Company", "Company") + .WithMany("SoundSynths") + .HasForeignKey("CompanyId") + .HasConstraintName("fk_sound_synths_company"); + }); + + modelBuilder.Entity("Cicm.Database.Models.StorageByMachine", b => + { + b.HasOne("Cicm.Database.Models.Machine", "Machine") + .WithMany("Storage") + .HasForeignKey("MachineId") + .HasConstraintName("fk_storage_by_machine_machine") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole") + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole") + .WithMany() + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => + { + b.HasOne("Microsoft.AspNetCore.Identity.IdentityUser") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.cs b/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.cs new file mode 100644 index 00000000..7843f140 --- /dev/null +++ b/Cicm.Database/Migrations/20190519144028_GrayscaleResolutions.cs @@ -0,0 +1,17 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Cicm.Database.Migrations +{ + public partial class GrayscaleResolutions : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn("Grayscale", "resolutions", nullable: false, defaultValue: false); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn("Grayscale", "resolutions"); + } + } +} \ No newline at end of file diff --git a/Cicm.Database/Migrations/cicmContextModelSnapshot.cs b/Cicm.Database/Migrations/cicmContextModelSnapshot.cs index a2fb364d..2933c81e 100644 --- a/Cicm.Database/Migrations/cicmContextModelSnapshot.cs +++ b/Cicm.Database/Migrations/cicmContextModelSnapshot.cs @@ -770,6 +770,8 @@ namespace Cicm.Database.Migrations b.Property("Colors").HasColumnName("colors").HasColumnType("bigint(20)"); + b.Property("Grayscale"); + b.Property("Height").ValueGeneratedOnAdd().HasColumnName("height").HasColumnType("int(11)") .HasDefaultValueSql("'0'"); diff --git a/Cicm.Database/Models/Resolution.cs b/Cicm.Database/Models/Resolution.cs index 40dddce9..a1a82aa3 100644 --- a/Cicm.Database/Models/Resolution.cs +++ b/Cicm.Database/Models/Resolution.cs @@ -47,6 +47,8 @@ namespace Cicm.Database.Models public long? Palette { get; set; } [DisplayName("Character based")] public bool Chars { get; set; } + [DisplayName("Grayscale")] + public bool Grayscale { get; set; } public virtual ICollection ResolutionsByGpu { get; set; } @@ -59,17 +61,25 @@ namespace Cicm.Database.Models if(Colors == null) return $"{Width}x{Height} characters"; if(Palette != null && Colors != Palette) - return $"{Width}x{Height} characters at {Colors} colors from a palette of {Palette}"; + return Grayscale + ? $"{Width}x{Height} characters at {Colors} grays from a palette of {Palette}" + : $"{Width}x{Height} characters at {Colors} colors from a palette of {Palette}"; - return $"{Width}x{Height} characters at {Colors} colors"; + return Colors == 2 && Grayscale + ? $"{Width}x{Height} black and white characters" + : $"{Width}x{Height} characters at {Colors} colors"; } if(Colors == null) return $"{Width}x{Height} pixels"; if(Palette != null && Colors != Palette) - return $"{Width}x{Height} pixels at {Colors} colors from a palette of {Palette}"; + return Grayscale + ? $"{Width}x{Height} pixels at {Colors} grays from a palette of {Palette}" + : $"{Width}x{Height} pixels at {Colors} colors from a palette of {Palette}"; - return $"{Width}x{Height} pixels at {Colors} colors"; + return Colors == 2 && Grayscale + ? $"{Width}x{Height} black and white pixels" + : $"{Width}x{Height} pixels at {Colors} colors"; } } } \ No newline at end of file diff --git a/cicm_web/Areas/Admin/Controllers/ResolutionsController.cs b/cicm_web/Areas/Admin/Controllers/ResolutionsController.cs index b30d0f74..518f94f9 100644 --- a/cicm_web/Areas/Admin/Controllers/ResolutionsController.cs +++ b/cicm_web/Areas/Admin/Controllers/ResolutionsController.cs @@ -51,7 +51,7 @@ namespace cicm_web.Areas.Admin.Controllers // GET: Admin/Resolutions public async Task Index() => View(await _context.Resolutions.OrderBy(r => r.Chars).ThenBy(r => r.Width).ThenBy(r => r.Height) - .ThenBy(r => r.Colors).ToListAsync()); + .ThenBy(r => r.Colors).ThenBy(r => r.Grayscale).ToListAsync()); // GET: Admin/Resolutions/Details/5 public async Task Details(int? id) @@ -72,7 +72,7 @@ namespace cicm_web.Areas.Admin.Controllers // more details see http://go.microsoft.com/fwlink/?LinkId=317598. [HttpPost] [ValidateAntiForgeryToken] - public async Task Create([Bind("Id,Width,Height,Colors,Palette,Chars")] + public async Task Create([Bind("Id,Width,Height,Colors,Palette,Chars,Grayscale")] Resolution resolution) { if(ModelState.IsValid) @@ -101,7 +101,7 @@ namespace cicm_web.Areas.Admin.Controllers // more details see http://go.microsoft.com/fwlink/?LinkId=317598. [HttpPost] [ValidateAntiForgeryToken] - public async Task Edit(int id, [Bind("Id,Width,Height,Colors,Palette,Chars")] + public async Task Edit(int id, [Bind("Id,Width,Height,Colors,Palette,Chars,Grayscale")] Resolution resolution) { if(id != resolution.Id) return NotFound(); diff --git a/cicm_web/Areas/Admin/Views/Resolutions/Create.cshtml b/cicm_web/Areas/Admin/Views/Resolutions/Create.cshtml index 2860c837..3b34658f 100644 --- a/cicm_web/Areas/Admin/Views/Resolutions/Create.cshtml +++ b/cicm_web/Areas/Admin/Views/Resolutions/Create.cshtml @@ -92,6 +92,13 @@ +
+
+ +
+
@Html.DisplayFor(model => model.Chars) +
+ @Html.DisplayNameFor(model => model.Grayscale) +
+
+ @Html.DisplayFor(model => model.Grayscale) +
diff --git a/cicm_web/Areas/Admin/Views/Resolutions/Details.cshtml b/cicm_web/Areas/Admin/Views/Resolutions/Details.cshtml index a39d5ef9..6f5b5c17 100644 --- a/cicm_web/Areas/Admin/Views/Resolutions/Details.cshtml +++ b/cicm_web/Areas/Admin/Views/Resolutions/Details.cshtml @@ -71,9 +71,22 @@
@Html.DisplayFor(model => model.Chars)
+
+ @Html.DisplayNameFor(model => model.Grayscale) +
+
+ @Html.DisplayFor(model => model.Grayscale) +
+ + Edit + + + Back to List + + \ No newline at end of file diff --git a/cicm_web/Areas/Admin/Views/Resolutions/Edit.cshtml b/cicm_web/Areas/Admin/Views/Resolutions/Edit.cshtml index 8eba016e..0763bcd0 100644 --- a/cicm_web/Areas/Admin/Views/Resolutions/Edit.cshtml +++ b/cicm_web/Areas/Admin/Views/Resolutions/Edit.cshtml @@ -94,6 +94,13 @@ +
+
+ +
+
- @Html.DisplayNameFor(model => model.Width) - - - @Html.DisplayNameFor(model => model.Height) - - - @Html.DisplayNameFor(model => model.Colors) - - - @Html.DisplayNameFor(model => model.Palette) - - - @Html.DisplayNameFor(model => model.Chars) + Resolution @@ -70,19 +58,7 @@ { - @Html.DisplayFor(modelItem => item.Width) - - - @Html.DisplayFor(modelItem => item.Height) - - - @Html.DisplayFor(modelItem => item.Colors) - - - @Html.DisplayFor(modelItem => item.PaletteView) - - - @Html.DisplayFor(modelItem => item.Chars) + @item.ToString() netcoreapp2.2 - 3.0.99.477 + 3.0.99.479 Canary Islands Computer Museum Copyright © 2003-2018 Natalia Portillo Canary Islands Computer Museum Website