//
using System;
using System.Text.Json;
using AsbCloudDb.Model;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
#nullable disable
namespace AsbCloudDb.Migrations
{
[DbContext(typeof(AsbCloudDbContext))]
partial class AsbCloudDbContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.UseCollation("Russian_Russia.1251")
.HasAnnotation("ProductVersion", "6.0.7")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.HasPostgresExtension(modelBuilder, "adminpack");
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
modelBuilder.Entity("AsbCloudDb.Model.Cluster", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption")
.HasComment("Название");
b.Property("IdDeposit")
.HasColumnType("integer")
.HasColumnName("id_deposit");
b.Property("Latitude")
.HasColumnType("double precision")
.HasColumnName("latitude");
b.Property("Longitude")
.HasColumnType("double precision")
.HasColumnName("longitude");
b.Property("Timezone")
.HasColumnType("jsonb")
.HasColumnName("timezone")
.HasComment("Смещение часового пояса от UTC");
b.HasKey("Id");
b.HasIndex("IdDeposit");
b.ToTable("t_cluster");
b.HasComment("Кусты");
});
modelBuilder.Entity("AsbCloudDb.Model.Company", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.Property("IdCompanyType")
.HasMaxLength(255)
.HasColumnType("integer")
.HasColumnName("id_company_type")
.HasComment("вид деятельности");
b.HasKey("Id");
b.HasIndex("IdCompanyType");
b.ToTable("t_company");
b.HasData(
new
{
Id = 1,
Caption = "ООО \"АСБ\"",
IdCompanyType = 3
});
});
modelBuilder.Entity("AsbCloudDb.Model.CompanyType", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.HasKey("Id");
b.ToTable("t_company_type");
b.HasData(
new
{
Id = 1,
Caption = "Недрапользователь"
},
new
{
Id = 2,
Caption = "Буровой подрядчик"
},
new
{
Id = 3,
Caption = "Сервис автоматизации бурения"
});
});
modelBuilder.Entity("AsbCloudDb.Model.DailyReport.DailyReport", b =>
{
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("ID скважины");
b.Property("StartDate")
.HasColumnType("timestamp with time zone")
.HasColumnName("start_date")
.HasComment("Дата отчёта");
b.Property("Info")
.HasColumnType("jsonb")
.HasColumnName("info")
.HasComment("Список параметров для отчёта");
b.HasKey("IdWell", "StartDate")
.HasName("t_id_well_date_start_pk");
b.ToTable("t_daily_report");
b.HasComment("Ежедневные отчёты");
});
modelBuilder.Entity("AsbCloudDb.Model.Deposit", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.Property("Latitude")
.HasColumnType("double precision")
.HasColumnName("latitude");
b.Property("Longitude")
.HasColumnType("double precision")
.HasColumnName("longitude");
b.Property("Timezone")
.HasColumnType("jsonb")
.HasColumnName("timezone")
.HasComment("Смещение часового пояса от UTC");
b.HasKey("Id");
b.ToTable("t_deposit");
b.HasComment("Месторождение");
});
modelBuilder.Entity("AsbCloudDb.Model.DetectedOperation", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("DateEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_end")
.HasComment("Дата начала операции");
b.Property("DateStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_start")
.HasComment("Дата начала операции");
b.Property("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина после завершения операции, м");
b.Property("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Глубина на начало операции, м");
b.Property("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("Id категории операции");
b.Property("IdReasonOfEnd")
.HasColumnType("integer")
.HasColumnName("id_reason_of_end")
.HasComment("Код признака окончания операции");
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property("IdUsersAtStart")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("Id пользователя по телеметрии на момент начала операции");
b.Property("Value")
.HasColumnType("double precision")
.HasColumnName("value")
.HasComment("Ключевой показатель операции");
b.HasKey("Id");
b.HasIndex("IdCategory");
b.HasIndex("IdTelemetry");
b.ToTable("t_detected_operation");
b.HasComment("автоматически определенные операции по телеметрии");
});
modelBuilder.Entity("AsbCloudDb.Model.Driller", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Name")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name")
.HasComment("Имя");
b.Property("Patronymic")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("patronymic")
.HasComment("Отчество");
b.Property("Surname")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("surname")
.HasComment("Фамилия");
b.HasKey("Id");
b.ToTable("t_driller");
b.HasComment("Бурильщик");
});
modelBuilder.Entity("AsbCloudDb.Model.DrillFlowChart", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("AxialLoadMax")
.HasColumnType("double precision")
.HasColumnName("axial_load_max")
.HasComment("Максимальная нагрузка");
b.Property("AxialLoadMin")
.HasColumnType("double precision")
.HasColumnName("axial_load_min")
.HasComment("Минимальная нагрузка");
b.Property("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина окончания интервала");
b.Property("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Стартовая глубина");
b.Property("FlowMax")
.HasColumnType("double precision")
.HasColumnName("flow_max")
.HasComment("Максимальный расход");
b.Property("FlowMin")
.HasColumnType("double precision")
.HasColumnName("flow_min")
.HasComment("Минимальный расход");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("well_id")
.HasComment("Id скважины");
b.Property("IdWellOperationCategory")
.HasColumnType("integer")
.HasColumnName("id_operation_category")
.HasComment("Id типа операции");
b.Property("LastUpdate")
.HasColumnType("timestamp with time zone")
.HasColumnName("last_update")
.HasComment("Дата последнего изменения");
b.Property("PressureMax")
.HasColumnType("double precision")
.HasColumnName("pressure_max")
.HasComment("Максимальное давление");
b.Property("PressureMin")
.HasColumnType("double precision")
.HasColumnName("pressure_min")
.HasComment("Минимальное давление");
b.Property("RotorSpeedMax")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_max")
.HasComment("Максимальные обороты на ВСП");
b.Property("RotorSpeedMin")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_min")
.HasComment("Минимальные обороты на ВСП");
b.Property("RotorTorqueMax")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_max")
.HasComment("Максимальный момент на ВСП");
b.Property("RotorTorqueMin")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_min")
.HasComment("Минимальный момент на ВСП");
b.HasKey("Id");
b.HasIndex("IdWell");
b.HasIndex("IdWellOperationCategory");
b.ToTable("t_drill_flow_chart");
b.HasComment("Параметры коридоров бурения (диапазоны параметров бурения)");
});
modelBuilder.Entity("AsbCloudDb.Model.DrillingProgramPart", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("IdFileCategory")
.HasColumnType("integer")
.HasColumnName("id_file_category");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well");
b.HasKey("Id");
b.HasIndex("IdFileCategory");
b.HasIndex("IdWell", "IdFileCategory")
.IsUnique();
b.ToTable("t_drilling_program_part");
b.HasComment("части программ бурения");
});
modelBuilder.Entity("AsbCloudDb.Model.DrillParams", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("AxialLoadAvg")
.HasColumnType("double precision")
.HasColumnName("axial_load_avg")
.HasComment("Средняя нагрузка");
b.Property("AxialLoadMax")
.HasColumnType("double precision")
.HasColumnName("axial_load_max")
.HasComment("Максимальная нагрузка");
b.Property("AxialLoadMin")
.HasColumnType("double precision")
.HasColumnName("axial_load_min")
.HasComment("Минимальная нагрузка");
b.Property("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина окончания интервала");
b.Property("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Стартовая глубина");
b.Property("FlowAvg")
.HasColumnType("double precision")
.HasColumnName("flow_avg")
.HasComment("Средний расход");
b.Property("FlowMax")
.HasColumnType("double precision")
.HasColumnName("flow_max")
.HasComment("Максимальный расход");
b.Property("FlowMin")
.HasColumnType("double precision")
.HasColumnName("flow_min")
.HasComment("Минимальный расход");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("well_id")
.HasComment("Id скважины");
b.Property("IdWellSectionType")
.HasColumnType("integer")
.HasColumnName("id_wellsection_type")
.HasComment("Id с типом секции скважины");
b.Property("PressureAvg")
.HasColumnType("double precision")
.HasColumnName("pressure_avg")
.HasComment("Среднее давление");
b.Property("PressureMax")
.HasColumnType("double precision")
.HasColumnName("pressure_max")
.HasComment("Максимальное давление");
b.Property("PressureMin")
.HasColumnType("double precision")
.HasColumnName("pressure_min")
.HasComment("Минимальное давление");
b.Property("RotorSpeedAvg")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_avg")
.HasComment("Средние обороты на ВСП");
b.Property("RotorSpeedMax")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_max")
.HasComment("Максимальные обороты на ВСП");
b.Property("RotorSpeedMin")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_min")
.HasComment("Минимальные обороты на ВСП");
b.Property("RotorTorqueAvg")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_avg")
.HasComment("Средний момент на ВСП");
b.Property("RotorTorqueMax")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_max")
.HasComment("Максимальный момент на ВСП");
b.Property("RotorTorqueMin")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_min")
.HasComment("Минимальный момент на ВСП");
b.HasKey("Id");
b.HasIndex("IdWell");
b.HasIndex("IdWellSectionType");
b.ToTable("t_drill_params");
b.HasComment("Режим бурения в секции (диапазоны параметров бурения)");
});
modelBuilder.Entity("AsbCloudDb.Model.FileCategory", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название категории");
b.Property("ShortName")
.HasColumnType("text")
.HasColumnName("short_name")
.HasComment("Короткое название категории");
b.HasKey("Id");
b.ToTable("t_file_category");
b.HasComment("Категории файлов");
b.HasData(
new
{
Id = 1,
Name = "Растворный сервис",
ShortName = "fluidService"
},
new
{
Id = 2,
Name = "Цементирование",
ShortName = "cement"
},
new
{
Id = 3,
Name = "ННБ",
ShortName = "nnb"
},
new
{
Id = 4,
Name = "ГТИ",
ShortName = "gti"
},
new
{
Id = 5,
Name = "Документы по скважине",
ShortName = "wellDocuments"
},
new
{
Id = 6,
Name = "Супервайзер",
ShortName = "supervisor"
},
new
{
Id = 7,
Name = "Мастер",
ShortName = "master"
},
new
{
Id = 8,
Name = "Долотный сервис",
ShortName = "toolService"
},
new
{
Id = 9,
Name = "Буровой подрядчик",
ShortName = "drillService"
},
new
{
Id = 10,
Name = "Сервис по заканчиванию скважины",
ShortName = "closingService"
},
new
{
Id = 12,
Name = "Рапорт",
ShortName = "report"
},
new
{
Id = 1000,
Name = "Программа бурения"
},
new
{
Id = 1001,
Name = "Задание от геологов"
},
new
{
Id = 1002,
Name = "Профиль ствола скважины (ННБ)"
},
new
{
Id = 1003,
Name = "Технологические расчеты (ННБ)"
},
new
{
Id = 1004,
Name = "Долотная программа"
},
new
{
Id = 1005,
Name = "Программа по растворам"
},
new
{
Id = 1006,
Name = "Программа геофизических исследований"
},
new
{
Id = 1007,
Name = "Планы спусков обсадных колонн"
},
new
{
Id = 1008,
Name = "Программы цементирования обсадных колонн"
},
new
{
Id = 10000,
Name = "Проект на бурение транспортного и горизонтального участков скважины"
},
new
{
Id = 10001,
Name = "Программа на бурение транспортного и горизонтального участков скважины"
},
new
{
Id = 10002,
Name = "Акт о начале бурения"
},
new
{
Id = 10003,
Name = "План работ спуска и цементирования направления"
},
new
{
Id = 10004,
Name = "Программа цементирования направления"
},
new
{
Id = 10005,
Name = "Мера обсадных труб (направление)"
},
new
{
Id = 10006,
Name = "Акт на выполненные работы по цементированию направления"
},
new
{
Id = 10007,
Name = "Отчет по цементированию направления (график)"
},
new
{
Id = 10008,
Name = "План работ спуска и цементирования кондуктора"
},
new
{
Id = 10009,
Name = "Программа цементирования (кондуктор)"
},
new
{
Id = 10010,
Name = "Мера обсадных труб (кондуктор)"
},
new
{
Id = 10011,
Name = "Карта крепления кондуктора"
},
new
{
Id = 10012,
Name = "Акт на выполненные работы по цементированию кондуктора"
},
new
{
Id = 10013,
Name = "Отчет по цементированию кондуктора (график)"
},
new
{
Id = 10014,
Name = "Акт о замере расстояния от стола ротора до муфты кондуктора"
},
new
{
Id = 10015,
Name = "Акт опресовки цементного кольца за кондуктором"
},
new
{
Id = 10016,
Name = "Акт опресовки ППГ с глухими плашками совместно с кондуктором"
},
new
{
Id = 10017,
Name = "Акт опресовки ПУГ, ППГ с трубными плашками совместно с кондуктором"
},
new
{
Id = 10018,
Name = "План работ на крепление обсадной колонны (эк. колонна)"
},
new
{
Id = 10019,
Name = "Программа цементирования (эк. колонна)"
},
new
{
Id = 10020,
Name = "Мера труб эксплуатационной колонны"
},
new
{
Id = 10021,
Name = "Карта по креплению скважины (эк. колонна)"
},
new
{
Id = 10022,
Name = "Акт на установку пружинных центраторов"
},
new
{
Id = 10023,
Name = "Отчет по цементированию эксплуатационной колонны (график)"
},
new
{
Id = 10024,
Name = "Акт на выполненные работы по цементированию эксплуатационной колонны"
},
new
{
Id = 10025,
Name = "Акт об испытании эк. колонны на герметичность (СТОП)"
},
new
{
Id = 10026,
Name = "Акт опресовки ППГ с глухими плашками совместно с э/колонной"
},
new
{
Id = 10027,
Name = "Акт опресовки ПУГ, ППГ с трубными плашками совместно с э/колонной"
},
new
{
Id = 10028,
Name = "Акт на вскрытие продуктивного пласта"
},
new
{
Id = 10029,
Name = "Акт замера параметров раствора при бурении горизонтального участка"
},
new
{
Id = 10030,
Name = "Разрешение на спуск «хвостовика» (телефонограмма)"
},
new
{
Id = 10031,
Name = "План работ на спуск «хвостовика»"
},
new
{
Id = 10032,
Name = "Акт готовности бурового и энергетического оборудования к спуску «хвостовика»"
},
new
{
Id = 10033,
Name = "Акт шаблонировки ствола скважины перед спуском «хвостовика»"
},
new
{
Id = 10034,
Name = "Мера обсадных труб (хвостовик)"
},
new
{
Id = 10035,
Name = "Акт выполненных работ по спуску хвостовика с закачкой (нефти, солевого раствора"
},
new
{
Id = 10036,
Name = "Акт о переводе скважины на тех. воду"
},
new
{
Id = 10037,
Name = "Акт об окончании бурения"
},
new
{
Id = 10038,
Name = "Акт на передачу скважины в освоение (КРС)"
},
new
{
Id = 10039,
Name = "Акт на опресовку межколонного пространства с КРС"
},
new
{
Id = 10040,
Name = "Акт на сдачу скважины в ЦДНГ"
},
new
{
Id = 10041,
Name = "Паспорт ОУС (заполняется геологами)"
},
new
{
Id = 10042,
Name = "Паспорт скважины (заполняется геологами)"
},
new
{
Id = 10043,
Name = "Фактические данные бурения (вставляются в паспорт скважины)"
});
});
modelBuilder.Entity("AsbCloudDb.Model.FileInfo", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("IdAuthor")
.HasColumnType("integer")
.HasColumnName("id_author")
.HasComment("Id пользователя, загрузившего файл");
b.Property("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("id категории файла");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property("IsDeleted")
.HasColumnType("boolean")
.HasColumnName("is_deleted")
.HasComment("Удален ли файл");
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название файла");
b.Property("Size")
.HasColumnType("bigint")
.HasColumnName("file_size")
.HasComment("Размер файла");
b.Property("UploadDate")
.HasColumnType("timestamp with time zone")
.HasColumnName("date");
b.HasKey("Id");
b.HasIndex("IdAuthor");
b.HasIndex("IdCategory");
b.HasIndex("IdWell");
b.ToTable("t_file_info");
b.HasComment("Файлы всех категорий");
});
modelBuilder.Entity("AsbCloudDb.Model.FileMark", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Comment")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("comment")
.HasComment("Комментарий");
b.Property("DateCreated")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_created")
.HasComment("Дата совершенного действия");
b.Property("IdFile")
.HasColumnType("integer")
.HasColumnName("id_file")
.HasComment("id файла");
b.Property("IdMarkType")
.HasColumnType("integer")
.HasColumnName("id_mark_type")
.HasComment("0 - отклонен, 1 - согласован");
b.Property("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("id пользователя");
b.Property("IsDeleted")
.HasColumnType("boolean")
.HasColumnName("is_deleted")
.HasComment("Помечен ли файл как удаленный");
b.HasKey("Id");
b.HasIndex("IdFile");
b.HasIndex("IdUser");
b.ToTable("t_file_mark");
b.HasComment("Действия с файлами.");
});
modelBuilder.Entity("AsbCloudDb.Model.LimitingParameter", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("DateEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_end");
b.Property("DateStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_start");
b.Property("DepthEnd")
.HasColumnType("real")
.HasColumnName("depth_end");
b.Property("DepthStart")
.HasColumnType("real")
.HasColumnName("depth_start");
b.Property("IdFeedRegulator")
.HasColumnType("smallint")
.HasColumnName("id_feed_regulator");
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.HasKey("Id");
b.HasIndex("IdTelemetry");
b.ToTable("t_limiting_parameter");
b.HasComment("Ограничения по параметрам телеметрии");
});
modelBuilder.Entity("AsbCloudDb.Model.Measure", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Data")
.HasColumnType("jsonb")
.HasColumnName("data")
.HasComment("Данные таблицы последних данных");
b.Property("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("id категории");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property("IsDeleted")
.HasColumnType("boolean")
.HasColumnName("is_deleted")
.HasComment("Пометка удаленным");
b.Property("Timestamp")
.HasColumnType("timestamp with time zone")
.HasColumnName("timestamp")
.HasComment("время добавления");
b.HasKey("Id");
b.HasIndex("IdCategory");
b.HasIndex("IdWell");
b.ToTable("t_measure");
b.HasComment("Таблица c данными для вкладки 'Последние данные'");
});
modelBuilder.Entity("AsbCloudDb.Model.MeasureCategory", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название категории");
b.Property("ShortName")
.HasColumnType("text")
.HasColumnName("short_name")
.HasComment("Короткое название категории");
b.HasKey("Id");
b.ToTable("t_measure_category");
b.HasComment("Категория последних данных");
b.HasData(
new
{
Id = 1,
Name = "Показатели бурового раствора",
ShortName = "Раствор"
},
new
{
Id = 2,
Name = "Шламограмма",
ShortName = "Шламограмма"
},
new
{
Id = 3,
Name = "ННБ",
ShortName = "ННБ"
});
});
modelBuilder.Entity("AsbCloudDb.Model.OperationValue", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Конечная глубина");
b.Property("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Старотовая глубина");
b.Property("IdOperationCategory")
.HasColumnType("integer")
.HasColumnName("id_operation_category")
.HasComment("Ид категории операции");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Ид скважины");
b.Property("StandardValue")
.HasColumnType("double precision")
.HasColumnName("standard_value")
.HasComment("Нормативный показатель");
b.Property("TargetValue")
.HasColumnType("double precision")
.HasColumnName("target_value")
.HasComment("Целевой показатель");
b.HasKey("Id");
b.HasIndex("IdOperationCategory");
b.HasIndex("IdWell");
b.ToTable("t_operationvalue");
b.HasComment("Целевые/нормативные показатели операции");
});
modelBuilder.Entity("AsbCloudDb.Model.Permission", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Description")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("description")
.HasComment("Краткое описание");
b.Property("Name")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name")
.HasComment("Название");
b.HasKey("Id");
b.ToTable("t_permission");
b.HasComment("Разрешения на доступ к данным");
b.HasData(
new
{
Id = 100,
Description = "Разрешение удалять админ. Кусты",
Name = "AdminCluster.delete"
},
new
{
Id = 101,
Description = "Разрешение редактировать админ. Кусты",
Name = "AdminCluster.edit"
},
new
{
Id = 102,
Description = "Разрешение просматривать админ. Кусты",
Name = "AdminCluster.get"
},
new
{
Id = 103,
Description = "Разрешение удалять админ. Компании",
Name = "AdminCompany.delete"
},
new
{
Id = 104,
Description = "Разрешение редактировать админ. Компании",
Name = "AdminCompany.edit"
},
new
{
Id = 105,
Description = "Разрешение просматривать админ. Компании",
Name = "AdminCompany.get"
},
new
{
Id = 106,
Description = "Разрешение удалять админ. Типы компаний",
Name = "AdminCompanyType.delete"
},
new
{
Id = 107,
Description = "Разрешение редактировать админ. Типы компаний",
Name = "AdminCompanyType.edit"
},
new
{
Id = 108,
Description = "Разрешение просматривать админ. Типы компаний",
Name = "AdminCompanyType.get"
},
new
{
Id = 109,
Description = "Разрешение удалять админ. Месторождения",
Name = "AdminDeposit.delete"
},
new
{
Id = 110,
Description = "Разрешение редактировать админ. Месторождения",
Name = "AdminDeposit.edit"
},
new
{
Id = 111,
Description = "Разрешение просматривать админ. Месторождения",
Name = "AdminDeposit.get"
},
new
{
Id = 112,
Description = "Разрешение удалять админ. Разрешения",
Name = "AdminPermission.delete"
},
new
{
Id = 113,
Description = "Разрешение редактировать админ. Разрешения",
Name = "AdminPermission.edit"
},
new
{
Id = 114,
Description = "Разрешение просматривать админ. Разрешения",
Name = "AdminPermission.get"
},
new
{
Id = 115,
Description = "Разрешение удалять админ. Телеметрию",
Name = "AdminTelemetry.delete"
},
new
{
Id = 116,
Description = "Разрешение редактировать админ. Телеметрию",
Name = "AdminTelemetry.edit"
},
new
{
Id = 117,
Description = "Разрешение просматривать админ. Телеметрию",
Name = "AdminTelemetry.get"
},
new
{
Id = 118,
Description = "Разрешение удалять админ. Пользователей",
Name = "AdminUser.delete"
},
new
{
Id = 119,
Description = "Разрешение редактировать админ. Пользователей",
Name = "AdminUser.edit"
},
new
{
Id = 120,
Description = "Разрешение просматривать админ. Пользователей",
Name = "AdminUser.get"
},
new
{
Id = 121,
Description = "Разрешение удалять админ. Роли пользователей",
Name = "AdminUserRole.delete"
},
new
{
Id = 122,
Description = "Разрешение редактировать админ. Роли пользователей",
Name = "AdminUserRole.edit"
},
new
{
Id = 123,
Description = "Разрешение просматривать админ. Роли пользователей",
Name = "AdminUserRole.get"
},
new
{
Id = 124,
Description = "Разрешение удалять админ. Скважины",
Name = "AdminWell.delete"
},
new
{
Id = 125,
Description = "Разрешение редактировать админ. Скважины",
Name = "AdminWell.edit"
},
new
{
Id = 126,
Description = "Разрешение просматривать админ. Скважины",
Name = "AdminWell.get"
},
new
{
Id = 127,
Description = "Разрешение удалять админ. Подсистемы",
Name = "AdminSubsytem.delete"
},
new
{
Id = 128,
Description = "Разрешение редактировать админ. Подсистемы",
Name = "AdminSubsytem.edit"
},
new
{
Id = 129,
Description = "Разрешение просматривать админ. Подсистемы",
Name = "AdminSubsytem.get"
},
new
{
Id = 200,
Description = "Разрешение редактировать 0",
Name = "Auth.edit"
},
new
{
Id = 201,
Description = "Разрешение просматривать 0",
Name = "Auth.get"
},
new
{
Id = 202,
Description = "Разрешение просматривать Кусты",
Name = "Cluster.get"
},
new
{
Id = 203,
Description = "Разрешение просматривать Месторождения",
Name = "Deposit.get"
},
new
{
Id = 204,
Description = "Разрешение удалять РТК",
Name = "DrillFlowChart.delete"
},
new
{
Id = 205,
Description = "Разрешение редактировать РТК",
Name = "DrillFlowChart.edit"
},
new
{
Id = 206,
Description = "Разрешение просматривать РТК",
Name = "DrillFlowChart.get"
},
new
{
Id = 207,
Description = "Разрешение удалять Программу бурения",
Name = "DrillingProgram.delete"
},
new
{
Id = 208,
Description = "Разрешение редактировать Программу бурения",
Name = "DrillingProgram.edit"
},
new
{
Id = 209,
Description = "Разрешение просматривать Программу бурения",
Name = "DrillingProgram.get"
},
new
{
Id = 210,
Description = "Разрешение удалять Режимы бурения",
Name = "DrillParams.delete"
},
new
{
Id = 211,
Description = "Разрешение редактировать Режимы бурения",
Name = "DrillParams.edit"
},
new
{
Id = 212,
Description = "Разрешение просматривать Режимы бурения",
Name = "DrillParams.get"
},
new
{
Id = 213,
Description = "Разрешение удалять Файлы",
Name = "File.delete"
},
new
{
Id = 214,
Description = "Разрешение редактировать Файлы",
Name = "File.edit"
},
new
{
Id = 215,
Description = "Разрешение просматривать Файлы",
Name = "File.get"
},
new
{
Id = 216,
Description = "Разрешение удалять Измерения",
Name = "Measure.delete"
},
new
{
Id = 217,
Description = "Разрешение редактировать Измерения",
Name = "Measure.edit"
},
new
{
Id = 218,
Description = "Разрешение просматривать Измерения",
Name = "Measure.get"
},
new
{
Id = 219,
Description = "Разрешение просматривать Сообщения телеметрии",
Name = "Message.get"
},
new
{
Id = 220,
Description = "Разрешение просматривать Статистику по операциям",
Name = "OperationStat.get"
},
new
{
Id = 221,
Description = "Разрешение редактировать Рапорта",
Name = "Report.edit"
},
new
{
Id = 222,
Description = "Разрешение просматривать Рапорта",
Name = "Report.get"
},
new
{
Id = 223,
Description = "Разрешение просматривать админ. Системная статистика",
Name = "RequestTracker.get"
},
new
{
Id = 224,
Description = "Разрешение удалять Рекомендации уставок",
Name = "Setpoints.delete"
},
new
{
Id = 225,
Description = "Разрешение редактировать Рекомендации уставок",
Name = "Setpoints.edit"
},
new
{
Id = 226,
Description = "Разрешение просматривать Рекомендации уставок",
Name = "Setpoints.get"
},
new
{
Id = 227,
Description = "Разрешение редактировать Телеметрии",
Name = "Telemetry.edit"
},
new
{
Id = 228,
Description = "Разрешение просматривать Анализ телеметрии",
Name = "TelemetryAnalytics.get"
},
new
{
Id = 229,
Description = "Разрешение редактировать Данные телеметрии по САУБ",
Name = "TelemetryDataSaub.edit"
},
new
{
Id = 230,
Description = "Разрешение просматривать Данные телеметрии по САУБ",
Name = "TelemetryDataSaub.get"
},
new
{
Id = 231,
Description = "Разрешение редактировать Данные телеметрии по SpinMaster",
Name = "TelemetryDataSpin.edit"
},
new
{
Id = 232,
Description = "Разрешение просматривать Данные телеметрии по SpinMaster",
Name = "TelemetryDataSpin.get"
},
new
{
Id = 233,
Description = "Разрешение редактировать Скважины",
Name = "Well.edit"
},
new
{
Id = 234,
Description = "Разрешение просматривать Скважины",
Name = "Well.get"
},
new
{
Id = 235,
Description = "Разрешение редактировать Композитные скважины",
Name = "WellComposite.edit"
},
new
{
Id = 236,
Description = "Разрешение просматривать Композитные скважины",
Name = "WellComposite.get"
},
new
{
Id = 237,
Description = "Разрешение удалять Операции по скважинам",
Name = "WellOperation.delete"
},
new
{
Id = 238,
Description = "Разрешение редактировать Операции по скважинам",
Name = "WellOperation.edit"
},
new
{
Id = 239,
Description = "Разрешение просматривать Операции по скважинам",
Name = "WellOperation.get"
},
new
{
Id = 240,
Description = "Разрешение редактировать Файлы категории 1 (Растворный сервис)",
Name = "File.edit1"
},
new
{
Id = 241,
Description = "Разрешение редактировать Файлы категории 2 (Цементирование)",
Name = "File.edit2"
},
new
{
Id = 242,
Description = "Разрешение редактировать Файлы категории 3 (ННБ)",
Name = "File.edit3"
},
new
{
Id = 243,
Description = "Разрешение редактировать Файлы категории 4 (ГТИ)",
Name = "File.edit4"
},
new
{
Id = 244,
Description = "Разрешение редактировать Файлы категории 5 (Документы по скважине)",
Name = "File.edit5"
},
new
{
Id = 245,
Description = "Разрешение редактировать Файлы категории 6 (Супервайзер)",
Name = "File.edit6"
},
new
{
Id = 246,
Description = "Разрешение редактировать Файлы категории 7 (Мастер)",
Name = "File.edit7"
},
new
{
Id = 247,
Description = "Разрешение редактировать Файлы категории 8 (Долотный сервис)",
Name = "File.edit8"
},
new
{
Id = 248,
Description = "Разрешение редактировать Файлы категории 9 (Буровой подрядчик)",
Name = "File.edit9"
},
new
{
Id = 249,
Description = "Разрешение редактировать Файлы категории 10 (Сервис по заканчиванию скважины)",
Name = "File.edit10"
},
new
{
Id = 250,
Description = "Разрешение редактировать Файлы категории 11 (Рапорт)",
Name = "File.edit11"
},
new
{
Id = 251,
Description = "Разрешение редактировать Файлы категории 12",
Name = "File.edit12"
},
new
{
Id = 252,
Description = "Разрешение редактировать Файлы категории 12",
Name = "File.edit13"
},
new
{
Id = 253,
Description = "Разрешение редактировать Файлы категории 13",
Name = "File.edit14"
},
new
{
Id = 254,
Description = "Разрешение редактировать Файлы категории 14",
Name = "File.edit15"
},
new
{
Id = 255,
Description = "Разрешение редактировать Файлы категории 15",
Name = "File.edit16"
},
new
{
Id = 256,
Description = "Разрешение редактировать Файлы категории 16",
Name = "File.edit17"
},
new
{
Id = 257,
Description = "Разрешение редактировать Файлы категории 17",
Name = "File.edit18"
},
new
{
Id = 258,
Description = "Разрешение редактировать Файлы категории 18",
Name = "File.edit19"
},
new
{
Id = 259,
Description = "Разрешение редактировать Файлы категории 19",
Name = "File.edit20"
},
new
{
Id = 260,
Description = "Разрешение редактировать Файлы категории 20",
Name = "File.edit21"
},
new
{
Id = 261,
Description = "Разрешение редактировать Файлы категории 21",
Name = "File.edit22"
},
new
{
Id = 262,
Description = "Разрешение редактировать Файлы категории 22",
Name = "File.edit23"
},
new
{
Id = 263,
Description = "Разрешение редактировать Файлы категории 23",
Name = "File.edit24"
},
new
{
Id = 264,
Description = "Разрешение редактировать Файлы категории 24",
Name = "File.edit25"
},
new
{
Id = 265,
Description = "Разрешение редактировать Файлы категории 25",
Name = "File.edit26"
},
new
{
Id = 266,
Description = "Разрешение редактировать Файлы категории 26",
Name = "File.edit27"
},
new
{
Id = 267,
Description = "Разрешение редактировать Файлы категории 27",
Name = "File.edit28"
},
new
{
Id = 268,
Description = "Разрешение редактировать Файлы категории 28",
Name = "File.edit29"
},
new
{
Id = 269,
Description = "Разрешение редактировать Файлы категории 29",
Name = "File.edit30"
},
new
{
Id = 380,
Description = "Разрешение просматривать список бурильщиков",
Name = "Driller.get"
},
new
{
Id = 381,
Description = "Разрешение редактировать бурильщика",
Name = "Driller.edit"
},
new
{
Id = 382,
Description = "Разрешение удалять бурильщик",
Name = "Driller.delete"
},
new
{
Id = 383,
Description = "Разрешение просматривать графики бурильщиков",
Name = "Schedule.get"
},
new
{
Id = 384,
Description = "Разрешение редактировать график бурильщика",
Name = "Schedule.edit"
},
new
{
Id = 385,
Description = "Разрешение удалять график бурильщика",
Name = "Schedule.delete"
},
new
{
Id = 386,
Description = "Разрешение просматривать суточный рапорт",
Name = "DailyReport.get"
},
new
{
Id = 387,
Description = "Разрешение редактировать суточный рапорт",
Name = "DailyReport.edit"
},
new
{
Id = 388,
Description = "Разрешение просматривать авто. определенные операции",
Name = "DetectedOperation.get"
},
new
{
Id = 389,
Description = "Разрешение просматривать целевые значения",
Name = "OperationValue.get"
},
new
{
Id = 390,
Description = "Разрешение редактировать целевые значения",
Name = "OperationValue.edit"
},
new
{
Id = 391,
Description = "Разрешение удалять целевые значения",
Name = "OperationValue.delete"
},
new
{
Id = 400,
Description = "Разрешение просматривать инфо по wits параметрам",
Name = "WitsInfo.get"
},
new
{
Id = 401,
Description = "Разрешение просматривать WITS record 1",
Name = "WitsRecord1.get"
},
new
{
Id = 407,
Description = "Разрешение просматривать WITS record 7",
Name = "WitsRecord7.get"
},
new
{
Id = 408,
Description = "Разрешение просматривать WITS record 8",
Name = "WitsRecord8.get"
},
new
{
Id = 450,
Description = "Разрешение просматривать WITS record 50",
Name = "WitsRecord50.get"
},
new
{
Id = 460,
Description = "Разрешение просматривать WITS record 60",
Name = "WitsRecord60.get"
},
new
{
Id = 461,
Description = "Разрешение просматривать WITS record 61",
Name = "WitsRecord61.get"
},
new
{
Id = 500,
Description = "Разрешение удалять Категорий документов файлов",
Name = "FileCategory.delete"
},
new
{
Id = 501,
Description = "Разрешение редактировать Категорий документов файлов",
Name = "FileCategory.edit"
},
new
{
Id = 502,
Description = "Разрешение просматривать Категорий документов файлов",
Name = "FileCategory.get"
},
new
{
Id = 503,
Description = "Разрешение удалять Дело скважины",
Name = "WellFinalDocuments.delete"
},
new
{
Id = 504,
Description = "Разрешение редактировать Дело скважины",
Name = "WellFinalDocuments.edit"
},
new
{
Id = 505,
Description = "Разрешение просматривать Дело скважины",
Name = "WellFinalDocuments.get"
},
new
{
Id = 506,
Description = "Разрешение редактировать ответственных за загрузку файла Дело скважины",
Name = "WellFinalDocuments.editPublisher"
});
});
modelBuilder.Entity("AsbCloudDb.Model.RelationCompanyWell", b =>
{
b.Property("IdCompany")
.HasColumnType("integer")
.HasColumnName("id_company");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well");
b.HasKey("IdCompany", "IdWell");
b.HasIndex("IdWell");
b.ToTable("t_relation_company_well");
b.HasComment("отношение скважин и компаний");
});
modelBuilder.Entity("AsbCloudDb.Model.RelationUserDrillingProgramPart", b =>
{
b.Property("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user");
b.Property("IdDrillingProgramPart")
.HasColumnType("integer")
.HasColumnName("id_drilling_program_part");
b.Property("IdUserRole")
.HasColumnType("integer")
.HasColumnName("id_role")
.HasComment("1 - publisher, 2 - approver");
b.HasKey("IdUser", "IdDrillingProgramPart")
.HasName("t_relation_user_drilling_program_part_pk");
b.HasIndex("IdDrillingProgramPart");
b.ToTable("t_relation_user_drilling_program_part");
b.HasComment("Отношение пользователей и частей ПБ");
});
modelBuilder.Entity("AsbCloudDb.Model.RelationUserRolePermission", b =>
{
b.Property("IdUserRole")
.HasColumnType("integer")
.HasColumnName("id_user_role");
b.Property("IdPermission")
.HasColumnType("integer")
.HasColumnName("id_permission");
b.HasKey("IdUserRole", "IdPermission");
b.HasIndex("IdPermission");
b.ToTable("t_relation_user_role_permission");
b.HasComment("Отношение ролей пользователей и разрешений доступа");
b.HasData(
new
{
IdUserRole = 1100,
IdPermission = 102
},
new
{
IdUserRole = 1100,
IdPermission = 111
},
new
{
IdUserRole = 1101,
IdPermission = 101
},
new
{
IdUserRole = 1101,
IdPermission = 100
},
new
{
IdUserRole = 1102,
IdPermission = 105
},
new
{
IdUserRole = 1102,
IdPermission = 108
},
new
{
IdUserRole = 1103,
IdPermission = 104
},
new
{
IdUserRole = 1103,
IdPermission = 103
},
new
{
IdUserRole = 1104,
IdPermission = 108
},
new
{
IdUserRole = 1105,
IdPermission = 107
},
new
{
IdUserRole = 1105,
IdPermission = 106
},
new
{
IdUserRole = 1106,
IdPermission = 111
},
new
{
IdUserRole = 1107,
IdPermission = 110
},
new
{
IdUserRole = 1107,
IdPermission = 109
},
new
{
IdUserRole = 1108,
IdPermission = 114
},
new
{
IdUserRole = 1109,
IdPermission = 113
},
new
{
IdUserRole = 1109,
IdPermission = 112
},
new
{
IdUserRole = 1110,
IdPermission = 123
},
new
{
IdUserRole = 1110,
IdPermission = 114
},
new
{
IdUserRole = 1111,
IdPermission = 122
},
new
{
IdUserRole = 1111,
IdPermission = 121
},
new
{
IdUserRole = 1112,
IdPermission = 117
},
new
{
IdUserRole = 1113,
IdPermission = 105
},
new
{
IdUserRole = 1113,
IdPermission = 123
},
new
{
IdUserRole = 1113,
IdPermission = 120
},
new
{
IdUserRole = 1114,
IdPermission = 119
},
new
{
IdUserRole = 1114,
IdPermission = 118
},
new
{
IdUserRole = 1114,
IdPermission = 200
},
new
{
IdUserRole = 1115,
IdPermission = 223
},
new
{
IdUserRole = 1116,
IdPermission = 105
},
new
{
IdUserRole = 1116,
IdPermission = 102
},
new
{
IdUserRole = 1116,
IdPermission = 117
},
new
{
IdUserRole = 1116,
IdPermission = 126
},
new
{
IdUserRole = 1117,
IdPermission = 125
},
new
{
IdUserRole = 1117,
IdPermission = 124
},
new
{
IdUserRole = 1200,
IdPermission = 203
},
new
{
IdUserRole = 1200,
IdPermission = 230
},
new
{
IdUserRole = 1201,
IdPermission = 202
},
new
{
IdUserRole = 1201,
IdPermission = 203
},
new
{
IdUserRole = 1201,
IdPermission = 220
},
new
{
IdUserRole = 1202,
IdPermission = 203
},
new
{
IdUserRole = 1202,
IdPermission = 220
},
new
{
IdUserRole = 1202,
IdPermission = 236
},
new
{
IdUserRole = 1202,
IdPermission = 212
},
new
{
IdUserRole = 1203,
IdPermission = 235
},
new
{
IdUserRole = 1204,
IdPermission = 202
},
new
{
IdUserRole = 1204,
IdPermission = 203
},
new
{
IdUserRole = 1205,
IdPermission = 215
},
new
{
IdUserRole = 1206,
IdPermission = 203
},
new
{
IdUserRole = 1206,
IdPermission = 206
},
new
{
IdUserRole = 1207,
IdPermission = 205
},
new
{
IdUserRole = 1208,
IdPermission = 218
},
new
{
IdUserRole = 1209,
IdPermission = 217
},
new
{
IdUserRole = 1210,
IdPermission = 203
},
new
{
IdUserRole = 1210,
IdPermission = 230
},
new
{
IdUserRole = 1210,
IdPermission = 219
},
new
{
IdUserRole = 1211,
IdPermission = 203
},
new
{
IdUserRole = 1211,
IdPermission = 220
},
new
{
IdUserRole = 1211,
IdPermission = 239
},
new
{
IdUserRole = 1212,
IdPermission = 238
},
new
{
IdUserRole = 1212,
IdPermission = 237
},
new
{
IdUserRole = 1213,
IdPermission = 203
},
new
{
IdUserRole = 1213,
IdPermission = 239
},
new
{
IdUserRole = 1213,
IdPermission = 212
},
new
{
IdUserRole = 1214,
IdPermission = 211
},
new
{
IdUserRole = 1214,
IdPermission = 210
},
new
{
IdUserRole = 1215,
IdPermission = 203
},
new
{
IdUserRole = 1215,
IdPermission = 222
},
new
{
IdUserRole = 1216,
IdPermission = 221
},
new
{
IdUserRole = 1217,
IdPermission = 226
},
new
{
IdUserRole = 1218,
IdPermission = 225
},
new
{
IdUserRole = 1218,
IdPermission = 224
},
new
{
IdUserRole = 1219,
IdPermission = 203
},
new
{
IdUserRole = 1219,
IdPermission = 206
},
new
{
IdUserRole = 1219,
IdPermission = 230
},
new
{
IdUserRole = 1219,
IdPermission = 232
},
new
{
IdUserRole = 1220,
IdPermission = 203
},
new
{
IdUserRole = 1220,
IdPermission = 228
},
new
{
IdUserRole = 1221,
IdPermission = 202
},
new
{
IdUserRole = 1221,
IdPermission = 203
},
new
{
IdUserRole = 1221,
IdPermission = 220
},
new
{
IdUserRole = 1221,
IdPermission = 234
},
new
{
IdUserRole = 1501,
IdPermission = 214
},
new
{
IdUserRole = 1501,
IdPermission = 213
},
new
{
IdUserRole = 1502,
IdPermission = 207
},
new
{
IdUserRole = 1502,
IdPermission = 208
},
new
{
IdUserRole = 2000,
IdPermission = 205
},
new
{
IdUserRole = 2000,
IdPermission = 204
},
new
{
IdUserRole = 2000,
IdPermission = 245
},
new
{
IdUserRole = 2001,
IdPermission = 244
},
new
{
IdUserRole = 2001,
IdPermission = 245
},
new
{
IdUserRole = 2002,
IdPermission = 244
},
new
{
IdUserRole = 2002,
IdPermission = 246
},
new
{
IdUserRole = 2002,
IdPermission = 237
},
new
{
IdUserRole = 2002,
IdPermission = 238
},
new
{
IdUserRole = 2003,
IdPermission = 240
},
new
{
IdUserRole = 2003,
IdPermission = 217
},
new
{
IdUserRole = 2003,
IdPermission = 216
},
new
{
IdUserRole = 2004,
IdPermission = 242
},
new
{
IdUserRole = 2004,
IdPermission = 217
},
new
{
IdUserRole = 2004,
IdPermission = 216
},
new
{
IdUserRole = 2004,
IdPermission = 205
},
new
{
IdUserRole = 2004,
IdPermission = 204
},
new
{
IdUserRole = 2005,
IdPermission = 247
},
new
{
IdUserRole = 2005,
IdPermission = 205
},
new
{
IdUserRole = 2005,
IdPermission = 204
},
new
{
IdUserRole = 2006,
IdPermission = 243
},
new
{
IdUserRole = 2006,
IdPermission = 205
},
new
{
IdUserRole = 2006,
IdPermission = 204
},
new
{
IdUserRole = 2007,
IdPermission = 241
},
new
{
IdUserRole = 2007,
IdPermission = 205
},
new
{
IdUserRole = 2007,
IdPermission = 204
},
new
{
IdUserRole = 1,
IdPermission = 500
},
new
{
IdUserRole = 1,
IdPermission = 501
},
new
{
IdUserRole = 1,
IdPermission = 502
},
new
{
IdUserRole = 1,
IdPermission = 503
},
new
{
IdUserRole = 1,
IdPermission = 504
},
new
{
IdUserRole = 1,
IdPermission = 505
});
});
modelBuilder.Entity("AsbCloudDb.Model.RelationUserRoleUserRole", b =>
{
b.Property("Id")
.HasColumnType("integer")
.HasColumnName("id_user_role");
b.Property("IdInclude")
.HasColumnType("integer")
.HasColumnName("id_include_user_role");
b.HasKey("Id", "IdInclude")
.HasName("t_relation_user_role_user_role_pk");
b.HasIndex("IdInclude");
b.ToTable("t_relation_user_role_user_role");
b.HasComment("Отношение ролей к ролям");
b.HasData(
new
{
Id = 1101,
IdInclude = 1100
},
new
{
Id = 1103,
IdInclude = 1102
},
new
{
Id = 1105,
IdInclude = 1104
},
new
{
Id = 1107,
IdInclude = 1106
},
new
{
Id = 1109,
IdInclude = 1108
},
new
{
Id = 1111,
IdInclude = 1110
},
new
{
Id = 1114,
IdInclude = 1113
},
new
{
Id = 1117,
IdInclude = 1116
},
new
{
Id = 1203,
IdInclude = 1202
},
new
{
Id = 1207,
IdInclude = 1206
},
new
{
Id = 1209,
IdInclude = 1208
},
new
{
Id = 1212,
IdInclude = 1211
},
new
{
Id = 1214,
IdInclude = 1213
},
new
{
Id = 1216,
IdInclude = 1215
},
new
{
Id = 1218,
IdInclude = 1217
},
new
{
Id = 2000,
IdInclude = 1200
},
new
{
Id = 2000,
IdInclude = 1201
},
new
{
Id = 2000,
IdInclude = 1202
},
new
{
Id = 2000,
IdInclude = 1204
},
new
{
Id = 2000,
IdInclude = 1205
},
new
{
Id = 2000,
IdInclude = 1206
},
new
{
Id = 2000,
IdInclude = 1208
},
new
{
Id = 2000,
IdInclude = 1210
},
new
{
Id = 2000,
IdInclude = 1211
},
new
{
Id = 2000,
IdInclude = 1213
},
new
{
Id = 2000,
IdInclude = 1215
},
new
{
Id = 2000,
IdInclude = 1217
},
new
{
Id = 2000,
IdInclude = 1219
},
new
{
Id = 2000,
IdInclude = 1220
},
new
{
Id = 2000,
IdInclude = 1221
},
new
{
Id = 2000,
IdInclude = 1500
},
new
{
Id = 2000,
IdInclude = 1501
},
new
{
Id = 2000,
IdInclude = 1502
},
new
{
Id = 2001,
IdInclude = 1500
},
new
{
Id = 2001,
IdInclude = 1501
},
new
{
Id = 2001,
IdInclude = 1502
},
new
{
Id = 2002,
IdInclude = 1500
},
new
{
Id = 2002,
IdInclude = 1501
},
new
{
Id = 2002,
IdInclude = 1502
},
new
{
Id = 2003,
IdInclude = 1500
},
new
{
Id = 2003,
IdInclude = 1501
},
new
{
Id = 2003,
IdInclude = 1502
},
new
{
Id = 2004,
IdInclude = 1500
},
new
{
Id = 2004,
IdInclude = 1501
},
new
{
Id = 2004,
IdInclude = 1502
},
new
{
Id = 2005,
IdInclude = 1500
},
new
{
Id = 2005,
IdInclude = 1501
},
new
{
Id = 2005,
IdInclude = 1502
},
new
{
Id = 2006,
IdInclude = 1500
},
new
{
Id = 2006,
IdInclude = 1501
},
new
{
Id = 2006,
IdInclude = 1502
},
new
{
Id = 2007,
IdInclude = 1500
},
new
{
Id = 2007,
IdInclude = 1501
},
new
{
Id = 2007,
IdInclude = 1502
});
});
modelBuilder.Entity("AsbCloudDb.Model.RelationUserUserRole", b =>
{
b.Property("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user");
b.Property("IdUserRole")
.HasColumnType("integer")
.HasColumnName("id_user_role");
b.HasKey("IdUser", "IdUserRole");
b.HasIndex("IdUserRole");
b.ToTable("t_relation_user_user_role");
b.HasComment("Отношение пользователей и ролей");
b.HasData(
new
{
IdUser = 1,
IdUserRole = 1
});
});
modelBuilder.Entity("AsbCloudDb.Model.ReportProperty", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Begin")
.HasColumnType("timestamp with time zone")
.HasColumnName("begin");
b.Property("End")
.HasColumnType("timestamp with time zone")
.HasColumnName("end")
.HasComment("timestamp with time zone");
b.Property("Format")
.HasColumnType("integer")
.HasColumnName("format")
.HasComment("Формат отчета");
b.Property("IdFile")
.HasColumnType("integer")
.HasColumnName("id_file")
.HasComment("id файла-родителя");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property("Step")
.HasColumnType("integer")
.HasColumnName("step")
.HasComment("размер шага в секундах");
b.HasKey("Id");
b.HasIndex("IdFile");
b.HasIndex("IdWell");
b.ToTable("t_report_property");
b.HasComment("Отчеты с данными по буровым");
});
modelBuilder.Entity("AsbCloudDb.Model.Schedule", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("DrillEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("drill_end")
.HasComment("Конец вахты");
b.Property("DrillStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("drill_start")
.HasComment("Начало вахты");
b.Property("IdDriller")
.HasColumnType("integer")
.HasColumnName("id_driller")
.HasComment("Идентификатор бурильщика");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Идентификатор скважины");
b.Property("ShiftEnd")
.HasColumnType("time without time zone")
.HasColumnName("shift_end")
.HasComment("Конец смены");
b.Property("ShiftStart")
.HasColumnType("time without time zone")
.HasColumnName("shift_start")
.HasComment("Начало смены");
b.HasKey("Id");
b.HasIndex("IdDriller");
b.HasIndex("IdWell");
b.ToTable("t_schedule");
b.HasComment("График работы бурильщика");
});
modelBuilder.Entity("AsbCloudDb.Model.SetpointsRequest", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Comment")
.HasColumnType("text")
.HasColumnName("comment")
.HasComment("комментарий для оператора");
b.Property("IdAuthor")
.HasColumnType("integer")
.HasColumnName("id_author")
.HasComment("Id пользователя, загрузившего файл");
b.Property("IdState")
.HasColumnType("integer")
.HasColumnName("id_state")
.HasComment("0: неизвестно, 1:ожидает отправки, 2: отправлено, 3: принято оператором, 4: отклонено оператором, 5: устарело");
b.Property("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property("ObsolescenceSec")
.HasColumnType("integer")
.HasColumnName("obsolescence")
.HasComment("сек. до устаревания");
b.Property("Setpoints")
.HasColumnType("jsonb")
.HasColumnName("setpoint_set")
.HasComment("Набор уставок");
b.Property("UploadDate")
.HasColumnType("timestamp with time zone")
.HasColumnName("date");
b.HasKey("Id");
b.HasIndex("IdAuthor");
b.HasIndex("IdWell");
b.ToTable("t_setpoints_rquest");
b.HasComment("Запросы на изменение уставок панели оператора");
});
modelBuilder.Entity("AsbCloudDb.Model.Subsystems.Subsystem", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Description")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("description");
b.Property("Name")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name");
b.HasKey("Id");
b.ToTable("t_subsystem");
b.HasComment("Описание подсистем");
b.HasData(
new
{
Id = 1,
Description = "Совместная работа режимов \"Бурение в роторе\" и \"Бурение в слайде\"",
Name = "АКБ"
},
new
{
Id = 2,
Description = "Алгоритм поиска оптимальных параметров бурения САУБ",
Name = "MSE"
},
new
{
Id = 65536,
Description = "Spin master",
Name = "Spin master"
},
new
{
Id = 65537,
Description = "Torque master",
Name = "Torque master"
});
});
modelBuilder.Entity("AsbCloudDb.Model.Subsystems.SubsystemOperationTime", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("DateEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_end")
.HasComment("дата/время выключения подсистемы");
b.Property("DateStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_start")
.HasComment("дата/время включения подсистемы");
b.Property("DepthEnd")
.HasColumnType("real")
.HasColumnName("depth_end")
.HasComment("глубина забоя на момент выключения подсистемы");
b.Property("DepthStart")
.HasColumnType("real")
.HasColumnName("depth_start")
.HasComment("глубина забоя на момент включения подсистемы");
b.Property("IdSubsystem")
.HasColumnType("integer")
.HasColumnName("id_subsystem");
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry")
.HasComment("ИД телеметрии по которой выдается информация");
b.HasKey("Id");
b.HasIndex("IdSubsystem");
b.HasIndex("IdTelemetry");
b.ToTable("t_subsystem_operation_time");
b.HasComment("наработки подсистем");
});
modelBuilder.Entity("AsbCloudDb.Model.Telemetry", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Info")
.HasColumnType("jsonb")
.HasColumnName("info")
.HasComment("Информация с панели о скважине");
b.Property("RemoteUid")
.HasColumnType("text")
.HasColumnName("remote_uid")
.HasComment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
b.Property("TimeZone")
.HasColumnType("jsonb")
.HasColumnName("timezone")
.HasComment("Смещение часового пояса от UTC");
b.HasKey("Id");
b.HasIndex(new[] { "RemoteUid" }, "t_telemetry_remote_uid_index");
b.ToTable("t_telemetry");
b.HasComment("таблица привязки телеметрии от комплектов к конкретной скважине.");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSaub", b =>
{
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date")
.HasComment("'2021-10-19 18:23:54+05'");
b.Property("AxialLoad")
.HasColumnType("real")
.HasColumnName("axial_load")
.HasComment("Осевая нагрузка");
b.Property("AxialLoadLimitMax")
.HasColumnType("real")
.HasColumnName("axial_load_limit_max")
.HasComment("Осевая нагрузка. Аварийная макс.");
b.Property("AxialLoadSp")
.HasColumnType("real")
.HasColumnName("axial_load_sp")
.HasComment("Осевая нагрузка. Задание");
b.Property("BitDepth")
.HasColumnType("real")
.HasColumnName("bit_depth")
.HasComment("Положение инструмента");
b.Property("BlockPosition")
.HasColumnType("real")
.HasColumnName("block_position")
.HasComment("Высота талевого блока");
b.Property("BlockPositionMax")
.HasColumnType("real")
.HasColumnName("block_position_max")
.HasComment("Талевый блок. Макс положение");
b.Property("BlockPositionMin")
.HasColumnType("real")
.HasColumnName("block_position_min")
.HasComment("Талевый блок. Мин положение");
b.Property("BlockSpeed")
.HasColumnType("real")
.HasColumnName("block_speed")
.HasComment("Скорость талевого блока");
b.Property("BlockSpeedSp")
.HasColumnType("real")
.HasColumnName("block_speed_sp")
.HasComment("Скорости талевого блока. Задание");
b.Property("BlockSpeedSpDevelop")
.HasColumnType("real")
.HasColumnName("block_speed_sp_develop")
.HasComment("Талевый блок. Задание скорости для проработки");
b.Property("BlockSpeedSpRotor")
.HasColumnType("real")
.HasColumnName("block_speed_sp_rotor")
.HasComment("Талевый блок. Задание скорости для роторного бурения");
b.Property("BlockSpeedSpSlide")
.HasColumnType("real")
.HasColumnName("block_speed_sp_slide")
.HasComment("Талевый блок. Задание скорости для режима слайда");
b.Property("Flow")
.HasColumnType("real")
.HasColumnName("flow")
.HasComment("Расход");
b.Property("FlowDeltaLimitMax")
.HasColumnType("real")
.HasColumnName("flow_delta_limit_max")
.HasComment("Расход. Аварийный макс.");
b.Property("FlowIdle")
.HasColumnType("real")
.HasColumnName("flow_idle")
.HasComment("Расход. Холостой ход");
b.Property("HookWeight")
.HasColumnType("real")
.HasColumnName("hook_weight")
.HasComment("Вес на крюке");
b.Property("HookWeightIdle")
.HasColumnType("real")
.HasColumnName("hook_weight_idle")
.HasComment("Вес на крюке. Холостой ход");
b.Property("HookWeightLimitMax")
.HasColumnType("real")
.HasColumnName("hook_weight_limit_max")
.HasComment("Вес на крюке. Затяжка");
b.Property("HookWeightLimitMin")
.HasColumnType("real")
.HasColumnName("hook_weight_limit_min")
.HasComment("Вес на крюке. Посадка");
b.Property("IdFeedRegulator")
.HasColumnType("smallint")
.HasColumnName("id_feed_regulator")
.HasComment("Текущий критерий бурения");
b.Property("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("Пользователь САУБ");
b.Property("Mode")
.HasColumnType("smallint")
.HasColumnName("mode")
.HasComment("Режим САУБ");
b.Property("Mse")
.HasColumnType("real")
.HasColumnName("mse")
.HasComment("MSE");
b.Property("MseState")
.HasColumnType("smallint")
.HasColumnName("mse_state")
.HasComment("Текущее состояние работы MSE");
b.Property("Pressure")
.HasColumnType("real")
.HasColumnName("pressure")
.HasComment("Давление");
b.Property("PressureDeltaLimitMax")
.HasColumnType("real")
.HasColumnName("pressure_delta_limit_max")
.HasComment("Давление дифф. Аварийное макс.");
b.Property("PressureIdle")
.HasColumnType("real")
.HasColumnName("pressure_idle")
.HasComment("Давление. Холостой ход");
b.Property("PressureSp")
.HasColumnType("real")
.HasColumnName("pressure_sp")
.HasComment("Давление. Задание");
b.Property("PressureSpDevelop")
.HasColumnType("real")
.HasColumnName("pressure_sp_develop")
.HasComment("Давление. Задание для проработки");
b.Property("PressureSpRotor")
.HasColumnType("real")
.HasColumnName("pressure_sp_rotor")
.HasComment("Давление. Задание для роторного бурения");
b.Property("PressureSpSlide")
.HasColumnType("real")
.HasColumnName("pressure_sp_slide")
.HasComment("Давление. Задание для режима слайда");
b.Property("RotorSpeed")
.HasColumnType("real")
.HasColumnName("rotor_speed")
.HasComment("Обороты ротора");
b.Property("RotorTorque")
.HasColumnType("real")
.HasColumnName("rotor_torque")
.HasComment("Момент на роторе");
b.Property("RotorTorqueIdle")
.HasColumnType("real")
.HasColumnName("rotor_torque_idle")
.HasComment("Момент на роторе. Холостой ход");
b.Property("RotorTorqueLimitMax")
.HasColumnType("real")
.HasColumnName("rotor_torque_limit_max")
.HasComment("Момент на роторе. Аварийный макс.");
b.Property("RotorTorqueSp")
.HasColumnType("real")
.HasColumnName("rotor_torque_sp")
.HasComment("Момент на роторе. Задание");
b.Property("WellDepth")
.HasColumnType("real")
.HasColumnName("well_depth")
.HasComment("Глубина забоя");
b.HasKey("IdTelemetry", "DateTime");
b.ToTable("t_telemetry_data_saub");
b.HasComment("набор основных данных по SAUB");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSaubStat", b =>
{
b.Property("Count")
.HasColumnType("bigint")
.HasColumnName("count_items");
b.Property("DateMax")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_max");
b.Property("DateMin")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_min");
b.Property("DepthMax")
.HasColumnType("real")
.HasColumnName("depth_max");
b.Property("DepthMin")
.HasColumnType("real")
.HasColumnName("depth_min");
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.ToView("mw_telemetry_datas_saub_stat");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSpin", b =>
{
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date")
.HasComment("'2021-10-19 18:23:54+05'");
b.Property("Mode")
.HasColumnType("smallint")
.HasColumnName("mode")
.HasComment("Выбранный режим управления");
b.Property("PositionRight")
.HasColumnType("real")
.HasColumnName("position_right")
.HasComment("Крайний правый угол осцилляции");
b.Property("PositionZero")
.HasColumnType("real")
.HasColumnName("position_zero")
.HasComment("Нулевая позиция осцилляции");
b.Property("RevolsLeftLimit")
.HasColumnType("real")
.HasColumnName("revols_left_limit")
.HasComment("Ограничение числа оборотов влево");
b.Property("RevolsLeftTotal")
.HasColumnType("real")
.HasColumnName("revols_left_total")
.HasComment("Суммарное количество оборотов влево");
b.Property("RevolsRightLimit")
.HasColumnType("real")
.HasColumnName("revols_right_limit")
.HasComment("Ограничение числа оборотов вправо");
b.Property("RevolsRightTotal")
.HasColumnType("real")
.HasColumnName("revols_right_total")
.HasComment("Суммарное количество оборотов вправо");
b.Property("SpeedLeftSp")
.HasColumnType("real")
.HasColumnName("speed_left_sp")
.HasComment("Заданная скорость вращения влево");
b.Property("SpeedRightSp")
.HasColumnType("real")
.HasColumnName("speed_right_sp")
.HasComment("Заданная скорость вращения вправо");
b.Property("State")
.HasColumnType("smallint")
.HasColumnName("state")
.HasComment("Переменная этапа");
b.HasKey("IdTelemetry", "DateTime");
b.ToTable("t_telemetry_data_spin");
b.HasComment("набор основных данных по SpinMaster");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryEvent", b =>
{
b.Property("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property("IdEvent")
.HasColumnType("integer")
.HasColumnName("id_event");
b.Property("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category");
b.Property("MessageTemplate")
.HasColumnType("text")
.HasColumnName("message_template");
b.HasKey("IdTelemetry", "IdEvent");
b.ToTable("t_telemetry_event");
b.HasComment("Справочник событий. События формируют сообщения. Разделено по версиям посылок от телеметрии.");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryMessage", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id"));
b.Property("Arg0")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg0")
.HasComment("Аргумент №0 для вставки в шаблон сообщения");
b.Property("Arg1")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg1");
b.Property("Arg2")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg2");
b.Property("Arg3")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg3");
b.Property("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date");
b.Property