// using System; using System.Collections.Generic; 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.1") .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", 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("IdTelemetry") .HasColumnType("integer") .HasColumnName("id_telemetry"); b.Property("IdUsersAtStart") .HasColumnType("integer") .HasColumnName("id_user") .HasComment("Id пользователя по телеметрии на момент начала операции"); 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 = "Программы цементирования обсадных колонн" }); }); 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("PublishInfo") .HasColumnType("jsonb") .HasColumnName("publish_info") .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.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.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 = 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" }); }); 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 }); }); 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.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("BreakAngleK") .HasColumnType("real") .HasColumnName("break_angle_k") .HasComment("Коэффициент для расчёта за какой угол нужно тормозить"); b.Property("BreakAngleLeft") .HasColumnType("real") .HasColumnName("break_angle_left") .HasComment("Угол торможения влево при работе по моменту"); b.Property("EncoderResolution") .HasColumnType("real") .HasColumnName("encoder_resolution") .HasComment("Разрешение энкодера"); b.Property("Mode") .HasColumnType("smallint") .HasColumnName("mode") .HasComment("Выбранный режим управления"); b.Property("PidMuxTorqueLeftLimit") .HasColumnType("real") .HasColumnName("pid_mux_torque_left_limit") .HasComment(" Момент при котором определяется ехать назад по моменту или по скорости"); b.Property("PositionRight") .HasColumnType("real") .HasColumnName("position_right") .HasComment("Крайний правый угол осцилляции"); b.Property("PositionZero") .HasColumnType("real") .HasColumnName("position_zero") .HasComment("Нулевая позиция осцилляции"); b.Property("Ratio") .HasColumnType("real") .HasColumnName("ratio") .HasComment(" Коэффициент редукции редуктора"); b.Property("ReverseKTorque") .HasColumnType("real") .HasColumnName("reverse_k_torque") .HasComment("Коэффициент на который умножается момент, для того чтобы система поняла что мы движемся в обратную сторону"); b.Property("ReverseSpeedSpZeroTime") .HasColumnType("smallint") .HasColumnName("reverse_speed_sp_zero_time") .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("RotorTorqueAvg") .HasColumnType("real") .HasColumnName("rotor_torque_avg") .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.Property("TopDriveSpeed") .HasColumnType("real") .HasColumnName("top_drive_speed") .HasComment("Скорость СВП"); b.Property("TopDriveSpeedErr") .HasColumnType("smallint") .HasColumnName("top_drive_speed_err"); b.Property("TopDriveSpeedMax") .HasColumnType("real") .HasColumnName("top_drive_speed_max") .HasComment("верхний предел"); b.Property("TopDriveSpeedMin") .HasColumnType("real") .HasColumnName("top_drive_speed_min") .HasComment("нижний предел"); b.Property("TopDriveSpeedOffset") .HasColumnType("real") .HasColumnName("top_drive_speed_offset") .HasComment("смещение"); b.Property("TopDriveSpeedSpFrom") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_from") .HasComment("Заданная скорость c СВП"); b.Property("TopDriveSpeedSpFromErr") .HasColumnType("smallint") .HasColumnName("top_drive_speed_sp_from_err"); b.Property("TopDriveSpeedSpFromMax") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_from_max"); b.Property("TopDriveSpeedSpFromMin") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_from_min"); b.Property("TopDriveSpeedSpFromOffset") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_from_offset"); b.Property("TopDriveSpeedSpTo") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_to") .HasComment("Задание скорости на СВП"); b.Property("TopDriveSpeedSpToErr") .HasColumnType("smallint") .HasColumnName("top_drive_speed_sp_to_err"); b.Property("TopDriveSpeedSpToMax") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_to_max"); b.Property("TopDriveSpeedSpToMin") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_to_min"); b.Property("TopDriveSpeedSpToOffset") .HasColumnType("real") .HasColumnName("top_drive_speed_sp_to_offset"); b.Property("TopDriveTorque") .HasColumnType("real") .HasColumnName("top_drive_torque") .HasComment("Момент СВП"); b.Property("TopDriveTorqueErr") .HasColumnType("smallint") .HasColumnName("top_drive_torque_err"); b.Property("TopDriveTorqueMax") .HasColumnType("real") .HasColumnName("top_drive_torque_max"); b.Property("TopDriveTorqueMin") .HasColumnType("real") .HasColumnName("top_drive_torque_min"); b.Property("TopDriveTorqueOffset") .HasColumnType("real") .HasColumnName("top_drive_torque_offset"); b.Property("TopDriveTorqueSpFrom") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_from") .HasComment("Заданный момент c СВП"); b.Property("TopDriveTorqueSpFromErr") .HasColumnType("smallint") .HasColumnName("top_drive_torque_sp_from_err"); b.Property("TopDriveTorqueSpFromMax") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_from_max"); b.Property("TopDriveTorqueSpFromMin") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_from_min"); b.Property("TopDriveTorqueSpFromOffset") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_from_offset"); b.Property("TopDriveTorqueSpTo") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_to") .HasComment("Задание момента на СВП"); b.Property("TopDriveTorqueSpToErr") .HasColumnType("smallint") .HasColumnName("top_drive_torque_sp_to_err"); b.Property("TopDriveTorqueSpToMax") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_to_max"); b.Property("TopDriveTorqueSpToMin") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_to_min"); b.Property("TopDriveTorqueSpToOffset") .HasColumnType("real") .HasColumnName("top_drive_torque_sp_to_offset"); b.Property("TorqueLeftLimit") .HasColumnType("real") .HasColumnName("torque_left_limit") .HasComment("Ограничение крутящего момента влево"); b.Property("TorqueRampTime") .HasColumnType("real") .HasColumnName("torque_ramp_time") .HasComment("Время нарастания момента"); b.Property("TorqueRightLimit") .HasColumnType("real") .HasColumnName("torque_right_limit") .HasComment("Ограничение крутящего момента вправо"); b.Property("TorqueStarting") .HasColumnType("real") .HasColumnName("torque_starting") .HasComment("Страгивающий момент"); b.Property("TurnLeftOnceByAngle") .HasColumnType("real") .HasColumnName("turn_left_once_by_angle") .HasComment("Доворот по градусам единожды влево"); b.Property("TurnLeftOnceByRevols") .HasColumnType("real") .HasColumnName("turn_left_once_by_revols") .HasComment("Доворот по оборотам единожды влево"); b.Property("TurnLeftOnceByTorque") .HasColumnType("real") .HasColumnName("turn_left_once_by_torque") .HasComment("Доворот по моменту единожды влево"); b.Property("TurnRightOnceByAngle") .HasColumnType("real") .HasColumnName("turn_right_once_by_angle") .HasComment("Доворот по градусам единожды вправо"); b.Property("TurnRightOnceByRevols") .HasColumnType("real") .HasColumnName("turn_right_once_by_revols") .HasComment("Доворот по оборотам единожды вправо"); b.Property("TurnRightOnceByTorque") .HasColumnType("real") .HasColumnName("turn_right_once_by_torque") .HasComment("Доворот по моменту единожды вправо"); b.Property("UnlockBySectorOut") .HasColumnType("real") .HasColumnName("unlock_by_sector_out") .HasComment(" Градус отклонения от сектора для автоматического сброса блокировки"); b.Property("Ver") .HasColumnType("real") .HasColumnName("ver") .HasComment("Версия ПО ПЛК"); b.Property("W2800") .HasColumnType("smallint") .HasColumnName("w2800") .HasComment("Установка нуля энкодера"); b.Property("W2808") .HasColumnType("smallint") .HasColumnName("w2808") .HasComment("Неисправность энкодера"); b.Property("W2810") .HasColumnType("smallint") .HasColumnName("w2810") .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("IdEvent") .HasColumnType("integer") .HasColumnName("id_event"); b.Property("IdTelemetry") .HasColumnType("integer") .HasColumnName("id_telemetry"); b.Property("IdTelemetryUser") .HasColumnType("integer") .HasColumnName("id_telemetry_user") .HasComment("Пользователь панели отправляющей телеметрию. не пользователь облака."); b.Property("WellDepth") .HasColumnType("double precision") .HasColumnName("well_depth"); b.HasKey("Id"); b.HasIndex("IdTelemetry"); b.ToTable("t_telemetry_message"); b.HasComment("Сообщения на буровых"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryUser", b => { b.Property("IdTelemetry") .HasColumnType("integer") .HasColumnName("id_telemetry"); b.Property("IdUser") .HasColumnType("integer") .HasColumnName("id_user"); b.Property("Level") .HasColumnType("integer") .HasColumnName("level"); b.Property("Name") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("name"); b.Property("Patronymic") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("patronymic"); b.Property("Surname") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("surname"); b.HasKey("IdTelemetry", "IdUser"); b.ToTable("t_telemetry_user"); b.HasComment("Пользователи панели САУБ. Для сообщений."); }); modelBuilder.Entity("AsbCloudDb.Model.User", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasColumnName("id"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Email") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("email") .HasComment("должность"); b.Property("IdCompany") .HasColumnType("integer") .HasColumnName("id_company"); b.Property("IdState") .HasColumnType("smallint") .HasColumnName("state") .HasComment("состояние:\n100 - удален"); b.Property("Login") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("login"); b.Property("Name") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("name") .HasComment("имя"); b.Property("PasswordHash") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("password_hash") .HasComment("соленый хэш пароля.\nпервые 5 символов - соль"); b.Property("Patronymic") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("patronymic") .HasComment("отчество"); b.Property("Phone") .HasMaxLength(50) .HasColumnType("character varying(50)") .HasColumnName("phone") .HasComment("номер телефона"); b.Property("Position") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("position") .HasComment("email"); b.Property("Surname") .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("surname") .HasComment("фамилия"); b.HasKey("Id"); b.HasIndex("IdCompany"); b.HasIndex("Login") .IsUnique(); b.ToTable("t_user"); b.HasComment("Пользователи облака"); b.HasData( new { Id = 1, IdCompany = 1, Login = "dev", Name = "Разработчик", PasswordHash = "Vlcj|4fa529103dde7ff72cfe76185f344d4aa87931f8e1b2044e8a7739947c3d18923464eaad93843e4f809c5e126d013072" }); }); modelBuilder.Entity("AsbCloudDb.Model.UserRole", 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("IdType") .HasColumnType("integer") .HasColumnName("id_type") .HasComment("0-роль из стандартной матрицы, \n1-специальная роль для какого-либо пользователя"); b.HasKey("Id"); b.ToTable("t_user_role"); b.HasComment("Роли пользователей в системе"); b.HasData( new { Id = 1, Caption = "root", IdType = 1 }, new { Id = 1100, Caption = "admin_cluster.view", IdType = 1 }, new { Id = 1101, Caption = "admin_cluster.edit", IdType = 1 }, new { Id = 1102, Caption = "admin_company.view", IdType = 1 }, new { Id = 1103, Caption = "admin_company.edit", IdType = 1 }, new { Id = 1104, Caption = "admin_company_type.view", IdType = 1 }, new { Id = 1105, Caption = "admin_company_type.edit", IdType = 1 }, new { Id = 1106, Caption = "admin_deposit.view", IdType = 1 }, new { Id = 1107, Caption = "admin_deposit.edit", IdType = 1 }, new { Id = 1108, Caption = "admin_permission.view", IdType = 1 }, new { Id = 1109, Caption = "admin_permission.edit", IdType = 1 }, new { Id = 1110, Caption = "admin_role.view", IdType = 1 }, new { Id = 1111, Caption = "admin_role.edit", IdType = 1 }, new { Id = 1112, Caption = "admin_telemetry.view", IdType = 1 }, new { Id = 1113, Caption = "admin_user.view", IdType = 1 }, new { Id = 1114, Caption = "admin_user.edit", IdType = 1 }, new { Id = 1115, Caption = "admin_visit_log.view", IdType = 1 }, new { Id = 1116, Caption = "admin_well.view", IdType = 1 }, new { Id = 1117, Caption = "admin_well.edit", IdType = 1 }, new { Id = 1200, Caption = "archive.view", IdType = 1 }, new { Id = 1201, Caption = "cluster.view", IdType = 1 }, new { Id = 1202, Caption = "composite.view", IdType = 1 }, new { Id = 1203, Caption = "composite.edit", IdType = 1 }, new { Id = 1204, Caption = "deposit.view", IdType = 1 }, new { Id = 1205, Caption = "document.view", IdType = 1 }, new { Id = 1206, Caption = "drillProcessFlow.view", IdType = 1 }, new { Id = 1207, Caption = "drillProcessFlow.edit", IdType = 1 }, new { Id = 1208, Caption = "measure.view", IdType = 1 }, new { Id = 1209, Caption = "measure.edit", IdType = 1 }, new { Id = 1210, Caption = "message.view", IdType = 1 }, new { Id = 1211, Caption = "operations.view", IdType = 1 }, new { Id = 1212, Caption = "operations.edit", IdType = 1 }, new { Id = 1213, Caption = "params.view", IdType = 1 }, new { Id = 1214, Caption = "params.edit", IdType = 1 }, new { Id = 1215, Caption = "report.view", IdType = 1 }, new { Id = 1216, Caption = "report.edit", IdType = 1 }, new { Id = 1217, Caption = "setpoints.view", IdType = 1 }, new { Id = 1218, Caption = "setpoints.edit", IdType = 1 }, new { Id = 1219, Caption = "telemetry.view", IdType = 1 }, new { Id = 1220, Caption = "telemetryAnalysis.view", IdType = 1 }, new { Id = 1221, Caption = "well.view", IdType = 1 }, new { Id = 1500, Caption = "Просмотр всего", IdType = 1 }, new { Id = 1501, Caption = "file.edit", IdType = 1 }, new { Id = 1502, Caption = "drillingProgram.edit", IdType = 1 }, new { Id = 2000, Caption = "Заказчик", IdType = 0 }, new { Id = 2001, Caption = "Супервайзер", IdType = 0 }, new { Id = 2002, Caption = "Буровой подрядчик", IdType = 0 }, new { Id = 2003, Caption = "Растворщик", IdType = 0 }, new { Id = 2004, Caption = "Телеметрист", IdType = 0 }, new { Id = 2005, Caption = "Долотный сервис", IdType = 0 }, new { Id = 2006, Caption = "ГТИ", IdType = 0 }, new { Id = 2007, Caption = "Цементирование", IdType = 0 }); }); modelBuilder.Entity("AsbCloudDb.Model.Well", 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("IdCluster") .HasColumnType("integer") .HasColumnName("id_cluster"); b.Property("IdState") .HasColumnType("integer") .HasColumnName("state") .HasComment("0 - неизвестно, 1 - в работе, 2 - завершена"); b.Property("IdTelemetry") .HasColumnType("integer") .HasColumnName("id_telemetry"); b.Property("IdWellType") .HasColumnType("integer") .HasColumnName("id_well_type"); 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("IdCluster"); b.HasIndex("IdTelemetry") .IsUnique(); b.HasIndex("IdWellType"); b.ToTable("t_well"); b.HasComment("скважины"); }); modelBuilder.Entity("AsbCloudDb.Model.WellComposite", b => { b.Property("IdWell") .HasColumnType("integer") .HasColumnName("id_well") .HasComment("Id скважины получателя"); b.Property("IdWellSrc") .HasColumnType("integer") .HasColumnName("id_well_src") .HasComment("Id скважины композита"); b.Property("IdWellSectionType") .HasColumnType("integer") .HasColumnName("id_well_section_type") .HasComment("Id тип секции композита"); b.HasKey("IdWell", "IdWellSrc", "IdWellSectionType"); b.HasIndex("IdWellSectionType"); b.HasIndex("IdWellSrc"); b.ToTable("t_well_composite"); b.HasComment("Композитная скважина"); }); modelBuilder.Entity("AsbCloudDb.Model.WellOperation", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasColumnName("id"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("CategoryInfo") .HasColumnType("text") .HasColumnName("category_info") .HasComment("Доп. информация к выбраной категории"); b.Property("Comment") .HasColumnType("text") .HasColumnName("comment") .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("DurationHours") .HasColumnType("double precision") .HasColumnName("duration_hours") .HasComment("Продолжительность, часы"); b.Property("IdCategory") .HasColumnType("integer") .HasColumnName("id_category") .HasComment("Id категории операции"); b.Property("IdType") .HasColumnType("integer") .HasColumnName("id_type") .HasComment("0 = План или 1 = Факт"); b.Property("IdWell") .HasColumnType("integer") .HasColumnName("id_well") .HasComment("Id скважины"); b.Property("IdWellSectionType") .HasColumnType("integer") .HasColumnName("id_well_section_type") .HasComment("Id тип секции скважины"); b.HasKey("Id"); b.HasIndex("DateStart"); b.HasIndex("DepthEnd"); b.HasIndex("IdCategory"); b.HasIndex("IdWell"); b.HasIndex("IdWellSectionType"); b.ToTable("t_well_operation"); b.HasComment("Данные по операциям на скважине"); }); modelBuilder.Entity("AsbCloudDb.Model.WellOperationCategory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasColumnName("id"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Code") .HasColumnType("integer") .HasColumnName("code") .HasComment("Код операции"); b.Property("Name") .HasColumnType("text") .HasColumnName("name") .HasComment("Название категории операции"); b.HasKey("Id"); b.ToTable("t_well_operation_category"); b.HasComment("Справочник операций на скважине"); b.HasData( new { Id = 1, Code = 0, Name = "Невозможно определить операцию" }, new { Id = 2, Code = 0, Name = "Роторное бурение" }, new { Id = 3, Code = 0, Name = "Слайдирование" }, new { Id = 4, Code = 0, Name = "Подъем с проработкой" }, new { Id = 5, Code = 0, Name = "Спуск с проработкой" }, new { Id = 6, Code = 0, Name = "Подъем с промывкой" }, new { Id = 7, Code = 0, Name = "Спуск с промывкой" }, new { Id = 8, Code = 0, Name = "Спуск в скважину" }, new { Id = 9, Code = 0, Name = "Спуск с вращением" }, new { Id = 10, Code = 0, Name = "Подъем из скважины" }, new { Id = 11, Code = 0, Name = "Подъем с вращением" }, new { Id = 12, Code = 0, Name = "Промывка в покое" }, new { Id = 13, Code = 0, Name = "Промывка с вращением" }, new { Id = 14, Code = 0, Name = "Удержание в клиньях" }, new { Id = 15, Code = 0, Name = "Неподвижное состояние" }, new { Id = 16, Code = 0, Name = "Вращение без циркуляции" }, new { Id = 17, Code = 0, Name = "На поверхности" }, new { Id = 1001, Code = 0, Name = "Бурение" }, new { Id = 1002, Code = 0, Name = "ГИС" }, new { Id = 1003, Code = 0, Name = "ГФР" }, new { Id = 1004, Code = 0, Name = "Монтаж ПВО" }, new { Id = 1005, Code = 0, Name = "Демонтаж ПВО" }, new { Id = 1006, Code = 0, Name = "Установка ФА" }, new { Id = 1007, Code = 0, Name = "Оборудование устья" }, new { Id = 1008, Code = 0, Name = "ОЗЦ" }, new { Id = 1011, Code = 0, Name = "Начало цикла строительства скважины" }, new { Id = 1012, Code = 0, Name = "Окончание цикла строительства скважины" }, new { Id = 1013, Code = 0, Name = "Опрессовка ПВО" }, new { Id = 1014, Code = 0, Name = "Опрессовка Ц.К." }, new { Id = 1015, Code = 0, Name = "Опрессовка ВЗД" }, new { Id = 1016, Code = 0, Name = "Перевод скв на другой тип промывочной жидкости" }, new { Id = 1017, Code = 0, Name = "Перезапись каротажа" }, new { Id = 1018, Code = 0, Name = "Перетяжка талевого каната" }, new { Id = 1019, Code = 0, Name = "Наращивание, промывка" }, new { Id = 1020, Code = 0, Name = "Подъем инструмента" }, new { Id = 1021, Code = 0, Name = "Подъем инструмента с промывкой" }, new { Id = 1022, Code = 0, Name = "Обратная проработка" }, new { Id = 1023, Code = 0, Name = "Сборка инструмента с мостков" }, new { Id = 1024, Code = 0, Name = "Подготовительные работы" }, new { Id = 1025, Code = 0, Name = "Сборка КНБК" }, new { Id = 1026, Code = 0, Name = "Разборка КНБК" }, new { Id = 1027, Code = 0, Name = "Промывка" }, new { Id = 1028, Code = 0, Name = "Промежуточная промывка" }, new { Id = 1029, Code = 0, Name = "Прокачка пачек" }, new { Id = 1030, Code = 0, Name = "Разбуривание тех.оснастки" }, new { Id = 1031, Code = 0, Name = "Ремонт" }, new { Id = 1032, Code = 0, Name = "Спуск инструмента" }, new { Id = 1033, Code = 0, Name = "Спуск инструмента с промывкой" }, new { Id = 1034, Code = 0, Name = "Прямая проработка" }, new { Id = 1035, Code = 0, Name = "Принудительная проработка" }, new { Id = 1037, Code = 0, Name = "Тех СПО-подъем" }, new { Id = 1038, Code = 0, Name = "Тех СПО-спуск" }, new { Id = 1039, Code = 0, Name = "Техническое обслуживание" }, new { Id = 1040, Code = 0, Name = "Цементаж" }, new { Id = 1041, Code = 0, Name = "Шаблонировка ствола" }, new { Id = 1042, Code = 0, Name = "Геологическое осложнение" }, new { Id = 1043, Code = 0, Name = "НПВ" }, new { Id = 1044, Code = 0, Name = "ВМР" }, new { Id = 1045, Code = 0, Name = "Прочее" }, new { Id = 1046, Code = 0, Name = "Спуск КНБК" }, new { Id = 1047, Code = 0, Name = "Подъем КНБК" }, new { Id = 1048, Code = 0, Name = "Спуск ОК" }, new { Id = 1050, Code = 0, Name = "Промывка при спуске ОК" }, new { Id = 1051, Code = 0, Name = "Замер ТС" }, new { Id = 1052, Code = 0, Name = "Тех. отстой" }, new { Id = 1053, Code = 0, Name = "Циркуляция и Обработка БР" }, new { Id = 1054, Code = 0, Name = "Срезка ствола" }, new { Id = 1055, Code = 0, Name = "Вспомогательные работы" }); }); modelBuilder.Entity("AsbCloudDb.Model.WellSectionType", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasColumnName("id"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Caption") .IsRequired() .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("caption") .HasComment("Название"); b.HasKey("Id"); b.ToTable("t_well_section_type"); b.HasComment("конструкция секции скважины"); b.HasData( new { Id = 1, Caption = "Пилотный ствол" }, new { Id = 2, Caption = "Направление" }, new { Id = 3, Caption = "Кондуктор" }, new { Id = 4, Caption = "Эксплуатационная колонна" }, new { Id = 5, Caption = "Транспортный ствол" }, new { Id = 6, Caption = "Хвостовик" }, new { Id = 7, Caption = "Пилотный ствол 2" }, new { Id = 8, Caption = "Направление 2" }, new { Id = 9, Caption = "Кондуктор 2" }, new { Id = 10, Caption = "Эксплуатационная колонна 2" }, new { Id = 11, Caption = "Транспортный ствол 2" }, new { Id = 12, Caption = "Хвостовик 2" }, new { Id = 13, Caption = "Пилотный ствол 3" }, new { Id = 14, Caption = "Направление 3" }, new { Id = 15, Caption = "Кондуктор 3" }, new { Id = 16, Caption = "Эксплуатационная колонна 3" }, new { Id = 17, Caption = "Транспортный ствол 3" }, new { Id = 18, Caption = "Хвостовик 3" }, new { Id = 19, Caption = "Пилотный ствол 4" }, new { Id = 20, Caption = "Направление 4" }, new { Id = 21, Caption = "Кондуктор 4" }, new { Id = 22, Caption = "Эксплуатационная колонна 4" }, new { Id = 23, Caption = "Транспортный ствол 4" }, new { Id = 24, Caption = "Хвостовик 4" }, new { Id = 25, Caption = "Пилотный ствол 5" }, new { Id = 26, Caption = "Направление 5" }, new { Id = 27, Caption = "Кондуктор 5" }, new { Id = 28, Caption = "Эксплуатационная колонна 5" }, new { Id = 29, Caption = "Транспортный ствол 5" }, new { Id = 30, Caption = "Хвостовик 5" }); }); modelBuilder.Entity("AsbCloudDb.Model.WellType", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("integer") .HasColumnName("id"); NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); b.Property("Caption") .IsRequired() .HasMaxLength(255) .HasColumnType("character varying(255)") .HasColumnName("caption") .HasComment("Название"); b.HasKey("Id"); b.ToTable("t_well_type"); b.HasComment("конструкция скважины"); b.HasData( new { Id = 1, Caption = "Наклонно-направленная" }, new { Id = 2, Caption = "Горизонтальная" }); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.RecordBase", b => { b.Property("IdTelemetry") .HasColumnType("integer") .HasColumnName("id_telemetry"); b.Property("DateTime") .HasColumnType("timestamp with time zone") .HasColumnName("date"); b.Property("Actcod") .HasColumnType("smallint") .HasColumnName("ACTCOD"); b.Property("Date") .HasColumnType("integer") .HasColumnName("DATE"); b.Property("Recid") .HasColumnType("smallint") .HasColumnName("RECID"); b.Property("Seqid") .HasColumnType("integer") .HasColumnName("SEQID"); b.Property("Stknum") .HasColumnType("smallint") .HasColumnName("STKNUM"); b.Property("Time") .HasColumnType("integer") .HasColumnName("TIME"); b.Property("Wellid") .HasColumnType("text") .HasColumnName("WELLID"); b.HasKey("IdTelemetry", "DateTime"); b.ToTable("RecordBase"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record1", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Blkpos") .HasColumnType("real") .HasColumnName("BLKPOS"); b.Property("Chkp") .HasColumnType("real") .HasColumnName("CHKP"); b.Property("Deptbitm") .HasColumnType("real") .HasColumnName("DEPTBITM"); b.Property("Deptbitv") .HasColumnType("real") .HasColumnName("DEPTBITV"); b.Property("Deptmeas") .HasColumnType("real") .HasColumnName("DEPTMEAS"); b.Property("Deptretm") .HasColumnType("real") .HasColumnName("DEPTRETM"); b.Property("Deptvert") .HasColumnType("real") .HasColumnName("DEPTVERT"); b.Property("Gasa") .HasColumnType("real") .HasColumnName("GASA"); b.Property("Hkla") .HasColumnType("real") .HasColumnName("HKLA"); b.Property("Hklx") .HasColumnType("real") .HasColumnName("HKLX"); b.Property("Lagstks") .HasColumnType("smallint") .HasColumnName("LAGSTKS"); b.Property("Mcia") .HasColumnType("real") .HasColumnName("MCIA"); b.Property("Mcoa") .HasColumnType("real") .HasColumnName("MCOA"); b.Property("Mdia") .HasColumnType("real") .HasColumnName("MDIA"); b.Property("Mdoa") .HasColumnType("real") .HasColumnName("MDOA"); b.Property("Mfia") .HasColumnType("real") .HasColumnName("MFIA"); b.Property("Mfoa") .HasColumnType("real") .HasColumnName("MFOA"); b.Property("Mfop") .HasColumnType("smallint") .HasColumnName("MFOP"); b.Property("Mtia") .HasColumnType("real") .HasColumnName("MTIA"); b.Property("Mtoa") .HasColumnType("real") .HasColumnName("MTOA"); b.Property("Ropa") .HasColumnType("real") .HasColumnName("ROPA"); b.Property("Rpma") .HasColumnType("smallint") .HasColumnName("RPMA"); b.Property("Spare1") .HasColumnType("real") .HasColumnName("SPARE1"); b.Property("Spare2") .HasColumnType("real") .HasColumnName("SPARE2"); b.Property("Spare3") .HasColumnType("real") .HasColumnName("SPARE3"); b.Property("Spare4") .HasColumnType("real") .HasColumnName("SPARE4"); b.Property("Spare5") .HasColumnType("real") .HasColumnName("SPARE5"); b.Property("Spm1") .HasColumnType("smallint") .HasColumnName("SPM1"); b.Property("Spm2") .HasColumnType("smallint") .HasColumnName("SPM2"); b.Property("Spm3") .HasColumnType("smallint") .HasColumnName("SPM3"); b.Property("Sppa") .HasColumnType("real") .HasColumnName("SPPA"); b.Property("Stkc") .HasColumnType("integer") .HasColumnName("STKC"); b.Property("TelemetryId") .HasColumnType("integer"); b.Property("Torqa") .HasColumnType("real") .HasColumnName("TORQA"); b.Property("Torqx") .HasColumnType("real") .HasColumnName("TORQX"); b.Property("Tvolact") .HasColumnType("real") .HasColumnName("TVOLACT"); b.Property("Tvolcact") .HasColumnType("real") .HasColumnName("TVOLCACT"); b.Property("Woba") .HasColumnType("real") .HasColumnName("WOBA"); b.Property("Wobx") .HasColumnType("real") .HasColumnName("WOBX"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_1"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record50", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Deptbitm") .HasColumnType("real") .HasColumnName("DEPTBITM"); b.Property("DeptmeasGdpMc") .HasColumnType("real") .HasColumnName("DEPTMEAS_GDP_mc"); b.Property("DeptmeasMcrstat") .HasColumnType("real") .HasColumnName("DEPTMEAS_MCRSTAT"); b.Property("DeptmeasRa33Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RA33_mc"); b.Property("DeptmeasRa33f2Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RA33F2_mc"); b.Property("DeptmeasRa33f4Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RA33F4_mc"); b.Property("DeptmeasRp33Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RP33_mc"); b.Property("DeptmeasRp33f2Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RP33F2_mc"); b.Property("DeptmeasRp33f4Mc") .HasColumnType("real") .HasColumnName("DEPTMEAS_RP33F4_mc"); b.Property("DeptmeasSlvlMc") .HasColumnType("real") .HasColumnName("DEPTMEAS_SLVL_mc"); b.Property("GdpMc") .HasColumnType("real") .HasColumnName("GDP_mc"); b.Property("Mcrstat") .HasColumnType("real") .HasColumnName("MCRSTAT"); b.Property("Ra33Mc") .HasColumnType("real") .HasColumnName("RA33_mc"); b.Property("Ra33f2Mc") .HasColumnType("real") .HasColumnName("RA33F2_mc"); b.Property("Ra33f4Mc") .HasColumnType("real") .HasColumnName("RA33F4_mc"); b.Property("Rp33Mc") .HasColumnType("real") .HasColumnName("RP33_mc"); b.Property("Rp33f2Mc") .HasColumnType("real") .HasColumnName("RP33F2_mc"); b.Property("Rp33f4Mc") .HasColumnType("real") .HasColumnName("RP33F4_mc"); b.Property("SlvlMc") .HasColumnType("real") .HasColumnName("SLVL_mc"); b.Property("TelemetryId") .HasColumnType("integer"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_50"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record60", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Btot") .HasColumnType("real") .HasColumnName("Btot"); b.Property("Bx") .HasColumnType("real") .HasColumnName("Bx"); b.Property("By") .HasColumnType("real") .HasColumnName("By"); b.Property("Bz") .HasColumnType("real") .HasColumnName("Bz"); b.Property("Deptbitm") .HasColumnType("real") .HasColumnName("DEPTBITM"); b.Property("Deptmeas") .HasColumnType("real") .HasColumnName("DEPTMEAS"); b.Property("Gtot") .HasColumnType("real") .HasColumnName("Gtot"); b.Property("Gx") .HasColumnType("real") .HasColumnName("Gx"); b.Property("Gy") .HasColumnType("real") .HasColumnName("Gy"); b.Property("Gz") .HasColumnType("real") .HasColumnName("Gz"); b.Property("TelemetryId") .HasColumnType("integer"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_60"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record61", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Att06h") .HasColumnType("real") .HasColumnName("ATT06H"); b.Property("Att06l") .HasColumnType("real") .HasColumnName("ATT06L"); b.Property("Att10h") .HasColumnType("real") .HasColumnName("ATT10H"); b.Property("Att10l") .HasColumnType("real") .HasColumnName("ATT10L"); b.Property("Deptbitm") .HasColumnType("real") .HasColumnName("DEPTBITM"); b.Property("Deptmeas") .HasColumnType("real") .HasColumnName("DEPTMEAS"); b.Property("Phl1f1") .HasColumnType("real") .HasColumnName("PHL1F1"); b.Property("Phl1f2") .HasColumnType("real") .HasColumnName("PHL1F2"); b.Property("Phl2f1") .HasColumnType("real") .HasColumnName("PHL2F1"); b.Property("Phl2f2") .HasColumnType("real") .HasColumnName("PHL2F2"); b.Property("Status") .HasColumnType("real") .HasColumnName("Status"); b.Property("TelemetryId") .HasColumnType("integer"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_61"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record7", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Deptmeas") .HasColumnType("real") .HasColumnName("DEPTMEAS"); b.Property("Deptsvym") .HasColumnType("real") .HasColumnName("DEPTSVYM"); b.Property("Deptsvyv") .HasColumnType("real") .HasColumnName("DEPTSVYV"); b.Property("Passnum") .HasColumnType("smallint") .HasColumnName("PASSNUM"); b.Property("Spare1") .HasColumnType("real") .HasColumnName("SPARE1"); b.Property("Spare2") .HasColumnType("real") .HasColumnName("SPARE2"); b.Property("Spare3") .HasColumnType("real") .HasColumnName("SPARE3"); b.Property("Spare4") .HasColumnType("real") .HasColumnName("SPARE4"); b.Property("Spare5") .HasColumnType("real") .HasColumnName("SPARE5"); b.Property("Svyazc") .HasColumnType("real") .HasColumnName("SVYAZC"); b.Property("Svyazu") .HasColumnType("real") .HasColumnName("SVYAZU"); b.Property("Svydls") .HasColumnType("real") .HasColumnName("SVYDLS"); b.Property("Svyew") .HasColumnType("real") .HasColumnName("SVYEW"); b.Property("Svygtf") .HasColumnType("real") .HasColumnName("SVYGTF"); b.Property("Svyinc") .HasColumnType("real") .HasColumnName("SVYINC"); b.Property("Svymtf") .HasColumnType("real") .HasColumnName("SVYMTF"); b.Property("Svyns") .HasColumnType("real") .HasColumnName("SVYNS"); b.Property("Svytype") .HasColumnType("text") .HasColumnName("SVYTYPE"); b.Property("Svywalk") .HasColumnType("real") .HasColumnName("SVYWALK"); b.Property("TelemetryId") .HasColumnType("integer"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_7"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record8", b => { b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); b.Property("Deptbitm") .HasColumnType("real") .HasColumnName("DEPTBITM"); b.Property("Deptbitv") .HasColumnType("real") .HasColumnName("DEPTBITV"); b.Property("Deptcalm") .HasColumnType("real") .HasColumnName("DEPTCALM"); b.Property("Deptcalv") .HasColumnType("real") .HasColumnName("DEPTCALV"); b.Property("Deptfdm") .HasColumnType("real") .HasColumnName("DEPTFDM"); b.Property("Deptfdv") .HasColumnType("real") .HasColumnName("DEPTFDV"); b.Property("Deptgr1m") .HasColumnType("real") .HasColumnName("DEPTGR1M"); b.Property("Deptgr1v") .HasColumnType("real") .HasColumnName("DEPTGR1V"); b.Property("Deptgr2m") .HasColumnType("real") .HasColumnName("DEPTGR2M"); b.Property("Deptgr2v") .HasColumnType("real") .HasColumnName("DEPTGR2V"); b.Property("Deptmeas") .HasColumnType("real") .HasColumnName("DEPTMEAS"); b.Property("Deptp1m") .HasColumnType("real") .HasColumnName("DEPTP1M"); b.Property("Deptp1v") .HasColumnType("real") .HasColumnName("DEPTP1V"); b.Property("Deptp2m") .HasColumnType("real") .HasColumnName("DEPTP2M"); b.Property("Deptp2v") .HasColumnType("real") .HasColumnName("DEPTP2V"); b.Property("Deptrs1m") .HasColumnType("real") .HasColumnName("DEPTRS1M"); b.Property("Deptrs1v") .HasColumnType("real") .HasColumnName("DEPTRS1V"); b.Property("Deptrs2m") .HasColumnType("real") .HasColumnName("DEPTRS2M"); b.Property("Deptrs2v") .HasColumnType("real") .HasColumnName("DEPTRS2V"); b.Property("Deptvert") .HasColumnType("real") .HasColumnName("DEPTVERT"); b.Property("Mclp") .HasColumnType("real") .HasColumnName("MCLP"); b.Property("Mfd") .HasColumnType("real") .HasColumnName("MFD"); b.Property("Mffp") .HasColumnType("real") .HasColumnName("MFFP"); b.Property("Mfpp") .HasColumnType("real") .HasColumnName("MFPP"); b.Property("Mfrann") .HasColumnType("real") .HasColumnName("MFRANN"); b.Property("Mfrpipe") .HasColumnType("real") .HasColumnName("MFRPIPE"); b.Property("Mftann") .HasColumnType("real") .HasColumnName("MFTANN"); b.Property("Mftpipe") .HasColumnType("real") .HasColumnName("MFTPIPE"); b.Property("Mg1") .HasColumnType("real") .HasColumnName("MG1"); b.Property("Mg1c") .HasColumnType("real") .HasColumnName("MG1C"); b.Property("Mg2") .HasColumnType("real") .HasColumnName("MG2"); b.Property("Mg2c") .HasColumnType("real") .HasColumnName("MG2C"); b.Property("Mpo1") .HasColumnType("real") .HasColumnName("MPO1"); b.Property("Mpo2") .HasColumnType("real") .HasColumnName("MPO2"); b.Property("Mr1") .HasColumnType("real") .HasColumnName("MR1"); b.Property("Mr1c") .HasColumnType("real") .HasColumnName("MR1C"); b.Property("Mr2") .HasColumnType("real") .HasColumnName("MR2"); b.Property("Mr2c") .HasColumnType("real") .HasColumnName("MR2C"); b.Property("Passnum") .HasColumnType("smallint") .HasColumnName("PASSNUM"); b.Property("Spare1") .HasColumnType("real") .HasColumnName("SPARE1"); b.Property("Spare2") .HasColumnType("real") .HasColumnName("SPARE2"); b.Property("Spare3") .HasColumnType("real") .HasColumnName("SPARE3"); b.Property("Spare4") .HasColumnType("real") .HasColumnName("SPARE4"); b.Property("Spare5") .HasColumnType("real") .HasColumnName("SPARE5"); b.Property("Spare6") .HasColumnType("real") .HasColumnName("SPARE6"); b.Property("Spare7") .HasColumnType("real") .HasColumnName("SPARE7"); b.Property("Spare8") .HasColumnType("real") .HasColumnName("SPARE8"); b.Property("Spare9") .HasColumnType("real") .HasColumnName("SPARE9"); b.Property("TelemetryId") .HasColumnType("integer"); b.HasIndex("TelemetryId"); b.ToTable("t_telemetry_wits_8"); }); modelBuilder.Entity("AsbCloudDb.Model.Cluster", b => { b.HasOne("AsbCloudDb.Model.Deposit", "Deposit") .WithMany("Clusters") .HasForeignKey("IdDeposit") .HasConstraintName("t_cluster_t_deposit_id_fk"); b.Navigation("Deposit"); }); modelBuilder.Entity("AsbCloudDb.Model.Company", b => { b.HasOne("AsbCloudDb.Model.CompanyType", "CompanyType") .WithMany("Companies") .HasForeignKey("IdCompanyType") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("CompanyType"); }); modelBuilder.Entity("AsbCloudDb.Model.DailyReport", b => { b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.DetectedOperation", b => { b.HasOne("AsbCloudDb.Model.WellOperationCategory", "OperationCategory") .WithMany() .HasForeignKey("IdCategory") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OperationCategory"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.DrillFlowChart", b => { b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.DrillingProgramPart", b => { b.HasOne("AsbCloudDb.Model.FileCategory", "FileCategory") .WithMany() .HasForeignKey("IdFileCategory") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany("DrillingProgramParts") .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("FileCategory"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.DrillParams", b => { b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.WellSectionType", "WellSectionType") .WithMany("DrillParamsCollection") .HasForeignKey("IdWellSectionType") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_drill_params_t_well_section_type_id_fk"); b.Navigation("Well"); b.Navigation("WellSectionType"); }); modelBuilder.Entity("AsbCloudDb.Model.FileInfo", b => { b.HasOne("AsbCloudDb.Model.User", "Author") .WithMany("Files") .HasForeignKey("IdAuthor"); b.HasOne("AsbCloudDb.Model.FileCategory", "FileCategory") .WithMany() .HasForeignKey("IdCategory") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Author"); b.Navigation("FileCategory"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.FileMark", b => { b.HasOne("AsbCloudDb.Model.FileInfo", "FileInfo") .WithMany("FileMarks") .HasForeignKey("IdFile") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_file_mark_t_file_info_fk"); b.HasOne("AsbCloudDb.Model.User", "User") .WithMany("FileMarks") .HasForeignKey("IdUser") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_user_t_file_mark_fk"); b.Navigation("FileInfo"); b.Navigation("User"); }); modelBuilder.Entity("AsbCloudDb.Model.Measure", b => { b.HasOne("AsbCloudDb.Model.MeasureCategory", "Category") .WithMany("Measures") .HasForeignKey("IdCategory") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Category"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.RelationCompanyWell", b => { b.HasOne("AsbCloudDb.Model.Company", "Company") .WithMany("RelationCompaniesWells") .HasForeignKey("IdCompany") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_relation_company_well_t_company_id_fk"); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany("RelationCompaniesWells") .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_relation_company_well_t_well_id_fk"); b.Navigation("Company"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.RelationUserDrillingProgramPart", b => { b.HasOne("AsbCloudDb.Model.DrillingProgramPart", "DrillingProgramPart") .WithMany("RelatedUsers") .HasForeignKey("IdDrillingProgramPart") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.User", "User") .WithMany() .HasForeignKey("IdUser") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("DrillingProgramPart"); b.Navigation("User"); }); modelBuilder.Entity("AsbCloudDb.Model.RelationUserRolePermission", b => { b.HasOne("AsbCloudDb.Model.Permission", "Permission") .WithMany("RelationUserRolePermissions") .HasForeignKey("IdPermission") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.UserRole", "UserRole") .WithMany("RelationUserRolePermissions") .HasForeignKey("IdUserRole") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Permission"); b.Navigation("UserRole"); }); modelBuilder.Entity("AsbCloudDb.Model.RelationUserRoleUserRole", b => { b.HasOne("AsbCloudDb.Model.UserRole", "Role") .WithMany("RelationUserRoleUserRoles") .HasForeignKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.UserRole", "IncludeRole") .WithMany() .HasForeignKey("IdInclude") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("IncludeRole"); b.Navigation("Role"); }); modelBuilder.Entity("AsbCloudDb.Model.RelationUserUserRole", b => { b.HasOne("AsbCloudDb.Model.User", "User") .WithMany("RelationUsersUserRoles") .HasForeignKey("IdUser") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.UserRole", "UserRole") .WithMany("RelationUsersUserRoles") .HasForeignKey("IdUserRole") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); b.Navigation("UserRole"); }); modelBuilder.Entity("AsbCloudDb.Model.ReportProperty", b => { b.HasOne("AsbCloudDb.Model.FileInfo", "File") .WithMany() .HasForeignKey("IdFile") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("File"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.Schedule", b => { b.HasOne("AsbCloudDb.Model.Driller", "Driller") .WithMany("Schedule") .HasForeignKey("IdDriller") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_schedule_t_driller_id_driller"); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Driller"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.SetpointsRequest", b => { b.HasOne("AsbCloudDb.Model.User", "Author") .WithMany() .HasForeignKey("IdAuthor") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany() .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Author"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSaub", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany("DataSaub") .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_telemetry_data_saub_t_telemetry_id_fk"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSpin", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany("DataSpin") .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_telemetry_data_spin_t_telemetry_id_fk"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryEvent", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany("Events") .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_event_t_telemetry_id_fk"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryMessage", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany("Messages") .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_messages_t_telemetry_id_fk"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.TelemetryUser", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany("Users") .HasForeignKey("IdTelemetry") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_telemetry_user_t_telemetry_id_fk"); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.User", b => { b.HasOne("AsbCloudDb.Model.Company", "Company") .WithMany("Users") .HasForeignKey("IdCompany") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("t_user_t_company_id_fk"); b.Navigation("Company"); }); modelBuilder.Entity("AsbCloudDb.Model.Well", b => { b.HasOne("AsbCloudDb.Model.Cluster", "Cluster") .WithMany("Wells") .HasForeignKey("IdCluster") .HasConstraintName("t_well_t_cluster_id_fk"); b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithOne("Well") .HasForeignKey("AsbCloudDb.Model.Well", "IdTelemetry") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("t_well_t_telemetry_id_fk"); b.HasOne("AsbCloudDb.Model.WellType", "WellType") .WithMany("Wells") .HasForeignKey("IdWellType"); b.Navigation("Cluster"); b.Navigation("Telemetry"); b.Navigation("WellType"); }); modelBuilder.Entity("AsbCloudDb.Model.WellComposite", b => { b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany("WellComposites") .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_well_сomposite_t_well_id_fk"); b.HasOne("AsbCloudDb.Model.WellSectionType", "WellSectionType") .WithMany("WellComposites") .HasForeignKey("IdWellSectionType") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_well_сomposite_t_well_section_type_id_fk"); b.HasOne("AsbCloudDb.Model.Well", "WellSrc") .WithMany("WellCompositeSrcs") .HasForeignKey("IdWellSrc") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("t_well_сomposite_src_t_well_id_fk"); b.Navigation("Well"); b.Navigation("WellSectionType"); b.Navigation("WellSrc"); }); modelBuilder.Entity("AsbCloudDb.Model.WellOperation", b => { b.HasOne("AsbCloudDb.Model.WellOperationCategory", "OperationCategory") .WithMany() .HasForeignKey("IdCategory") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.Well", "Well") .WithMany("WellOperations") .HasForeignKey("IdWell") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("AsbCloudDb.Model.WellSectionType", "WellSectionType") .WithMany("WellOperations") .HasForeignKey("IdWellSectionType") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("OperationCategory"); b.Navigation("Well"); b.Navigation("WellSectionType"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record1", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record1", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record50", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record50", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record60", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record60", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record61", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record61", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record7", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record7", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.WITS.Record8", b => { b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") .WithMany() .HasForeignKey("TelemetryId"); b.HasOne("AsbCloudDb.Model.WITS.RecordBase", null) .WithOne() .HasForeignKey("AsbCloudDb.Model.WITS.Record8", "IdTelemetry", "DateTime") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Telemetry"); }); modelBuilder.Entity("AsbCloudDb.Model.Cluster", b => { b.Navigation("Wells"); }); modelBuilder.Entity("AsbCloudDb.Model.Company", b => { b.Navigation("RelationCompaniesWells"); b.Navigation("Users"); }); modelBuilder.Entity("AsbCloudDb.Model.CompanyType", b => { b.Navigation("Companies"); }); modelBuilder.Entity("AsbCloudDb.Model.Deposit", b => { b.Navigation("Clusters"); }); modelBuilder.Entity("AsbCloudDb.Model.Driller", b => { b.Navigation("Schedule"); }); modelBuilder.Entity("AsbCloudDb.Model.DrillingProgramPart", b => { b.Navigation("RelatedUsers"); }); modelBuilder.Entity("AsbCloudDb.Model.FileInfo", b => { b.Navigation("FileMarks"); }); modelBuilder.Entity("AsbCloudDb.Model.MeasureCategory", b => { b.Navigation("Measures"); }); modelBuilder.Entity("AsbCloudDb.Model.Permission", b => { b.Navigation("RelationUserRolePermissions"); }); modelBuilder.Entity("AsbCloudDb.Model.Telemetry", b => { b.Navigation("DataSaub"); b.Navigation("DataSpin"); b.Navigation("Events"); b.Navigation("Messages"); b.Navigation("Users"); b.Navigation("Well"); }); modelBuilder.Entity("AsbCloudDb.Model.User", b => { b.Navigation("FileMarks"); b.Navigation("Files"); b.Navigation("RelationUsersUserRoles"); }); modelBuilder.Entity("AsbCloudDb.Model.UserRole", b => { b.Navigation("RelationUserRolePermissions"); b.Navigation("RelationUserRoleUserRoles"); b.Navigation("RelationUsersUserRoles"); }); modelBuilder.Entity("AsbCloudDb.Model.Well", b => { b.Navigation("DrillingProgramParts"); b.Navigation("RelationCompaniesWells"); b.Navigation("WellCompositeSrcs"); b.Navigation("WellComposites"); b.Navigation("WellOperations"); }); modelBuilder.Entity("AsbCloudDb.Model.WellSectionType", b => { b.Navigation("DrillParamsCollection"); b.Navigation("WellComposites"); b.Navigation("WellOperations"); }); modelBuilder.Entity("AsbCloudDb.Model.WellType", b => { b.Navigation("Wells"); }); #pragma warning restore 612, 618 } } }