//
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