//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
using DD.Persistence.Database.Model;
#nullable disable
namespace DD.Persistence.Database.Postgres.Migrations
{
[DbContext(typeof(PersistenceDbContext))]
[Migration("20241203120141_ParameterDataMigration")]
partial class ParameterDataMigration
{
///
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.UseCollation("Russian_Russia.1251")
.HasAnnotation("ProductVersion", "8.0.10")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.HasPostgresExtension(modelBuilder, "adminpack");
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
modelBuilder.Entity("DD.Persistence.Database.Entity.DrillingSystem", 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("DrillingSystem");
});
modelBuilder.Entity("DD.Persistence.Database.Entity.ParameterData", b =>
{
b.Property("DiscriminatorId")
.HasColumnType("integer")
.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("Depth")
.HasColumnType("double precision")
.HasComment("Глубина забоя");
b.Property("MessageText")
.IsRequired()
.HasColumnType("varchar(512)")
.HasComment("Текст сообщения");
b.Property("SystemId")
.HasColumnType("uuid")
.HasComment("Id системы автобурения, к которой относится сообщение");
b.Property("Timestamp")
.HasColumnType("timestamp with time zone")
.HasComment("Дата возникновения");
b.Property("UserId")
.HasColumnType("uuid")
.HasComment("Id пользователя за пультом бурильщика");
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.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