// <auto-generated />
using System;
using Edge.Core.Database;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;

namespace Edge.Core.Database.Migrations
{
    [DbContext(typeof(SqliteDbContext))]
    [Migration("20210625080336_AddGenericAlarms")]
    partial class AddGenericAlarms
    {
        protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
                .HasAnnotation("ProductVersion", "5.0.5");

            modelBuilder.Entity("Edge.Core.Database.Configuration.Models.ProcessorMetaConfigDbModel", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<bool>("Activated")
                        .HasColumnType("INTEGER");

                    b.Property<string>("Description")
                        .HasColumnType("TEXT");

                    b.Property<string>("Name")
                        .IsRequired()
                        .HasColumnType("TEXT");

                    b.Property<DateTime>("TimeStamp")
                        .HasColumnType("TEXT");

                    b.Property<int>("Type")
                        .HasColumnType("INTEGER");

                    b.HasKey("Id");

                    b.HasIndex("Name")
                        .IsUnique();

                    b.HasIndex("TimeStamp");

                    b.ToTable("ProcessorMetaConfigs");
                });

            modelBuilder.Entity("Edge.Core.Database.Configuration.Models.ProcessorMetaPartsMetaConfigDbModel", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<string>("FullTypeString")
                        .IsRequired()
                        .HasColumnType("TEXT");

                    b.Property<string>("ParametersJsonArrayStr")
                        .HasColumnType("TEXT");

                    b.Property<int>("ProcessorMetaConfigId")
                        .HasColumnType("INTEGER");

                    b.Property<int>("Type")
                        .HasColumnType("INTEGER");

                    b.HasKey("Id");

                    b.HasIndex("ProcessorMetaConfigId", "Type")
                        .IsUnique();

                    b.ToTable("ProcessorMetaPartsMetaConfigs");
                });

            modelBuilder.Entity("Edge.Core.Database.Models.FuelPointReservation", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<int>("FuelPointId")
                        .HasColumnType("INTEGER");

                    b.Property<int>("ReservedByFdcClientId")
                        .HasColumnType("INTEGER");

                    b.Property<DateTime>("ReservingTime")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.ToTable("FuelPointReservationModels");
                });

            modelBuilder.Entity("Edge.Core.Database.Models.FuelPriceChange", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<DateTime?>("FinishTime")
                        .HasColumnType("TEXT");

                    b.Property<int>("LogicalNozzleId")
                        .HasColumnType("INTEGER");

                    b.Property<int>("NewPriceWithoutDecimal")
                        .HasColumnType("INTEGER");

                    b.Property<int>("PumpId")
                        .HasColumnType("INTEGER");

                    b.Property<DateTime>("StartTime")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.ToTable("FuelPriceChanges");
                });

            modelBuilder.Entity("Edge.Core.Database.Models.FuelSaleTransaction", b =>
                {
                    b.Property<int>("ReleaseToken")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<int>("Amount")
                        .HasColumnType("INTEGER");

                    b.Property<int>("AmountTotalizer")
                        .HasColumnType("INTEGER");

                    b.Property<string>("AuthorizedByFdcClientId")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("AuthorizedTime")
                        .HasColumnType("TEXT");

                    b.Property<string>("LockedByFdcClientId")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("LockedTime")
                        .HasColumnType("TEXT");

                    b.Property<int>("LogicalNozzleId")
                        .HasColumnType("INTEGER");

                    b.Property<string>("PaidByFdcClientId")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("PaidTime")
                        .HasColumnType("TEXT");

                    b.Property<string>("ProductBarcode")
                        .HasColumnType("TEXT");

                    b.Property<int>("PumpId")
                        .HasColumnType("INTEGER");

                    b.Property<DateTime?>("SaleEndTime")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("SaleStartTime")
                        .HasColumnType("TEXT");

                    b.Property<int>("State")
                        .HasColumnType("INTEGER");

                    b.Property<string>("TransactionSeqNumberFromPhysicalPump")
                        .HasColumnType("TEXT");

                    b.Property<int>("UnitPrice")
                        .HasColumnType("INTEGER");

                    b.Property<int>("VolumeTotalizer")
                        .HasColumnType("INTEGER");

                    b.Property<int>("Volumn")
                        .HasColumnType("INTEGER");

                    b.HasKey("ReleaseToken");

                    b.ToTable("PumpTransactionModels");
                });

            modelBuilder.Entity("Edge.Core.Database.Models.GenericAlarmDbModel", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<string>("AckedReason")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("AckedTimestamp")
                        .HasColumnType("TEXT");

                    b.Property<string>("Action")
                        .HasColumnType("TEXT");

                    b.Property<string>("Category")
                        .HasColumnType("TEXT");

                    b.Property<string>("ClosedReason")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("ClosedTimestamp")
                        .HasColumnType("TEXT");

                    b.Property<string>("Detail")
                        .HasColumnType("TEXT");

                    b.Property<string>("HiddenData")
                        .HasColumnType("TEXT");

                    b.Property<DateTime>("OpeningTimestamp")
                        .HasColumnType("TEXT");

                    b.Property<string>("OriginatorDisplayName")
                        .HasColumnType("TEXT");

                    b.Property<string>("ProcessorEndpointFullTypeStr")
                        .HasColumnType("TEXT");

                    b.Property<int>("Severity")
                        .HasColumnType("INTEGER");

                    b.Property<string>("SubCategory")
                        .HasColumnType("TEXT");

                    b.Property<string>("Title")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.HasIndex("ClosedTimestamp");

                    b.HasIndex("HiddenData");

                    b.HasIndex("OpeningTimestamp");

                    b.HasIndex("ProcessorEndpointFullTypeStr");

                    b.HasIndex("Severity");

                    b.HasIndex("Category", "SubCategory");

                    b.HasIndex("OriginatorDisplayName", "OpeningTimestamp", "ClosedTimestamp");

                    b.ToTable("GenericAlarms");
                });

            modelBuilder.Entity("Edge.Core.Database.Models.GenericData", b =>
                {
                    b.Property<int>("Id")
                        .ValueGeneratedOnAdd()
                        .HasColumnType("INTEGER");

                    b.Property<string>("ComplexData")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("CreatedTimeStamp")
                        .HasColumnType("TEXT");

                    b.Property<string>("Description")
                        .HasColumnType("TEXT");

                    b.Property<double?>("DoubleProperty0")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty1")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty2")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty3")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty4")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty5")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty6")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty7")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty8")
                        .HasColumnType("REAL");

                    b.Property<double?>("DoubleProperty9")
                        .HasColumnType("REAL");

                    b.Property<int?>("IntProperty0")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty1")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty2")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty3")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty4")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty5")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty6")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty7")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty8")
                        .HasColumnType("INTEGER");

                    b.Property<int?>("IntProperty9")
                        .HasColumnType("INTEGER");

                    b.Property<DateTime?>("ModifiedTimeStamp")
                        .HasColumnType("TEXT");

                    b.Property<string>("Owner")
                        .IsRequired()
                        .HasColumnType("TEXT");

                    b.Property<string>("State")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty0")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty1")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty2")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty3")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty4")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty5")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty6")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty7")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty8")
                        .HasColumnType("TEXT");

                    b.Property<string>("StrProperty9")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("TimeStampProperty0")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("TimeStampProperty1")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("TimeStampProperty2")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("TimeStampProperty3")
                        .HasColumnType("TEXT");

                    b.Property<DateTime?>("TimeStampProperty4")
                        .HasColumnType("TEXT");

                    b.Property<string>("Type")
                        .HasColumnType("TEXT");

                    b.HasKey("Id");

                    b.HasIndex("CreatedTimeStamp");

                    b.HasIndex("DoubleProperty0");

                    b.HasIndex("DoubleProperty1");

                    b.HasIndex("DoubleProperty2");

                    b.HasIndex("DoubleProperty3");

                    b.HasIndex("DoubleProperty4");

                    b.HasIndex("DoubleProperty5");

                    b.HasIndex("DoubleProperty6");

                    b.HasIndex("DoubleProperty7");

                    b.HasIndex("DoubleProperty8");

                    b.HasIndex("DoubleProperty9");

                    b.HasIndex("IntProperty0");

                    b.HasIndex("IntProperty1");

                    b.HasIndex("IntProperty2");

                    b.HasIndex("IntProperty3");

                    b.HasIndex("IntProperty4");

                    b.HasIndex("IntProperty5");

                    b.HasIndex("IntProperty6");

                    b.HasIndex("IntProperty7");

                    b.HasIndex("IntProperty8");

                    b.HasIndex("IntProperty9");

                    b.HasIndex("ModifiedTimeStamp");

                    b.HasIndex("Owner");

                    b.HasIndex("State");

                    b.HasIndex("StrProperty0");

                    b.HasIndex("StrProperty1");

                    b.HasIndex("StrProperty2");

                    b.HasIndex("StrProperty3");

                    b.HasIndex("StrProperty4");

                    b.HasIndex("StrProperty5");

                    b.HasIndex("StrProperty6");

                    b.HasIndex("StrProperty7");

                    b.HasIndex("StrProperty8");

                    b.HasIndex("StrProperty9");

                    b.HasIndex("TimeStampProperty0");

                    b.HasIndex("TimeStampProperty1");

                    b.HasIndex("TimeStampProperty2");

                    b.HasIndex("TimeStampProperty3");

                    b.HasIndex("TimeStampProperty4");

                    b.HasIndex("Type");

                    b.ToTable("GenericDatas");
                });

            modelBuilder.Entity("Edge.Core.Database.Configuration.Models.ProcessorMetaPartsMetaConfigDbModel", b =>
                {
                    b.HasOne("Edge.Core.Database.Configuration.Models.ProcessorMetaConfigDbModel", "ProcessorMetaConfig")
                        .WithMany("Parts")
                        .HasForeignKey("ProcessorMetaConfigId")
                        .OnDelete(DeleteBehavior.Cascade)
                        .IsRequired();

                    b.Navigation("ProcessorMetaConfig");
                });

            modelBuilder.Entity("Edge.Core.Database.Configuration.Models.ProcessorMetaConfigDbModel", b =>
                {
                    b.Navigation("Parts");
                });
#pragma warning restore 612, 618
        }
    }
}