// using System; using DD.Persistence.Database.Model; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace DD.Persistence.Database.Postgres.Migrations { [DbContext(typeof(PersistencePostgresContext))] [Migration("20241220062251_Init")] partial class Init { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.10") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("DD.Persistence.Database.Entity.DataSourceSystem", b => { b.Property("SystemId") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasComment("Id системы - источника данных"); b.Property("Description") .HasColumnType("text") .HasComment("Описание системы - источника данных"); b.Property("Name") .IsRequired() .HasColumnType("varchar(256)") .HasComment("Наименование системы - источника данных"); b.HasKey("SystemId"); b.ToTable("DataSourceSystem"); }); modelBuilder.Entity("DD.Persistence.Database.Entity.ParameterData", b => { b.Property("DiscriminatorId") .HasColumnType("uuid") .HasComment("Дискриминатор системы"); b.Property("ParameterId") .HasColumnType("integer") .HasComment("Id параметра"); b.Property("Timestamp") .HasColumnType("timestamp with time zone") .HasComment("Временная отметка"); b.Property("Value") .IsRequired() .HasColumnType("varchar(256)") .HasComment("Значение параметра в виде строки"); b.HasKey("DiscriminatorId", "ParameterId", "Timestamp"); b.ToTable("ParameterData"); }); modelBuilder.Entity("DD.Persistence.Database.Entity.TechMessage", b => { b.Property("EventId") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasComment("Id события"); b.Property("CategoryId") .HasColumnType("integer") .HasComment("Id Категории важности"); b.Property("EventState") .HasColumnType("integer") .HasComment("Статус события"); b.Property("SystemId") .HasColumnType("uuid") .HasComment("Id системы, к которой относится сообщение"); b.Property("Text") .IsRequired() .HasColumnType("varchar(512)") .HasComment("Текст сообщения"); b.Property("Timestamp") .HasColumnType("timestamp with time zone") .HasComment("Дата возникновения"); b.HasKey("EventId"); b.HasIndex("SystemId"); b.ToTable("TechMessage"); }); modelBuilder.Entity("DD.Persistence.Database.Entity.TimestampedSet", b => { b.Property("IdDiscriminator") .HasColumnType("uuid") .HasComment("Дискриминатор ссылка на тип сохраняемых данных"); b.Property("Timestamp") .HasColumnType("timestamp with time zone") .HasComment("Отметка времени, строго в UTC"); b.Property("Set") .IsRequired() .HasColumnType("jsonb") .HasComment("Набор сохраняемых данных"); b.HasKey("IdDiscriminator", "Timestamp"); b.ToTable("TimestampedSets", t => { t.HasComment("Общая таблица данных временных рядов"); }); }); modelBuilder.Entity("DD.Persistence.Database.Model.ChangeLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uuid") .HasComment("Ключ записи"); b.Property("Creation") .HasColumnType("timestamp with time zone") .HasComment("Дата создания записи"); b.Property("DepthEnd") .HasColumnType("double precision") .HasComment("Глубина забоя на дату окончания интервала"); b.Property("DepthStart") .HasColumnType("double precision") .HasComment("Глубина забоя на дату начала интервала"); b.Property("IdAuthor") .HasColumnType("uuid") .HasComment("Автор изменения"); b.Property("IdDiscriminator") .HasColumnType("uuid") .HasComment("Дискриминатор таблицы"); b.Property("IdEditor") .HasColumnType("uuid") .HasComment("Редактор"); b.Property("IdNext") .HasColumnType("uuid") .HasComment("Id заменяющей записи"); b.Property("IdSection") .HasColumnType("uuid") .HasComment("Ключ секции"); b.Property("Obsolete") .HasColumnType("timestamp with time zone") .HasComment("Дата устаревания (например при удалении)"); b.Property("Value") .IsRequired() .HasColumnType("jsonb") .HasComment("Значение"); b.HasKey("Id"); b.ToTable("ChangeLog"); }); modelBuilder.Entity("DD.Persistence.Database.Model.DataSaub", b => { b.Property("Date") .HasColumnType("timestamp with time zone") .HasColumnName("date"); b.Property("AxialLoad") .HasColumnType("double precision") .HasColumnName("axialLoad"); b.Property("BitDepth") .HasColumnType("double precision") .HasColumnName("bitDepth"); b.Property("BlockPosition") .HasColumnType("double precision") .HasColumnName("blockPosition"); b.Property("BlockSpeed") .HasColumnType("double precision") .HasColumnName("blockSpeed"); b.Property("Flow") .HasColumnType("double precision") .HasColumnName("flow"); b.Property("HookWeight") .HasColumnType("double precision") .HasColumnName("hookWeight"); b.Property("IdFeedRegulator") .HasColumnType("integer") .HasColumnName("idFeedRegulator"); b.Property("Mode") .HasColumnType("integer") .HasColumnName("mode"); b.Property("Mse") .HasColumnType("double precision") .HasColumnName("mse"); b.Property("MseState") .HasColumnType("smallint") .HasColumnName("mseState"); b.Property("Pressure") .HasColumnType("double precision") .HasColumnName("pressure"); b.Property("Pump0Flow") .HasColumnType("double precision") .HasColumnName("pump0Flow"); b.Property("Pump1Flow") .HasColumnType("double precision") .HasColumnName("pump1Flow"); b.Property("Pump2Flow") .HasColumnType("double precision") .HasColumnName("pump2Flow"); b.Property("RotorSpeed") .HasColumnType("double precision") .HasColumnName("rotorSpeed"); b.Property("RotorTorque") .HasColumnType("double precision") .HasColumnName("rotorTorque"); b.Property("User") .HasColumnType("text") .HasColumnName("user"); b.Property("WellDepth") .HasColumnType("double precision") .HasColumnName("wellDepth"); b.HasKey("Date"); b.ToTable("DataSaub"); }); modelBuilder.Entity("DD.Persistence.Database.Model.Setpoint", b => { b.Property("Key") .HasColumnType("uuid") .HasComment("Ключ"); b.Property("Created") .HasColumnType("timestamp with time zone") .HasComment("Дата создания уставки"); b.Property("IdUser") .HasColumnType("uuid") .HasComment("Id автора последнего изменения"); b.Property("Value") .IsRequired() .HasColumnType("jsonb") .HasComment("Значение уставки"); b.HasKey("Key", "Created"); b.ToTable("Setpoint"); }); modelBuilder.Entity("DD.Persistence.Database.Entity.TechMessage", b => { b.HasOne("DD.Persistence.Database.Entity.DataSourceSystem", "System") .WithMany() .HasForeignKey("SystemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("System"); }); #pragma warning restore 612, 618 } } }