DD.WellWorkover.Cloud/AsbCloudDb/Migrations/AsbCloudDbContextModelSnapshot.cs
2022-06-15 15:34:47 +05:00

6071 lines
240 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// <auto-generated />
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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption")
.HasComment("Название");
b.Property<int?>("IdDeposit")
.HasColumnType("integer")
.HasColumnName("id_deposit");
b.Property<double?>("Latitude")
.HasColumnType("double precision")
.HasColumnName("latitude");
b.Property<double?>("Longitude")
.HasColumnType("double precision")
.HasColumnName("longitude");
b.Property<SimpleTimezone>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("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<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("ID скважины");
b.Property<DateTimeOffset>("StartDate")
.HasColumnType("timestamp with time zone")
.HasColumnName("start_date")
.HasComment("Дата отчёта");
b.Property<DailyReportInfo>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.Property<double?>("Latitude")
.HasColumnType("double precision")
.HasColumnName("latitude");
b.Property<double?>("Longitude")
.HasColumnType("double precision")
.HasColumnName("longitude");
b.Property<SimpleTimezone>("Timezone")
.HasColumnType("jsonb")
.HasColumnName("timezone")
.HasComment("Смещение часового пояса от UTC");
b.HasKey("Id");
b.ToTable("t_deposit");
b.HasComment("Месторождение");
});
modelBuilder.Entity("AsbCloudDb.Model.DetectedOperation", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<DateTimeOffset>("DateEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_end")
.HasComment("Дата начала операции");
b.Property<DateTimeOffset>("DateStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_start")
.HasComment("Дата начала операции");
b.Property<double>("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина после завершения операции, м");
b.Property<double>("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Глубина на начало операции, м");
b.Property<int>("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("Id категории операции");
b.Property<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<int>("IdUsersAtStart")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("Id пользователя по телеметрии на момент начала операции");
b.Property<double>("Value")
.HasColumnType("double precision")
.HasColumnName("value")
.HasComment("Ключевой показатель операции");
b.HasKey("Id");
b.HasIndex("IdCategory");
b.HasIndex("IdTelemetry");
b.ToTable("t_detected_operation");
b.HasComment("автоматически определенные операции по телеметрии");
});
modelBuilder.Entity("AsbCloudDb.Model.Driller", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name")
.HasComment("Имя");
b.Property<string>("Patronymic")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("patronymic")
.HasComment("Отчество");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<double>("AxialLoadMax")
.HasColumnType("double precision")
.HasColumnName("axial_load_max")
.HasComment("Максимальная нагрузка");
b.Property<double>("AxialLoadMin")
.HasColumnType("double precision")
.HasColumnName("axial_load_min")
.HasComment("Минимальная нагрузка");
b.Property<double>("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина окончания интервала");
b.Property<double>("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Стартовая глубина");
b.Property<double>("FlowMax")
.HasColumnType("double precision")
.HasColumnName("flow_max")
.HasComment("Максимальный расход");
b.Property<double>("FlowMin")
.HasColumnType("double precision")
.HasColumnName("flow_min")
.HasComment("Минимальный расход");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("well_id")
.HasComment("Id скважины");
b.Property<int>("IdWellOperationCategory")
.HasColumnType("integer")
.HasColumnName("id_operation_category")
.HasComment("Id типа операции");
b.Property<DateTimeOffset>("LastUpdate")
.HasColumnType("timestamp with time zone")
.HasColumnName("last_update")
.HasComment("Дата последнего изменения");
b.Property<double>("PressureMax")
.HasColumnType("double precision")
.HasColumnName("pressure_max")
.HasComment("Максимальное давление");
b.Property<double>("PressureMin")
.HasColumnType("double precision")
.HasColumnName("pressure_min")
.HasComment("Минимальное давление");
b.Property<double>("RotorSpeedMax")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_max")
.HasComment("Максимальные обороты на ВСП");
b.Property<double>("RotorSpeedMin")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_min")
.HasComment("Минимальные обороты на ВСП");
b.Property<double>("RotorTorqueMax")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_max")
.HasComment("Максимальный момент на ВСП");
b.Property<double>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<int>("IdFileCategory")
.HasColumnType("integer")
.HasColumnName("id_file_category");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<double>("AxialLoadAvg")
.HasColumnType("double precision")
.HasColumnName("axial_load_avg")
.HasComment("Средняя нагрузка");
b.Property<double>("AxialLoadMax")
.HasColumnType("double precision")
.HasColumnName("axial_load_max")
.HasComment("Максимальная нагрузка");
b.Property<double>("AxialLoadMin")
.HasColumnType("double precision")
.HasColumnName("axial_load_min")
.HasComment("Минимальная нагрузка");
b.Property<double>("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина окончания интервала");
b.Property<double>("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Стартовая глубина");
b.Property<double>("FlowAvg")
.HasColumnType("double precision")
.HasColumnName("flow_avg")
.HasComment("Средний расход");
b.Property<double>("FlowMax")
.HasColumnType("double precision")
.HasColumnName("flow_max")
.HasComment("Максимальный расход");
b.Property<double>("FlowMin")
.HasColumnType("double precision")
.HasColumnName("flow_min")
.HasComment("Минимальный расход");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("well_id")
.HasComment("Id скважины");
b.Property<int>("IdWellSectionType")
.HasColumnType("integer")
.HasColumnName("id_wellsection_type")
.HasComment("Id с типом секции скважины");
b.Property<double>("PressureAvg")
.HasColumnType("double precision")
.HasColumnName("pressure_avg")
.HasComment("Среднее давление");
b.Property<double>("PressureMax")
.HasColumnType("double precision")
.HasColumnName("pressure_max")
.HasComment("Максимальное давление");
b.Property<double>("PressureMin")
.HasColumnType("double precision")
.HasColumnName("pressure_min")
.HasComment("Минимальное давление");
b.Property<double>("RotorSpeedAvg")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_avg")
.HasComment("Средние обороты на ВСП");
b.Property<double>("RotorSpeedMax")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_max")
.HasComment("Максимальные обороты на ВСП");
b.Property<double>("RotorSpeedMin")
.HasColumnType("double precision")
.HasColumnName("rotor_speed_min")
.HasComment("Минимальные обороты на ВСП");
b.Property<double>("RotorTorqueAvg")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_avg")
.HasComment("Средний момент на ВСП");
b.Property<double>("RotorTorqueMax")
.HasColumnType("double precision")
.HasColumnName("rotor_torque_max")
.HasComment("Максимальный момент на ВСП");
b.Property<double>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название категории");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<int?>("IdAuthor")
.HasColumnType("integer")
.HasColumnName("id_author")
.HasComment("Id пользователя, загрузившего файл");
b.Property<int>("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("id категории файла");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property<bool>("IsDeleted")
.HasColumnType("boolean")
.HasColumnName("is_deleted")
.HasComment("Удален ли файл");
b.Property<string>("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название файла");
b.Property<FilePublishInfo>("PublishInfo")
.HasColumnType("jsonb")
.HasColumnName("publish_info")
.HasComment("Информация о файле в облаке");
b.Property<long>("Size")
.HasColumnType("bigint")
.HasColumnName("file_size")
.HasComment("Размер файла");
b.Property<DateTimeOffset>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Comment")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("comment")
.HasComment("Комментарий");
b.Property<DateTimeOffset>("DateCreated")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_created")
.HasComment("Дата совершенного действия");
b.Property<int>("IdFile")
.HasColumnType("integer")
.HasColumnName("id_file")
.HasComment("id файла");
b.Property<int>("IdMarkType")
.HasColumnType("integer")
.HasColumnName("id_mark_type")
.HasComment("0 - отклонен, 1 - согласован");
b.Property<int>("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("id пользователя");
b.Property<bool>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<RawData>("Data")
.HasColumnType("jsonb")
.HasColumnName("data")
.HasComment("Данные таблицы последних данных");
b.Property<int>("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("id категории");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property<bool>("IsDeleted")
.HasColumnType("boolean")
.HasColumnName("is_deleted")
.HasComment("Пометка удаленным");
b.Property<DateTimeOffset>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Name")
.HasColumnType("text")
.HasColumnName("name")
.HasComment("Название категории");
b.Property<string>("ShortName")
.HasColumnType("text")
.HasColumnName("short_name")
.HasComment("Короткое название категории");
b.HasKey("Id");
b.ToTable("t_measure_category");
b.HasComment("Категория последних данных");
b.HasData(
new
{
Id = 1,
Name = "Показатели бурового раствора",
ShortName = "Раствор"
},
new
{
Id = 2,
Name = "Шламограмма",
ShortName = "Шламограмма"
},
new
{
Id = 3,
Name = "ННБ",
ShortName = "ННБ"
});
});
modelBuilder.Entity("AsbCloudDb.Model.OperationValue", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<double>("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Конечная глубина");
b.Property<double>("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Старотовая глубина");
b.Property<int>("IdOperationCategory")
.HasColumnType("integer")
.HasColumnName("id_operation_category")
.HasComment("Ид категории операции");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Ид скважины");
b.Property<double>("StandardValue")
.HasColumnType("double precision")
.HasColumnName("standard_value")
.HasComment("Нормативный показатель");
b.Property<double>("TargetValue")
.HasColumnType("double precision")
.HasColumnName("target_value")
.HasComment("Целевой показатель");
b.HasKey("Id");
b.HasIndex("IdOperationCategory");
b.HasIndex("IdWell");
b.ToTable("t_operationvalue");
b.HasComment("Целевые/нормативные показатели операции");
});
modelBuilder.Entity("AsbCloudDb.Model.Permission", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Description")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("description")
.HasComment("Краткое описание");
b.Property<string>("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"
},
new
{
Id = 380,
Description = "Разрешение просматривать список бурильщиков",
Name = "Driller.get"
},
new
{
Id = 381,
Description = "Разрешение редактировать бурильщика",
Name = "Driller.edit"
},
new
{
Id = 382,
Description = "Разрешение удалять бурильщик",
Name = "Driller.delete"
},
new
{
Id = 383,
Description = "Разрешение просматривать графики бурильщиков",
Name = "Schedule.get"
},
new
{
Id = 384,
Description = "Разрешение редактировать график бурильщика",
Name = "Schedule.edit"
},
new
{
Id = 385,
Description = "Разрешение удалять график бурильщика",
Name = "Schedule.delete"
},
new
{
Id = 386,
Description = "Разрешение просматривать суточный рапорт",
Name = "DailyReport.get"
},
new
{
Id = 387,
Description = "Разрешение редактировать суточный рапорт",
Name = "DailyReport.edit"
},
new
{
Id = 388,
Description = "Разрешение просматривать авто. определенные операции",
Name = "DetectedOperation.get"
},
new
{
Id = 389,
Description = "Разрешение просматривать целевые значения",
Name = "OperationValue.get"
},
new
{
Id = 390,
Description = "Разрешение редактировать целевые значения",
Name = "OperationValue.edit"
},
new
{
Id = 391,
Description = "Разрешение удалять целевые значения",
Name = "OperationValue.delete"
},
new
{
Id = 400,
Description = "Разрешение просматривать инфо по wits параметрам",
Name = "WitsInfo.get"
},
new
{
Id = 401,
Description = "Разрешение просматривать WITS record 1",
Name = "WitsRecord1.get"
},
new
{
Id = 407,
Description = "Разрешение просматривать WITS record 7",
Name = "WitsRecord7.get"
},
new
{
Id = 408,
Description = "Разрешение просматривать WITS record 8",
Name = "WitsRecord8.get"
},
new
{
Id = 450,
Description = "Разрешение просматривать WITS record 50",
Name = "WitsRecord50.get"
},
new
{
Id = 460,
Description = "Разрешение просматривать WITS record 60",
Name = "WitsRecord60.get"
},
new
{
Id = 461,
Description = "Разрешение просматривать WITS record 61",
Name = "WitsRecord61.get"
});
});
modelBuilder.Entity("AsbCloudDb.Model.RelationCompanyWell", b =>
{
b.Property<int>("IdCompany")
.HasColumnType("integer")
.HasColumnName("id_company");
b.Property<int>("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<int>("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user");
b.Property<int>("IdDrillingProgramPart")
.HasColumnType("integer")
.HasColumnName("id_drilling_program_part");
b.Property<int>("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<int>("IdUserRole")
.HasColumnType("integer")
.HasColumnName("id_user_role");
b.Property<int>("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<int>("Id")
.HasColumnType("integer")
.HasColumnName("id_user_role");
b.Property<int>("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<int>("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<DateTimeOffset>("Begin")
.HasColumnType("timestamp with time zone")
.HasColumnName("begin");
b.Property<DateTimeOffset>("End")
.HasColumnType("timestamp with time zone")
.HasColumnName("end")
.HasComment("timestamp with time zone");
b.Property<int>("Format")
.HasColumnType("integer")
.HasColumnName("format")
.HasComment("Формат отчета");
b.Property<int>("IdFile")
.HasColumnType("integer")
.HasColumnName("id_file")
.HasComment("id файла-родителя");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id")
.HasComment("Идентификатор");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<DateTimeOffset>("DrillEnd")
.HasColumnType("timestamp with time zone")
.HasColumnName("drill_end")
.HasComment("Конец вахты");
b.Property<DateTimeOffset>("DrillStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("drill_start")
.HasComment("Начало вахты");
b.Property<int>("IdDriller")
.HasColumnType("integer")
.HasColumnName("id_driller")
.HasComment("Идентификатор бурильщика");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Идентификатор скважины");
b.Property<TimeOnly>("ShiftEnd")
.HasColumnType("time without time zone")
.HasColumnName("shift_end")
.HasComment("Конец смены");
b.Property<TimeOnly>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Comment")
.HasColumnType("text")
.HasColumnName("comment")
.HasComment("комментарий для оператора");
b.Property<int>("IdAuthor")
.HasColumnType("integer")
.HasColumnName("id_author")
.HasComment("Id пользователя, загрузившего файл");
b.Property<int>("IdState")
.HasColumnType("integer")
.HasColumnName("id_state")
.HasComment("0: неизвестно, 1:ожидает отправки, 2: отправлено, 3: принято оператором, 4: отклонено оператором, 5: устарело");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("id скважины");
b.Property<int>("ObsolescenceSec")
.HasColumnType("integer")
.HasColumnName("obsolescence")
.HasComment("сек. до устаревания");
b.Property<Dictionary<string, double>>("Setpoints")
.HasColumnType("jsonb")
.HasColumnName("setpoint_set")
.HasComment("Набор уставок");
b.Property<DateTimeOffset>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<TelemetryInfo>("Info")
.HasColumnType("jsonb")
.HasColumnName("info")
.HasComment("Информация с панели о скважине");
b.Property<string>("RemoteUid")
.HasColumnType("text")
.HasColumnName("remote_uid")
.HasComment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
b.Property<SimpleTimezone>("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<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<DateTimeOffset>("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date")
.HasComment("'2021-10-19 18:23:54+05'");
b.Property<float?>("AxialLoad")
.HasColumnType("real")
.HasColumnName("axial_load")
.HasComment("Осевая нагрузка");
b.Property<float?>("AxialLoadLimitMax")
.HasColumnType("real")
.HasColumnName("axial_load_limit_max")
.HasComment("Осевая нагрузка. Аварийная макс.");
b.Property<float?>("AxialLoadSp")
.HasColumnType("real")
.HasColumnName("axial_load_sp")
.HasComment("Осевая нагрузка. Задание");
b.Property<float?>("BitDepth")
.HasColumnType("real")
.HasColumnName("bit_depth")
.HasComment("Положение инструмента");
b.Property<float?>("BlockPosition")
.HasColumnType("real")
.HasColumnName("block_position")
.HasComment("Высота талевого блока");
b.Property<float?>("BlockPositionMax")
.HasColumnType("real")
.HasColumnName("block_position_max")
.HasComment("Талевый блок. Макс положение");
b.Property<float?>("BlockPositionMin")
.HasColumnType("real")
.HasColumnName("block_position_min")
.HasComment("Талевый блок. Мин положение");
b.Property<float?>("BlockSpeed")
.HasColumnType("real")
.HasColumnName("block_speed")
.HasComment("Скорость талевого блока");
b.Property<float?>("BlockSpeedSp")
.HasColumnType("real")
.HasColumnName("block_speed_sp")
.HasComment("Скорости талевого блока. Задание");
b.Property<float?>("BlockSpeedSpDevelop")
.HasColumnType("real")
.HasColumnName("block_speed_sp_develop")
.HasComment("Талевый блок. Задание скорости для проработки");
b.Property<float?>("BlockSpeedSpRotor")
.HasColumnType("real")
.HasColumnName("block_speed_sp_rotor")
.HasComment("Талевый блок. Задание скорости для роторного бурения");
b.Property<float?>("BlockSpeedSpSlide")
.HasColumnType("real")
.HasColumnName("block_speed_sp_slide")
.HasComment("Талевый блок. Задание скорости для режима слайда");
b.Property<float?>("Flow")
.HasColumnType("real")
.HasColumnName("flow")
.HasComment("Расход");
b.Property<float?>("FlowDeltaLimitMax")
.HasColumnType("real")
.HasColumnName("flow_delta_limit_max")
.HasComment("Расход. Аварийный макс.");
b.Property<float?>("FlowIdle")
.HasColumnType("real")
.HasColumnName("flow_idle")
.HasComment("Расход. Холостой ход");
b.Property<float?>("HookWeight")
.HasColumnType("real")
.HasColumnName("hook_weight")
.HasComment("Вес на крюке");
b.Property<float?>("HookWeightIdle")
.HasColumnType("real")
.HasColumnName("hook_weight_idle")
.HasComment("Вес на крюке. Холостой ход");
b.Property<float?>("HookWeightLimitMax")
.HasColumnType("real")
.HasColumnName("hook_weight_limit_max")
.HasComment("Вес на крюке. Затяжка");
b.Property<float?>("HookWeightLimitMin")
.HasColumnType("real")
.HasColumnName("hook_weight_limit_min")
.HasComment("Вес на крюке. Посадка");
b.Property<short?>("IdFeedRegulator")
.HasColumnType("smallint")
.HasColumnName("id_feed_regulator")
.HasComment("Текущий критерий бурения");
b.Property<int?>("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user")
.HasComment("Пользователь САУБ");
b.Property<short?>("Mode")
.HasColumnType("smallint")
.HasColumnName("mode")
.HasComment("Режим САУБ");
b.Property<float?>("Mse")
.HasColumnType("real")
.HasColumnName("mse")
.HasComment("MSE");
b.Property<short?>("MseState")
.HasColumnType("smallint")
.HasColumnName("mse_state")
.HasComment("Текущее состояние работы MSE");
b.Property<float?>("Pressure")
.HasColumnType("real")
.HasColumnName("pressure")
.HasComment("Давление");
b.Property<float?>("PressureDeltaLimitMax")
.HasColumnType("real")
.HasColumnName("pressure_delta_limit_max")
.HasComment("Давление дифф. Аварийное макс.");
b.Property<float?>("PressureIdle")
.HasColumnType("real")
.HasColumnName("pressure_idle")
.HasComment("Давление. Холостой ход");
b.Property<float?>("PressureSp")
.HasColumnType("real")
.HasColumnName("pressure_sp")
.HasComment("Давление. Задание");
b.Property<float?>("PressureSpDevelop")
.HasColumnType("real")
.HasColumnName("pressure_sp_develop")
.HasComment("Давление. Задание для проработки");
b.Property<float?>("PressureSpRotor")
.HasColumnType("real")
.HasColumnName("pressure_sp_rotor")
.HasComment("Давление. Задание для роторного бурения");
b.Property<float?>("PressureSpSlide")
.HasColumnType("real")
.HasColumnName("pressure_sp_slide")
.HasComment("Давление. Задание для режима слайда");
b.Property<float?>("RotorSpeed")
.HasColumnType("real")
.HasColumnName("rotor_speed")
.HasComment("Обороты ротора");
b.Property<float?>("RotorTorque")
.HasColumnType("real")
.HasColumnName("rotor_torque")
.HasComment("Момент на роторе");
b.Property<float?>("RotorTorqueIdle")
.HasColumnType("real")
.HasColumnName("rotor_torque_idle")
.HasComment("Момент на роторе. Холостой ход");
b.Property<float?>("RotorTorqueLimitMax")
.HasColumnType("real")
.HasColumnName("rotor_torque_limit_max")
.HasComment("Момент на роторе. Аварийный макс.");
b.Property<float?>("RotorTorqueSp")
.HasColumnType("real")
.HasColumnName("rotor_torque_sp")
.HasComment("Момент на роторе. Задание");
b.Property<float?>("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<long?>("Count")
.HasColumnType("bigint")
.HasColumnName("count_items");
b.Property<DateTimeOffset?>("DateMax")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_max");
b.Property<DateTimeOffset?>("DateMin")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_min");
b.Property<float?>("DepthMax")
.HasColumnType("real")
.HasColumnName("depth_max");
b.Property<float?>("DepthMin")
.HasColumnType("real")
.HasColumnName("depth_min");
b.Property<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.ToView("mw_telemetry_datas_saub_stat");
});
modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSpin", b =>
{
b.Property<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<DateTimeOffset>("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date")
.HasComment("'2021-10-19 18:23:54+05'");
b.Property<float?>("BreakAngleK")
.HasColumnType("real")
.HasColumnName("break_angle_k")
.HasComment("Коэффициент для расчёта за какой угол нужно тормозить");
b.Property<float?>("BreakAngleLeft")
.HasColumnType("real")
.HasColumnName("break_angle_left")
.HasComment("Угол торможения влево при работе по моменту");
b.Property<float?>("EncoderResolution")
.HasColumnType("real")
.HasColumnName("encoder_resolution")
.HasComment("Разрешение энкодера");
b.Property<short?>("Mode")
.HasColumnType("smallint")
.HasColumnName("mode")
.HasComment("Выбранный режим управления");
b.Property<float?>("PidMuxTorqueLeftLimit")
.HasColumnType("real")
.HasColumnName("pid_mux_torque_left_limit")
.HasComment(" Момент при котором определяется ехать назад по моменту или по скорости");
b.Property<float?>("PositionRight")
.HasColumnType("real")
.HasColumnName("position_right")
.HasComment("Крайний правый угол осцилляции");
b.Property<float?>("PositionZero")
.HasColumnType("real")
.HasColumnName("position_zero")
.HasComment("Нулевая позиция осцилляции");
b.Property<float?>("Ratio")
.HasColumnType("real")
.HasColumnName("ratio")
.HasComment(" Коэффициент редукции редуктора");
b.Property<float?>("ReverseKTorque")
.HasColumnType("real")
.HasColumnName("reverse_k_torque")
.HasComment("Коэффициент на который умножается момент, для того чтобы система поняла что мы движемся в обратную сторону");
b.Property<short?>("ReverseSpeedSpZeroTime")
.HasColumnType("smallint")
.HasColumnName("reverse_speed_sp_zero_time")
.HasComment("Время выдачи сигнала нулевой скорости на при смене направления");
b.Property<float?>("RevolsLeftLimit")
.HasColumnType("real")
.HasColumnName("revols_left_limit")
.HasComment("Ограничение числа оборотов влево");
b.Property<float?>("RevolsLeftTotal")
.HasColumnType("real")
.HasColumnName("revols_left_total")
.HasComment("Суммарное количество оборотов влево");
b.Property<float?>("RevolsRightLimit")
.HasColumnType("real")
.HasColumnName("revols_right_limit")
.HasComment("Ограничение числа оборотов вправо");
b.Property<float?>("RevolsRightTotal")
.HasColumnType("real")
.HasColumnName("revols_right_total")
.HasComment("Суммарное количество оборотов вправо");
b.Property<float?>("RotorTorqueAvg")
.HasColumnType("real")
.HasColumnName("rotor_torque_avg")
.HasComment("Момент в роторе средний");
b.Property<float?>("SpeedLeftSp")
.HasColumnType("real")
.HasColumnName("speed_left_sp")
.HasComment("Заданная скорость вращения влево");
b.Property<float?>("SpeedRightSp")
.HasColumnType("real")
.HasColumnName("speed_right_sp")
.HasComment("Заданная скорость вращения вправо");
b.Property<short?>("State")
.HasColumnType("smallint")
.HasColumnName("state")
.HasComment("Переменная этапа");
b.Property<float?>("TopDriveSpeed")
.HasColumnType("real")
.HasColumnName("top_drive_speed")
.HasComment("Скорость СВП");
b.Property<short?>("TopDriveSpeedErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_speed_err");
b.Property<float?>("TopDriveSpeedMax")
.HasColumnType("real")
.HasColumnName("top_drive_speed_max")
.HasComment("верхний предел");
b.Property<float?>("TopDriveSpeedMin")
.HasColumnType("real")
.HasColumnName("top_drive_speed_min")
.HasComment("нижний предел");
b.Property<float?>("TopDriveSpeedOffset")
.HasColumnType("real")
.HasColumnName("top_drive_speed_offset")
.HasComment("смещение");
b.Property<float?>("TopDriveSpeedSpFrom")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_from")
.HasComment("Заданная скорость c СВП");
b.Property<short?>("TopDriveSpeedSpFromErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_speed_sp_from_err");
b.Property<float?>("TopDriveSpeedSpFromMax")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_from_max");
b.Property<float?>("TopDriveSpeedSpFromMin")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_from_min");
b.Property<float?>("TopDriveSpeedSpFromOffset")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_from_offset");
b.Property<float?>("TopDriveSpeedSpTo")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_to")
.HasComment("Задание скорости на СВП");
b.Property<short?>("TopDriveSpeedSpToErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_speed_sp_to_err");
b.Property<float?>("TopDriveSpeedSpToMax")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_to_max");
b.Property<float?>("TopDriveSpeedSpToMin")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_to_min");
b.Property<float?>("TopDriveSpeedSpToOffset")
.HasColumnType("real")
.HasColumnName("top_drive_speed_sp_to_offset");
b.Property<float?>("TopDriveTorque")
.HasColumnType("real")
.HasColumnName("top_drive_torque")
.HasComment("Момент СВП");
b.Property<short?>("TopDriveTorqueErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_torque_err");
b.Property<float?>("TopDriveTorqueMax")
.HasColumnType("real")
.HasColumnName("top_drive_torque_max");
b.Property<float?>("TopDriveTorqueMin")
.HasColumnType("real")
.HasColumnName("top_drive_torque_min");
b.Property<float?>("TopDriveTorqueOffset")
.HasColumnType("real")
.HasColumnName("top_drive_torque_offset");
b.Property<float?>("TopDriveTorqueSpFrom")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_from")
.HasComment("Заданный момент c СВП");
b.Property<short?>("TopDriveTorqueSpFromErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_torque_sp_from_err");
b.Property<float?>("TopDriveTorqueSpFromMax")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_from_max");
b.Property<float?>("TopDriveTorqueSpFromMin")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_from_min");
b.Property<float?>("TopDriveTorqueSpFromOffset")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_from_offset");
b.Property<float?>("TopDriveTorqueSpTo")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_to")
.HasComment("Задание момента на СВП");
b.Property<short?>("TopDriveTorqueSpToErr")
.HasColumnType("smallint")
.HasColumnName("top_drive_torque_sp_to_err");
b.Property<float?>("TopDriveTorqueSpToMax")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_to_max");
b.Property<float?>("TopDriveTorqueSpToMin")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_to_min");
b.Property<float?>("TopDriveTorqueSpToOffset")
.HasColumnType("real")
.HasColumnName("top_drive_torque_sp_to_offset");
b.Property<float?>("TorqueLeftLimit")
.HasColumnType("real")
.HasColumnName("torque_left_limit")
.HasComment("Ограничение крутящего момента влево");
b.Property<float?>("TorqueRampTime")
.HasColumnType("real")
.HasColumnName("torque_ramp_time")
.HasComment("Время нарастания момента");
b.Property<float?>("TorqueRightLimit")
.HasColumnType("real")
.HasColumnName("torque_right_limit")
.HasComment("Ограничение крутящего момента вправо");
b.Property<float?>("TorqueStarting")
.HasColumnType("real")
.HasColumnName("torque_starting")
.HasComment("Страгивающий момент");
b.Property<float?>("TurnLeftOnceByAngle")
.HasColumnType("real")
.HasColumnName("turn_left_once_by_angle")
.HasComment("Доворот по градусам единожды влево");
b.Property<float?>("TurnLeftOnceByRevols")
.HasColumnType("real")
.HasColumnName("turn_left_once_by_revols")
.HasComment("Доворот по оборотам единожды влево");
b.Property<float?>("TurnLeftOnceByTorque")
.HasColumnType("real")
.HasColumnName("turn_left_once_by_torque")
.HasComment("Доворот по моменту единожды влево");
b.Property<float?>("TurnRightOnceByAngle")
.HasColumnType("real")
.HasColumnName("turn_right_once_by_angle")
.HasComment("Доворот по градусам единожды вправо");
b.Property<float?>("TurnRightOnceByRevols")
.HasColumnType("real")
.HasColumnName("turn_right_once_by_revols")
.HasComment("Доворот по оборотам единожды вправо");
b.Property<float?>("TurnRightOnceByTorque")
.HasColumnType("real")
.HasColumnName("turn_right_once_by_torque")
.HasComment("Доворот по моменту единожды вправо");
b.Property<float?>("UnlockBySectorOut")
.HasColumnType("real")
.HasColumnName("unlock_by_sector_out")
.HasComment(" Градус отклонения от сектора для автоматического сброса блокировки");
b.Property<float?>("Ver")
.HasColumnType("real")
.HasColumnName("ver")
.HasComment("Версия ПО ПЛК");
b.Property<short?>("W2800")
.HasColumnType("smallint")
.HasColumnName("w2800")
.HasComment("Установка нуля энкодера");
b.Property<short?>("W2808")
.HasColumnType("smallint")
.HasColumnName("w2808")
.HasComment("Неисправность энкодера");
b.Property<short?>("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<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<int>("IdEvent")
.HasColumnType("integer")
.HasColumnName("id_event");
b.Property<int>("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Arg0")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg0")
.HasComment("Аргумент №0 для вставки в шаблон сообщения");
b.Property<string>("Arg1")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg1");
b.Property<string>("Arg2")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg2");
b.Property<string>("Arg3")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("arg3");
b.Property<DateTimeOffset>("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date");
b.Property<int>("IdEvent")
.HasColumnType("integer")
.HasColumnName("id_event");
b.Property<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<int?>("IdTelemetryUser")
.HasColumnType("integer")
.HasColumnName("id_telemetry_user")
.HasComment("Пользователь панели отправляющей телеметрию. не пользователь облака.");
b.Property<double>("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<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<int>("IdUser")
.HasColumnType("integer")
.HasColumnName("id_user");
b.Property<int?>("Level")
.HasColumnType("integer")
.HasColumnName("level");
b.Property<string>("Name")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name");
b.Property<string>("Patronymic")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("patronymic");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Email")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("email")
.HasComment("должность");
b.Property<int?>("IdCompany")
.HasColumnType("integer")
.HasColumnName("id_company");
b.Property<short?>("IdState")
.HasColumnType("smallint")
.HasColumnName("state")
.HasComment("состояние:\n100 - удален");
b.Property<string>("Login")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("login");
b.Property<string>("Name")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("name")
.HasComment("имя");
b.Property<string>("PasswordHash")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("password_hash")
.HasComment("соленый хэш пароля.\nпервые 5 символов - соль");
b.Property<string>("Patronymic")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("patronymic")
.HasComment("отчество");
b.Property<string>("Phone")
.HasMaxLength(50)
.HasColumnType("character varying(50)")
.HasColumnName("phone")
.HasComment("номер телефона");
b.Property<string>("Position")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("position")
.HasComment("email");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption")
.HasComment("Название");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("Caption")
.HasMaxLength(255)
.HasColumnType("character varying(255)")
.HasColumnName("caption");
b.Property<int?>("IdCluster")
.HasColumnType("integer")
.HasColumnName("id_cluster");
b.Property<int>("IdState")
.HasColumnType("integer")
.HasColumnName("state")
.HasComment("0 - неизвестно, 1 - в работе, 2 - завершена");
b.Property<int?>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<int?>("IdWellType")
.HasColumnType("integer")
.HasColumnName("id_well_type");
b.Property<double?>("Latitude")
.HasColumnType("double precision")
.HasColumnName("latitude");
b.Property<double?>("Longitude")
.HasColumnType("double precision")
.HasColumnName("longitude");
b.Property<SimpleTimezone>("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<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Id скважины получателя");
b.Property<int>("IdWellSrc")
.HasColumnType("integer")
.HasColumnName("id_well_src")
.HasComment("Id скважины композита");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("CategoryInfo")
.HasColumnType("text")
.HasColumnName("category_info")
.HasComment("Доп. информация к выбраной категории");
b.Property<string>("Comment")
.HasColumnType("text")
.HasColumnName("comment")
.HasComment("Комментарий");
b.Property<DateTimeOffset>("DateStart")
.HasColumnType("timestamp with time zone")
.HasColumnName("date_start")
.HasComment("Дата начала операции");
b.Property<double>("DepthEnd")
.HasColumnType("double precision")
.HasColumnName("depth_end")
.HasComment("Глубина после завершения операции, м");
b.Property<double>("DepthStart")
.HasColumnType("double precision")
.HasColumnName("depth_start")
.HasComment("Глубина на начало операции, м");
b.Property<double>("DurationHours")
.HasColumnType("double precision")
.HasColumnName("duration_hours")
.HasComment("Продолжительность, часы");
b.Property<int>("IdCategory")
.HasColumnType("integer")
.HasColumnName("id_category")
.HasComment("Id категории операции");
b.Property<int>("IdType")
.HasColumnType("integer")
.HasColumnName("id_type")
.HasComment("0 = План или 1 = Факт");
b.Property<int>("IdWell")
.HasColumnType("integer")
.HasColumnName("id_well")
.HasComment("Id скважины");
b.Property<int>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<int>("Code")
.HasColumnType("integer")
.HasColumnName("code")
.HasComment("Код операции");
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("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<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("integer")
.HasColumnName("id");
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
b.Property<string>("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<int>("IdTelemetry")
.HasColumnType("integer")
.HasColumnName("id_telemetry");
b.Property<DateTimeOffset>("DateTime")
.HasColumnType("timestamp with time zone")
.HasColumnName("date");
b.Property<short?>("Actcod")
.HasColumnType("smallint")
.HasColumnName("ACTCOD");
b.Property<int?>("Date")
.HasColumnType("integer")
.HasColumnName("DATE");
b.Property<short?>("Recid")
.HasColumnType("smallint")
.HasColumnName("RECID");
b.Property<int?>("Seqid")
.HasColumnType("integer")
.HasColumnName("SEQID");
b.Property<short?>("Stknum")
.HasColumnType("smallint")
.HasColumnName("STKNUM");
b.Property<int?>("Time")
.HasColumnType("integer")
.HasColumnName("TIME");
b.Property<string>("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<float?>("Blkpos")
.HasColumnType("real")
.HasColumnName("BLKPOS");
b.Property<float?>("Chkp")
.HasColumnType("real")
.HasColumnName("CHKP");
b.Property<float?>("Deptbitm")
.HasColumnType("real")
.HasColumnName("DEPTBITM");
b.Property<float?>("Deptbitv")
.HasColumnType("real")
.HasColumnName("DEPTBITV");
b.Property<float?>("Deptmeas")
.HasColumnType("real")
.HasColumnName("DEPTMEAS");
b.Property<float?>("Deptretm")
.HasColumnType("real")
.HasColumnName("DEPTRETM");
b.Property<float?>("Deptvert")
.HasColumnType("real")
.HasColumnName("DEPTVERT");
b.Property<float?>("Gasa")
.HasColumnType("real")
.HasColumnName("GASA");
b.Property<float?>("Hkla")
.HasColumnType("real")
.HasColumnName("HKLA");
b.Property<float?>("Hklx")
.HasColumnType("real")
.HasColumnName("HKLX");
b.Property<short?>("Lagstks")
.HasColumnType("smallint")
.HasColumnName("LAGSTKS");
b.Property<float?>("Mcia")
.HasColumnType("real")
.HasColumnName("MCIA");
b.Property<float?>("Mcoa")
.HasColumnType("real")
.HasColumnName("MCOA");
b.Property<float?>("Mdia")
.HasColumnType("real")
.HasColumnName("MDIA");
b.Property<float?>("Mdoa")
.HasColumnType("real")
.HasColumnName("MDOA");
b.Property<float?>("Mfia")
.HasColumnType("real")
.HasColumnName("MFIA");
b.Property<float?>("Mfoa")
.HasColumnType("real")
.HasColumnName("MFOA");
b.Property<short?>("Mfop")
.HasColumnType("smallint")
.HasColumnName("MFOP");
b.Property<float?>("Mtia")
.HasColumnType("real")
.HasColumnName("MTIA");
b.Property<float?>("Mtoa")
.HasColumnType("real")
.HasColumnName("MTOA");
b.Property<float?>("Ropa")
.HasColumnType("real")
.HasColumnName("ROPA");
b.Property<short?>("Rpma")
.HasColumnType("smallint")
.HasColumnName("RPMA");
b.Property<float?>("Spare1")
.HasColumnType("real")
.HasColumnName("SPARE1");
b.Property<float?>("Spare2")
.HasColumnType("real")
.HasColumnName("SPARE2");
b.Property<float?>("Spare3")
.HasColumnType("real")
.HasColumnName("SPARE3");
b.Property<float?>("Spare4")
.HasColumnType("real")
.HasColumnName("SPARE4");
b.Property<float?>("Spare5")
.HasColumnType("real")
.HasColumnName("SPARE5");
b.Property<short?>("Spm1")
.HasColumnType("smallint")
.HasColumnName("SPM1");
b.Property<short?>("Spm2")
.HasColumnType("smallint")
.HasColumnName("SPM2");
b.Property<short?>("Spm3")
.HasColumnType("smallint")
.HasColumnName("SPM3");
b.Property<float?>("Sppa")
.HasColumnType("real")
.HasColumnName("SPPA");
b.Property<int?>("Stkc")
.HasColumnType("integer")
.HasColumnName("STKC");
b.Property<int?>("TelemetryId")
.HasColumnType("integer");
b.Property<float?>("Torqa")
.HasColumnType("real")
.HasColumnName("TORQA");
b.Property<float?>("Torqx")
.HasColumnType("real")
.HasColumnName("TORQX");
b.Property<float?>("Tvolact")
.HasColumnType("real")
.HasColumnName("TVOLACT");
b.Property<float?>("Tvolcact")
.HasColumnType("real")
.HasColumnName("TVOLCACT");
b.Property<float?>("Woba")
.HasColumnType("real")
.HasColumnName("WOBA");
b.Property<float?>("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<float?>("Deptbitm")
.HasColumnType("real")
.HasColumnName("DEPTBITM");
b.Property<float?>("DeptmeasGdpMc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_GDP_mc");
b.Property<float?>("DeptmeasMcrstat")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_MCRSTAT");
b.Property<float?>("DeptmeasRa33Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RA33_mc");
b.Property<float?>("DeptmeasRa33f2Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RA33F2_mc");
b.Property<float?>("DeptmeasRa33f4Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RA33F4_mc");
b.Property<float?>("DeptmeasRp33Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RP33_mc");
b.Property<float?>("DeptmeasRp33f2Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RP33F2_mc");
b.Property<float?>("DeptmeasRp33f4Mc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_RP33F4_mc");
b.Property<float?>("DeptmeasSlvlMc")
.HasColumnType("real")
.HasColumnName("DEPTMEAS_SLVL_mc");
b.Property<float?>("GdpMc")
.HasColumnType("real")
.HasColumnName("GDP_mc");
b.Property<float?>("Mcrstat")
.HasColumnType("real")
.HasColumnName("MCRSTAT");
b.Property<float?>("Ra33Mc")
.HasColumnType("real")
.HasColumnName("RA33_mc");
b.Property<float?>("Ra33f2Mc")
.HasColumnType("real")
.HasColumnName("RA33F2_mc");
b.Property<float?>("Ra33f4Mc")
.HasColumnType("real")
.HasColumnName("RA33F4_mc");
b.Property<float?>("Rp33Mc")
.HasColumnType("real")
.HasColumnName("RP33_mc");
b.Property<float?>("Rp33f2Mc")
.HasColumnType("real")
.HasColumnName("RP33F2_mc");
b.Property<float?>("Rp33f4Mc")
.HasColumnType("real")
.HasColumnName("RP33F4_mc");
b.Property<float?>("SlvlMc")
.HasColumnType("real")
.HasColumnName("SLVL_mc");
b.Property<int?>("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<float?>("Btot")
.HasColumnType("real")
.HasColumnName("Btot");
b.Property<float?>("Bx")
.HasColumnType("real")
.HasColumnName("Bx");
b.Property<float?>("By")
.HasColumnType("real")
.HasColumnName("By");
b.Property<float?>("Bz")
.HasColumnType("real")
.HasColumnName("Bz");
b.Property<float?>("Deptbitm")
.HasColumnType("real")
.HasColumnName("DEPTBITM");
b.Property<float?>("Deptmeas")
.HasColumnType("real")
.HasColumnName("DEPTMEAS");
b.Property<float?>("Gtot")
.HasColumnType("real")
.HasColumnName("Gtot");
b.Property<float?>("Gx")
.HasColumnType("real")
.HasColumnName("Gx");
b.Property<float?>("Gy")
.HasColumnType("real")
.HasColumnName("Gy");
b.Property<float?>("Gz")
.HasColumnType("real")
.HasColumnName("Gz");
b.Property<int?>("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<float?>("Att06h")
.HasColumnType("real")
.HasColumnName("ATT06H");
b.Property<float?>("Att06l")
.HasColumnType("real")
.HasColumnName("ATT06L");
b.Property<float?>("Att10h")
.HasColumnType("real")
.HasColumnName("ATT10H");
b.Property<float?>("Att10l")
.HasColumnType("real")
.HasColumnName("ATT10L");
b.Property<float?>("Deptbitm")
.HasColumnType("real")
.HasColumnName("DEPTBITM");
b.Property<float?>("Deptmeas")
.HasColumnType("real")
.HasColumnName("DEPTMEAS");
b.Property<float?>("Phl1f1")
.HasColumnType("real")
.HasColumnName("PHL1F1");
b.Property<float?>("Phl1f2")
.HasColumnType("real")
.HasColumnName("PHL1F2");
b.Property<float?>("Phl2f1")
.HasColumnType("real")
.HasColumnName("PHL2F1");
b.Property<float?>("Phl2f2")
.HasColumnType("real")
.HasColumnName("PHL2F2");
b.Property<float?>("Status")
.HasColumnType("real")
.HasColumnName("Status");
b.Property<int?>("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<float?>("Deptmeas")
.HasColumnType("real")
.HasColumnName("DEPTMEAS");
b.Property<float?>("Deptsvym")
.HasColumnType("real")
.HasColumnName("DEPTSVYM");
b.Property<float?>("Deptsvyv")
.HasColumnType("real")
.HasColumnName("DEPTSVYV");
b.Property<short?>("Passnum")
.HasColumnType("smallint")
.HasColumnName("PASSNUM");
b.Property<float?>("Spare1")
.HasColumnType("real")
.HasColumnName("SPARE1");
b.Property<float?>("Spare2")
.HasColumnType("real")
.HasColumnName("SPARE2");
b.Property<float?>("Spare3")
.HasColumnType("real")
.HasColumnName("SPARE3");
b.Property<float?>("Spare4")
.HasColumnType("real")
.HasColumnName("SPARE4");
b.Property<float?>("Spare5")
.HasColumnType("real")
.HasColumnName("SPARE5");
b.Property<float?>("Svyazc")
.HasColumnType("real")
.HasColumnName("SVYAZC");
b.Property<float?>("Svyazu")
.HasColumnType("real")
.HasColumnName("SVYAZU");
b.Property<float?>("Svydls")
.HasColumnType("real")
.HasColumnName("SVYDLS");
b.Property<float?>("Svyew")
.HasColumnType("real")
.HasColumnName("SVYEW");
b.Property<float?>("Svygtf")
.HasColumnType("real")
.HasColumnName("SVYGTF");
b.Property<float?>("Svyinc")
.HasColumnType("real")
.HasColumnName("SVYINC");
b.Property<float?>("Svymtf")
.HasColumnType("real")
.HasColumnName("SVYMTF");
b.Property<float?>("Svyns")
.HasColumnType("real")
.HasColumnName("SVYNS");
b.Property<string>("Svytype")
.HasColumnType("text")
.HasColumnName("SVYTYPE");
b.Property<float?>("Svywalk")
.HasColumnType("real")
.HasColumnName("SVYWALK");
b.Property<int?>("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<float?>("Deptbitm")
.HasColumnType("real")
.HasColumnName("DEPTBITM");
b.Property<float?>("Deptbitv")
.HasColumnType("real")
.HasColumnName("DEPTBITV");
b.Property<float?>("Deptcalm")
.HasColumnType("real")
.HasColumnName("DEPTCALM");
b.Property<float?>("Deptcalv")
.HasColumnType("real")
.HasColumnName("DEPTCALV");
b.Property<float?>("Deptfdm")
.HasColumnType("real")
.HasColumnName("DEPTFDM");
b.Property<float?>("Deptfdv")
.HasColumnType("real")
.HasColumnName("DEPTFDV");
b.Property<float?>("Deptgr1m")
.HasColumnType("real")
.HasColumnName("DEPTGR1M");
b.Property<float?>("Deptgr1v")
.HasColumnType("real")
.HasColumnName("DEPTGR1V");
b.Property<float?>("Deptgr2m")
.HasColumnType("real")
.HasColumnName("DEPTGR2M");
b.Property<float?>("Deptgr2v")
.HasColumnType("real")
.HasColumnName("DEPTGR2V");
b.Property<float?>("Deptmeas")
.HasColumnType("real")
.HasColumnName("DEPTMEAS");
b.Property<float?>("Deptp1m")
.HasColumnType("real")
.HasColumnName("DEPTP1M");
b.Property<float?>("Deptp1v")
.HasColumnType("real")
.HasColumnName("DEPTP1V");
b.Property<float?>("Deptp2m")
.HasColumnType("real")
.HasColumnName("DEPTP2M");
b.Property<float?>("Deptp2v")
.HasColumnType("real")
.HasColumnName("DEPTP2V");
b.Property<float?>("Deptrs1m")
.HasColumnType("real")
.HasColumnName("DEPTRS1M");
b.Property<float?>("Deptrs1v")
.HasColumnType("real")
.HasColumnName("DEPTRS1V");
b.Property<float?>("Deptrs2m")
.HasColumnType("real")
.HasColumnName("DEPTRS2M");
b.Property<float?>("Deptrs2v")
.HasColumnType("real")
.HasColumnName("DEPTRS2V");
b.Property<float?>("Deptvert")
.HasColumnType("real")
.HasColumnName("DEPTVERT");
b.Property<float?>("Mclp")
.HasColumnType("real")
.HasColumnName("MCLP");
b.Property<float?>("Mfd")
.HasColumnType("real")
.HasColumnName("MFD");
b.Property<float?>("Mffp")
.HasColumnType("real")
.HasColumnName("MFFP");
b.Property<float?>("Mfpp")
.HasColumnType("real")
.HasColumnName("MFPP");
b.Property<float?>("Mfrann")
.HasColumnType("real")
.HasColumnName("MFRANN");
b.Property<float?>("Mfrpipe")
.HasColumnType("real")
.HasColumnName("MFRPIPE");
b.Property<float?>("Mftann")
.HasColumnType("real")
.HasColumnName("MFTANN");
b.Property<float?>("Mftpipe")
.HasColumnType("real")
.HasColumnName("MFTPIPE");
b.Property<float?>("Mg1")
.HasColumnType("real")
.HasColumnName("MG1");
b.Property<float?>("Mg1c")
.HasColumnType("real")
.HasColumnName("MG1C");
b.Property<float?>("Mg2")
.HasColumnType("real")
.HasColumnName("MG2");
b.Property<float?>("Mg2c")
.HasColumnType("real")
.HasColumnName("MG2C");
b.Property<float?>("Mpo1")
.HasColumnType("real")
.HasColumnName("MPO1");
b.Property<float?>("Mpo2")
.HasColumnType("real")
.HasColumnName("MPO2");
b.Property<float?>("Mr1")
.HasColumnType("real")
.HasColumnName("MR1");
b.Property<float?>("Mr1c")
.HasColumnType("real")
.HasColumnName("MR1C");
b.Property<float?>("Mr2")
.HasColumnType("real")
.HasColumnName("MR2");
b.Property<float?>("Mr2c")
.HasColumnType("real")
.HasColumnName("MR2C");
b.Property<short?>("Passnum")
.HasColumnType("smallint")
.HasColumnName("PASSNUM");
b.Property<float?>("Spare1")
.HasColumnType("real")
.HasColumnName("SPARE1");
b.Property<float?>("Spare2")
.HasColumnType("real")
.HasColumnName("SPARE2");
b.Property<float?>("Spare3")
.HasColumnType("real")
.HasColumnName("SPARE3");
b.Property<float?>("Spare4")
.HasColumnType("real")
.HasColumnName("SPARE4");
b.Property<float?>("Spare5")
.HasColumnType("real")
.HasColumnName("SPARE5");
b.Property<float?>("Spare6")
.HasColumnType("real")
.HasColumnName("SPARE6");
b.Property<float?>("Spare7")
.HasColumnType("real")
.HasColumnName("SPARE7");
b.Property<float?>("Spare8")
.HasColumnType("real")
.HasColumnName("SPARE8");
b.Property<float?>("Spare9")
.HasColumnType("real")
.HasColumnName("SPARE9");
b.Property<int?>("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.OperationValue", b =>
{
b.HasOne("AsbCloudDb.Model.WellOperationCategory", "OperationCategory")
.WithMany()
.HasForeignKey("IdOperationCategory")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("AsbCloudDb.Model.Well", "Well")
.WithMany()
.HasForeignKey("IdWell")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("OperationCategory");
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
}
}
}