From 8dbbe7190dcc7bb350de92c0b27b429123f71909 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D1=82=D0=B5=D0=BF=D0=B0=D0=BD=D0=BE=D0=B2=20=D0=94?= =?UTF-8?q?=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Mon, 25 Sep 2023 13:35:45 +0500 Subject: [PATCH 1/2] =?UTF-8?q?=D0=A4=D0=B8=D0=BA=D1=81=D1=8B=20=D0=BF?= =?UTF-8?q?=D0=BE=20=D1=80=D0=B0=D0=B7=D1=80=D0=B5=D1=88=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20=D0=BD=D0=B0=20=D1=80=D0=B5=D0=B4=D0=B0=D0=BA=D1=82?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=B8=D0=BD?= =?UTF-8?q?=D1=81=D1=82=D1=80=D1=83=D0=BA=D1=86=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. Добавлено новое разрешение на удаление инструкций 2. Добавлена миграция 3. Поправлены атрибуты у контроллеров --- ...Add_New_Permission_For_Manuals.Designer.cs | 8544 +++++++++++++++++ ...25081405_Add_New_Permission_For_Manuals.cs | 35 + .../AsbCloudDbContextModelSnapshot.cs | 11 + .../DefaultData/EntityFillerPermission.cs | 4 +- .../Controllers/ManualController.cs | 20 +- .../Controllers/ManualDirectoryController.cs | 30 +- 6 files changed, 8599 insertions(+), 45 deletions(-) create mode 100644 AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.Designer.cs create mode 100644 AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.cs diff --git a/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.Designer.cs b/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.Designer.cs new file mode 100644 index 00000000..95c208da --- /dev/null +++ b/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.Designer.cs @@ -0,0 +1,8544 @@ +// +using System; +using System.Text.Json; +using AsbCloudDb.Model; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace AsbCloudDb.Migrations +{ + [DbContext(typeof(AsbCloudDbContext))] + [Migration("20230925081405_Add_New_Permission_For_Manuals")] + partial class Add_New_Permission_For_Manuals + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("Russian_Russia.1251") + .HasAnnotation("ProductVersion", "6.0.22") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + NpgsqlModelBuilderExtensions.HasPostgresExtension(modelBuilder, "adminpack"); + NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); + + modelBuilder.Entity("AsbCloudDb.Model.Cluster", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption") + .HasComment("Название"); + + b.Property("IdDeposit") + .HasColumnType("integer") + .HasColumnName("id_deposit"); + + b.Property("Latitude") + .HasColumnType("double precision") + .HasColumnName("latitude"); + + b.Property("Longitude") + .HasColumnType("double precision") + .HasColumnName("longitude"); + + b.Property("Timezone") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("timezone") + .HasComment("Смещение часового пояса от UTC"); + + b.HasKey("Id"); + + b.HasIndex("IdDeposit"); + + b.ToTable("t_cluster"); + + b.HasComment("Кусты"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Company", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption"); + + b.Property("IdCompanyType") + .HasMaxLength(255) + .HasColumnType("integer") + .HasColumnName("id_company_type") + .HasComment("вид деятельности"); + + b.HasKey("Id"); + + b.HasIndex("IdCompanyType"); + + b.ToTable("t_company"); + + b.HasData( + new + { + Id = 1, + Caption = "ООО \"АСБ\"", + IdCompanyType = 3 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.CompanyType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption"); + + b.Property("IsContact") + .HasColumnType("boolean"); + + b.Property("Order") + .HasColumnType("integer") + .HasColumnName("order"); + + b.HasKey("Id"); + + b.ToTable("t_company_type"); + + b.HasData( + new + { + Id = 1, + Caption = "Недрапользователь", + IsContact = false, + Order = 1 + }, + new + { + Id = 2, + Caption = "Буровой подрядчик", + IsContact = false, + Order = 2 + }, + new + { + Id = 3, + Caption = "Сервис автоматизации бурения", + IsContact = false, + Order = 0 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.DailyReport.DailyReport", b => + { + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("ID скважины"); + + b.Property("StartDate") + .HasColumnType("date") + .HasColumnName("start_date") + .HasComment("Дата отчёта"); + + b.Property("Info") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("info") + .HasComment("Список параметров для отчёта"); + + b.HasKey("IdWell", "StartDate") + .HasName("t_id_well_date_start_pk"); + + b.ToTable("t_daily_report"); + + b.HasComment("Ежедневные отчёты"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Deposit", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption"); + + b.Property("Latitude") + .HasColumnType("double precision") + .HasColumnName("latitude"); + + b.Property("Longitude") + .HasColumnType("double precision") + .HasColumnName("longitude"); + + b.Property("Timezone") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("timezone") + .HasComment("Смещение часового пояса от UTC"); + + b.HasKey("Id"); + + b.ToTable("t_deposit"); + + b.HasComment("Месторождение"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.DetectedOperation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateEnd") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_end") + .HasComment("Дата начала операции"); + + b.Property("DateStart") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_start") + .HasComment("Дата начала операции"); + + b.Property("DepthEnd") + .HasColumnType("double precision") + .HasColumnName("depth_end") + .HasComment("Глубина после завершения операции, м"); + + b.Property("DepthStart") + .HasColumnType("double precision") + .HasColumnName("depth_start") + .HasComment("Глубина на начало операции, м"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("Id категории операции"); + + b.Property("IdReasonOfEnd") + .HasColumnType("integer") + .HasColumnName("id_reason_of_end") + .HasComment("Код признака окончания операции"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdUsersAtStart") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("Id пользователя по телеметрии на момент начала операции"); + + b.Property("Value") + .HasColumnType("double precision") + .HasColumnName("value") + .HasComment("Ключевой показатель операции"); + + b.HasKey("Id"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdTelemetry"); + + b.ToTable("t_detected_operation"); + + b.HasComment("автоматически определенные операции по телеметрии"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Driller", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id") + .HasComment("Идентификатор"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("name") + .HasComment("Имя"); + + b.Property("Patronymic") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("patronymic") + .HasComment("Отчество"); + + b.Property("Surname") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("surname") + .HasComment("Фамилия"); + + b.HasKey("Id"); + + b.ToTable("t_driller"); + + b.HasComment("Бурильщик"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.DrillingProgramPart", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdFileCategory") + .HasColumnType("integer") + .HasColumnName("id_file_category"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well"); + + b.HasKey("Id"); + + b.HasIndex("IdFileCategory"); + + b.HasIndex("IdWell", "IdFileCategory") + .IsUnique(); + + b.ToTable("t_drilling_program_part"); + + b.HasComment("части программ бурения"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Faq", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id") + .HasComment("Идентификатор"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Answer") + .HasColumnType("text") + .HasColumnName("answer") + .HasComment("Текст ответа"); + + b.Property("CounterQuestion") + .HasColumnType("integer") + .HasColumnName("counter_question") + .HasComment("Счетчик повторений вопроса"); + + b.Property("DateAnswer") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_answer") + .HasComment("Дата ответа"); + + b.Property("DateCreatedQuestion") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_created_question") + .HasComment("Дата создания вопроса"); + + b.Property("DateLastEditedQuestion") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_last_edited_question") + .HasComment("Дата последнего редактирования вопроса"); + + b.Property("IdAuthorAnswer") + .HasColumnType("integer") + .HasColumnName("id_author_answer") + .HasComment("id автора ответа"); + + b.Property("IdAuthorQuestion") + .HasColumnType("integer") + .HasColumnName("id_author_question") + .HasComment("id автора вопроса"); + + b.Property("IdReplacementQuestion") + .HasColumnType("integer") + .HasColumnName("id_replacement_question") + .HasComment("Ключ заменяющего вопроса"); + + b.Property("IsFrequently") + .HasColumnType("boolean") + .HasColumnName("is_frequently") + .HasComment("Частый вопрос"); + + b.Property("Question") + .IsRequired() + .HasColumnType("text") + .HasColumnName("question") + .HasComment("Текст вопроса"); + + b.Property("State") + .HasColumnType("integer") + .HasColumnName("state") + .HasComment("Статус вопроса"); + + b.HasKey("Id"); + + b.HasIndex("IdAuthorAnswer"); + + b.HasIndex("IdAuthorQuestion"); + + b.ToTable("t_faq"); + + b.HasComment("вопросы пользователей"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.FileCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название категории"); + + b.Property("ShortName") + .HasColumnType("text") + .HasColumnName("short_name") + .HasComment("Короткое название категории"); + + b.HasKey("Id"); + + b.ToTable("t_file_category"); + + b.HasComment("Категории файлов"); + + b.HasData( + new + { + Id = 1, + Name = "Растворный сервис", + ShortName = "fluidService" + }, + new + { + Id = 2, + Name = "Цементирование", + ShortName = "cement" + }, + new + { + Id = 3, + Name = "ННБ", + ShortName = "nnb" + }, + new + { + Id = 4, + Name = "ГТИ", + ShortName = "gti" + }, + new + { + Id = 5, + Name = "Документы по скважине", + ShortName = "wellDocuments" + }, + new + { + Id = 6, + Name = "Супервайзер", + ShortName = "supervisor" + }, + new + { + Id = 7, + Name = "Мастер", + ShortName = "master" + }, + new + { + Id = 8, + Name = "Долотный сервис", + ShortName = "toolService" + }, + new + { + Id = 9, + Name = "Буровой подрядчик", + ShortName = "drillService" + }, + new + { + Id = 10, + Name = "Сервис по заканчиванию скважины", + ShortName = "closingService" + }, + new + { + Id = 12, + Name = "Рапорт", + ShortName = "report" + }, + new + { + Id = 1000, + Name = "Программа бурения" + }, + new + { + Id = 1001, + Name = "Задание от геологов" + }, + new + { + Id = 1002, + Name = "Профиль ствола скважины (ННБ)" + }, + new + { + Id = 1003, + Name = "Технологические расчеты (ННБ)" + }, + new + { + Id = 1004, + Name = "Долотная программа" + }, + new + { + Id = 1005, + Name = "Программа по растворам" + }, + new + { + Id = 1006, + Name = "Программа геофизических исследований" + }, + new + { + Id = 1007, + Name = "Планы спусков обсадных колонн" + }, + new + { + Id = 1008, + Name = "Программы цементирования обсадных колонн" + }, + new + { + Id = 10000, + Name = "Проект на бурение транспортного и горизонтального участков скважины" + }, + new + { + Id = 10001, + Name = "Программа на бурение транспортного и горизонтального участков скважины" + }, + new + { + Id = 10002, + Name = "Акт о начале бурения" + }, + new + { + Id = 10003, + Name = "План работ спуска и цементирования направления" + }, + new + { + Id = 10004, + Name = "Программа цементирования направления" + }, + new + { + Id = 10005, + Name = "Мера обсадных труб (направление)" + }, + new + { + Id = 10006, + Name = "Акт на выполненные работы по цементированию направления" + }, + new + { + Id = 10007, + Name = "Отчет по цементированию направления (график)" + }, + new + { + Id = 10008, + Name = "План работ спуска и цементирования кондуктора" + }, + new + { + Id = 10009, + Name = "Программа цементирования (кондуктор)" + }, + new + { + Id = 10010, + Name = "Мера обсадных труб (кондуктор)" + }, + new + { + Id = 10011, + Name = "Карта крепления кондуктора" + }, + new + { + Id = 10012, + Name = "Акт на выполненные работы по цементированию кондуктора" + }, + new + { + Id = 10013, + Name = "Отчет по цементированию кондуктора (график)" + }, + new + { + Id = 10014, + Name = "Акт о замере расстояния от стола ротора до муфты кондуктора" + }, + new + { + Id = 10015, + Name = "Акт опресовки цементного кольца за кондуктором" + }, + new + { + Id = 10016, + Name = "Акт опресовки ППГ с глухими плашками совместно с кондуктором" + }, + new + { + Id = 10017, + Name = "Акт опресовки ПУГ, ППГ с трубными плашками совместно с кондуктором" + }, + new + { + Id = 10018, + Name = "План работ на крепление обсадной колонны (эк. колонна)" + }, + new + { + Id = 10019, + Name = "Программа цементирования (эк. колонна)" + }, + new + { + Id = 10020, + Name = "Мера труб эксплуатационной колонны" + }, + new + { + Id = 10021, + Name = "Карта по креплению скважины (эк. колонна)" + }, + new + { + Id = 10022, + Name = "Акт на установку пружинных центраторов" + }, + new + { + Id = 10023, + Name = "Отчет по цементированию эксплуатационной колонны (график)" + }, + new + { + Id = 10024, + Name = "Акт на выполненные работы по цементированию эксплуатационной колонны" + }, + new + { + Id = 10025, + Name = "Акт об испытании эк. колонны на герметичность (СТОП)" + }, + new + { + Id = 10026, + Name = "Акт опресовки ППГ с глухими плашками совместно с э/колонной" + }, + new + { + Id = 10027, + Name = "Акт опресовки ПУГ, ППГ с трубными плашками совместно с э/колонной" + }, + new + { + Id = 10028, + Name = "Акт на вскрытие продуктивного пласта" + }, + new + { + Id = 10029, + Name = "Акт замера параметров раствора при бурении горизонтального участка" + }, + new + { + Id = 10030, + Name = "Разрешение на спуск «хвостовика» (телефонограмма)" + }, + new + { + Id = 10031, + Name = "План работ на спуск «хвостовика»" + }, + new + { + Id = 10032, + Name = "Акт готовности бурового и энергетического оборудования к спуску «хвостовика»" + }, + new + { + Id = 10033, + Name = "Акт шаблонировки ствола скважины перед спуском «хвостовика»" + }, + new + { + Id = 10034, + Name = "Мера обсадных труб (хвостовик)" + }, + new + { + Id = 10035, + Name = "Акт выполненных работ по спуску хвостовика с закачкой (нефти, солевого раствора" + }, + new + { + Id = 10036, + Name = "Акт о переводе скважины на тех. воду" + }, + new + { + Id = 10037, + Name = "Акт об окончании бурения" + }, + new + { + Id = 10038, + Name = "Акт на передачу скважины в освоение (КРС)" + }, + new + { + Id = 10039, + Name = "Акт на опресовку межколонного пространства с КРС" + }, + new + { + Id = 10040, + Name = "Акт на сдачу скважины в ЦДНГ" + }, + new + { + Id = 10041, + Name = "Паспорт ОУС (заполняется геологами)" + }, + new + { + Id = 10042, + Name = "Паспорт скважины (заполняется геологами)" + }, + new + { + Id = 10043, + Name = "Фактические данные бурения (вставляются в паспорт скважины)" + }, + new + { + Id = 20000, + Name = "Справки по страницам" + }, + new + { + Id = 30000, + Name = "Инструкции" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.FileInfo", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdAuthor") + .HasColumnType("integer") + .HasColumnName("id_author") + .HasComment("Id пользователя, загрузившего файл"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("id категории файла"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("id скважины"); + + b.Property("IsDeleted") + .HasColumnType("boolean") + .HasColumnName("is_deleted") + .HasComment("Удален ли файл"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название файла"); + + b.Property("Size") + .HasColumnType("bigint") + .HasColumnName("file_size") + .HasComment("Размер файла"); + + b.Property("UploadDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.HasKey("Id"); + + b.HasIndex("IdAuthor"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdWell"); + + b.ToTable("t_file_info"); + + b.HasComment("Файлы всех категорий"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.FileMark", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Comment") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("comment") + .HasComment("Комментарий"); + + b.Property("DateCreated") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_created") + .HasComment("Дата совершенного действия"); + + b.Property("IdFile") + .HasColumnType("integer") + .HasColumnName("id_file") + .HasComment("id файла"); + + b.Property("IdMarkType") + .HasColumnType("integer") + .HasColumnName("id_mark_type") + .HasComment("0 - отклонен, 1 - согласован"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("id пользователя"); + + b.Property("IsDeleted") + .HasColumnType("boolean") + .HasColumnName("is_deleted") + .HasComment("Помечен ли файл как удаленный"); + + b.HasKey("Id"); + + b.HasIndex("IdFile"); + + b.HasIndex("IdUser"); + + b.ToTable("t_file_mark"); + + b.HasComment("Действия с файлами."); + }); + + modelBuilder.Entity("AsbCloudDb.Model.GTR.WitsItemFloat", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdRecord") + .HasColumnType("integer") + .HasColumnName("id_record"); + + b.Property("IdItem") + .HasColumnType("integer") + .HasColumnName("id_item"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.Property("Value") + .HasColumnType("real") + .HasColumnName("value"); + + b.HasKey("IdTelemetry", "IdRecord", "IdItem", "DateTime"); + + b.ToTable("t_wits_float"); + + b.HasComment("таблица данных ГТИ с типом значения float"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.GTR.WitsItemInt", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdRecord") + .HasColumnType("integer") + .HasColumnName("id_record"); + + b.Property("IdItem") + .HasColumnType("integer") + .HasColumnName("id_item"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.Property("Value") + .HasColumnType("integer") + .HasColumnName("value"); + + b.HasKey("IdTelemetry", "IdRecord", "IdItem", "DateTime"); + + b.ToTable("t_wits_int"); + + b.HasComment("таблица данных ГТИ с типом значения int"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.GTR.WitsItemString", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdRecord") + .HasColumnType("integer") + .HasColumnName("id_record"); + + b.Property("IdItem") + .HasColumnType("integer") + .HasColumnName("id_item"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.Property("Value") + .IsRequired() + .HasColumnType("text") + .HasColumnName("value"); + + b.HasKey("IdTelemetry", "IdRecord", "IdItem", "DateTime"); + + b.ToTable("t_wits_string"); + + b.HasComment("таблица данных ГТИ с типом значения string"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.HelpPage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("Id категории файла"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название файла"); + + b.Property("Size") + .HasColumnType("bigint") + .HasColumnName("file_size") + .HasComment("Размер файла"); + + b.Property("UrlPage") + .IsRequired() + .HasColumnType("text") + .HasColumnName("url_page") + .HasComment("Url страницы"); + + b.HasKey("Id"); + + b.HasIndex("IdCategory"); + + b.ToTable("t_help_page"); + + b.HasComment("Справки"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.LimitingParameter", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateEnd") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_end"); + + b.Property("DateStart") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_start"); + + b.Property("DepthEnd") + .HasColumnType("real") + .HasColumnName("depth_end"); + + b.Property("DepthStart") + .HasColumnType("real") + .HasColumnName("depth_start"); + + b.Property("IdFeedRegulator") + .HasColumnType("smallint") + .HasColumnName("id_feed_regulator"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.HasKey("Id"); + + b.HasIndex("IdTelemetry"); + + b.ToTable("t_limiting_parameter"); + + b.HasComment("Ограничения по параметрам телеметрии"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Manuals.Manual", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateDownload") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_download") + .HasComment("Дата загрузки"); + + b.Property("IdAuthor") + .HasColumnType("integer") + .HasColumnName("id_author") + .HasComment("Id автора"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("Id категории файла"); + + b.Property("IdDirectory") + .HasColumnType("integer") + .HasColumnName("id_directory") + .HasComment("Id директории"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название"); + + b.HasKey("Id"); + + b.HasIndex("IdAuthor"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdDirectory"); + + b.ToTable("t_manual"); + + b.HasComment("Инструкции"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Manuals.ManualDirectory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdParent") + .HasColumnType("integer") + .HasColumnName("id_parent") + .HasComment("Id родительской директории"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название"); + + b.HasKey("Id"); + + b.HasIndex("IdParent"); + + b.ToTable("t_manual_directory"); + + b.HasComment("Директория для инструкций"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Measure", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Data") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("data") + .HasComment("Данные таблицы последних данных"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("id категории"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("id скважины"); + + b.Property("IsDeleted") + .HasColumnType("boolean") + .HasColumnName("is_deleted") + .HasComment("Пометка удаленным"); + + b.Property("Timestamp") + .HasColumnType("timestamp with time zone") + .HasColumnName("timestamp") + .HasComment("время добавления"); + + b.HasKey("Id"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdWell"); + + b.ToTable("t_measure"); + + b.HasComment("Таблица c данными для вкладки 'Последние данные'"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.MeasureCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название категории"); + + b.Property("ShortName") + .HasColumnType("text") + .HasColumnName("short_name") + .HasComment("Короткое название категории"); + + b.HasKey("Id"); + + b.ToTable("t_measure_category"); + + b.HasComment("Категория последних данных"); + + b.HasData( + new + { + Id = 1, + Name = "Показатели бурового раствора", + ShortName = "Раствор" + }, + new + { + Id = 2, + Name = "Шламограмма", + ShortName = "Шламограмма" + }, + new + { + Id = 3, + Name = "ННБ", + ShortName = "ННБ" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdNotificationCategory") + .HasColumnType("integer") + .HasColumnName("id_notification_category") + .HasComment("Id категории уведомления"); + + b.Property("IdTransportType") + .HasColumnType("integer") + .HasColumnName("id_transport_type") + .HasComment("Id типа доставки уведомления"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("Id получателя"); + + b.Property("Message") + .IsRequired() + .HasColumnType("text") + .HasColumnName("message") + .HasComment("Сообщение уведомления"); + + b.Property("ReadDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("read_date") + .HasComment("Дата прочтения уведомления"); + + b.Property("RegistrationDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("registration_date") + .HasComment("Дата регистрации уведомления"); + + b.Property("SentDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("sent_date") + .HasComment("Дата отправки уведомления"); + + b.Property("Title") + .IsRequired() + .HasColumnType("text") + .HasColumnName("title") + .HasComment("Заголовок уведомления"); + + b.HasKey("Id"); + + b.HasIndex("IdNotificationCategory"); + + b.HasIndex("IdUser"); + + b.ToTable("t_notification"); + + b.HasComment("Уведомления"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.NotificationCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name"); + + b.HasKey("Id"); + + b.ToTable("t_notification_category"); + + b.HasComment("Категории уведомлений"); + + b.HasData( + new + { + Id = 1, + Name = "Системные уведомления" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.OperationValue", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id") + .HasComment("Идентификатор"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DepthEnd") + .HasColumnType("double precision") + .HasColumnName("depth_end") + .HasComment("Конечная глубина"); + + b.Property("DepthStart") + .HasColumnType("double precision") + .HasColumnName("depth_start") + .HasComment("Старотовая глубина"); + + b.Property("IdOperationCategory") + .HasColumnType("integer") + .HasColumnName("id_operation_category") + .HasComment("Ид категории операции"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("Ид скважины"); + + b.Property("StandardValue") + .HasColumnType("double precision") + .HasColumnName("standard_value") + .HasComment("Нормативный показатель"); + + b.Property("TargetValue") + .HasColumnType("double precision") + .HasColumnName("target_value") + .HasComment("Целевой показатель"); + + b.HasKey("Id"); + + b.HasIndex("IdOperationCategory"); + + b.HasIndex("IdWell"); + + b.ToTable("t_operationvalue"); + + b.HasComment("Целевые/нормативные показатели операции"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("description") + .HasComment("Краткое описание"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("name") + .HasComment("Название"); + + b.HasKey("Id"); + + b.ToTable("t_permission"); + + b.HasComment("Разрешения на доступ к данным"); + + b.HasData( + new + { + Id = 100, + Description = "Разрешение удалять админ. Кусты", + Name = "AdminCluster.delete" + }, + new + { + Id = 101, + Description = "Разрешение редактировать админ. Кусты", + Name = "AdminCluster.edit" + }, + new + { + Id = 102, + Description = "Разрешение просматривать админ. Кусты", + Name = "AdminCluster.get" + }, + new + { + Id = 103, + Description = "Разрешение удалять админ. Компании", + Name = "AdminCompany.delete" + }, + new + { + Id = 104, + Description = "Разрешение редактировать админ. Компании", + Name = "AdminCompany.edit" + }, + new + { + Id = 105, + Description = "Разрешение просматривать админ. Компании", + Name = "AdminCompany.get" + }, + new + { + Id = 106, + Description = "Разрешение удалять админ. Типы компаний", + Name = "AdminCompanyType.delete" + }, + new + { + Id = 107, + Description = "Разрешение редактировать админ. Типы компаний", + Name = "AdminCompanyType.edit" + }, + new + { + Id = 108, + Description = "Разрешение просматривать админ. Типы компаний", + Name = "AdminCompanyType.get" + }, + new + { + Id = 109, + Description = "Разрешение удалять админ. Месторождения", + Name = "AdminDeposit.delete" + }, + new + { + Id = 110, + Description = "Разрешение редактировать админ. Месторождения", + Name = "AdminDeposit.edit" + }, + new + { + Id = 111, + Description = "Разрешение просматривать админ. Месторождения", + Name = "AdminDeposit.get" + }, + new + { + Id = 112, + Description = "Разрешение удалять админ. Разрешения", + Name = "AdminPermission.delete" + }, + new + { + Id = 113, + Description = "Разрешение редактировать админ. Разрешения", + Name = "AdminPermission.edit" + }, + new + { + Id = 114, + Description = "Разрешение просматривать админ. Разрешения", + Name = "AdminPermission.get" + }, + new + { + Id = 115, + Description = "Разрешение удалять админ. Телеметрию", + Name = "AdminTelemetry.delete" + }, + new + { + Id = 116, + Description = "Разрешение редактировать админ. Телеметрию", + Name = "AdminTelemetry.edit" + }, + new + { + Id = 117, + Description = "Разрешение просматривать админ. Телеметрию", + Name = "AdminTelemetry.get" + }, + new + { + Id = 118, + Description = "Разрешение удалять админ. Пользователей", + Name = "AdminUser.delete" + }, + new + { + Id = 119, + Description = "Разрешение редактировать админ. Пользователей", + Name = "AdminUser.edit" + }, + new + { + Id = 120, + Description = "Разрешение просматривать админ. Пользователей", + Name = "AdminUser.get" + }, + new + { + Id = 121, + Description = "Разрешение удалять админ. Роли пользователей", + Name = "AdminUserRole.delete" + }, + new + { + Id = 122, + Description = "Разрешение редактировать админ. Роли пользователей", + Name = "AdminUserRole.edit" + }, + new + { + Id = 123, + Description = "Разрешение просматривать админ. Роли пользователей", + Name = "AdminUserRole.get" + }, + new + { + Id = 124, + Description = "Разрешение удалять админ. Скважины", + Name = "AdminWell.delete" + }, + new + { + Id = 125, + Description = "Разрешение редактировать админ. Скважины", + Name = "AdminWell.edit" + }, + new + { + Id = 126, + Description = "Разрешение просматривать админ. Скважины", + Name = "AdminWell.get" + }, + new + { + Id = 127, + Description = "Разрешение удалять админ. Подсистемы", + Name = "AdminSubsytem.delete" + }, + new + { + Id = 128, + Description = "Разрешение редактировать админ. Подсистемы", + Name = "AdminSubsytem.edit" + }, + new + { + Id = 129, + Description = "Разрешение просматривать админ. Подсистемы", + Name = "AdminSubsytem.get" + }, + new + { + Id = 200, + Description = "Разрешение редактировать 0", + Name = "Auth.edit" + }, + new + { + Id = 201, + Description = "Разрешение просматривать 0", + Name = "Auth.get" + }, + new + { + Id = 202, + Description = "Разрешение просматривать Кусты", + Name = "Cluster.get" + }, + new + { + Id = 203, + Description = "Разрешение просматривать Месторождения", + Name = "Deposit.get" + }, + new + { + Id = 204, + Description = "Разрешение удалять РТК", + Name = "DrillFlowChart.delete" + }, + new + { + Id = 205, + Description = "Разрешение редактировать РТК", + Name = "DrillFlowChart.edit" + }, + new + { + Id = 206, + Description = "Разрешение просматривать РТК", + Name = "DrillFlowChart.get" + }, + new + { + Id = 207, + Description = "Разрешение удалять Программу бурения", + Name = "DrillingProgram.delete" + }, + new + { + Id = 208, + Description = "Разрешение редактировать Программу бурения", + Name = "DrillingProgram.edit" + }, + new + { + Id = 209, + Description = "Разрешение просматривать Программу бурения", + Name = "DrillingProgram.get" + }, + new + { + Id = 210, + Description = "Разрешение удалять Режимы бурения", + Name = "DrillParams.delete" + }, + new + { + Id = 211, + Description = "Разрешение редактировать Режимы бурения", + Name = "DrillParams.edit" + }, + new + { + Id = 212, + Description = "Разрешение просматривать Режимы бурения", + Name = "DrillParams.get" + }, + new + { + Id = 213, + Description = "Разрешение удалять Файлы", + Name = "File.delete" + }, + new + { + Id = 214, + Description = "Разрешение редактировать Файлы", + Name = "File.edit" + }, + new + { + Id = 215, + Description = "Разрешение просматривать Файлы", + Name = "File.get" + }, + new + { + Id = 216, + Description = "Разрешение удалять Измерения", + Name = "Measure.delete" + }, + new + { + Id = 217, + Description = "Разрешение редактировать Измерения", + Name = "Measure.edit" + }, + new + { + Id = 218, + Description = "Разрешение просматривать Измерения", + Name = "Measure.get" + }, + new + { + Id = 219, + Description = "Разрешение просматривать Сообщения телеметрии", + Name = "Message.get" + }, + new + { + Id = 220, + Description = "Разрешение просматривать Статистику по операциям", + Name = "OperationStat.get" + }, + new + { + Id = 221, + Description = "Разрешение редактировать Рапорта", + Name = "Report.edit" + }, + new + { + Id = 222, + Description = "Разрешение просматривать Рапорта", + Name = "Report.get" + }, + new + { + Id = 223, + Description = "Разрешение просматривать админ. Системная статистика", + Name = "RequestTracker.get" + }, + new + { + Id = 224, + Description = "Разрешение удалять Рекомендации уставок", + Name = "Setpoints.delete" + }, + new + { + Id = 225, + Description = "Разрешение редактировать Рекомендации уставок", + Name = "Setpoints.edit" + }, + new + { + Id = 226, + Description = "Разрешение просматривать Рекомендации уставок", + Name = "Setpoints.get" + }, + new + { + Id = 227, + Description = "Разрешение редактировать Телеметрии", + Name = "Telemetry.edit" + }, + new + { + Id = 228, + Description = "Разрешение просматривать Анализ телеметрии", + Name = "TelemetryAnalytics.get" + }, + new + { + Id = 229, + Description = "Разрешение редактировать Данные телеметрии по САУБ", + Name = "TelemetryDataSaub.edit" + }, + new + { + Id = 230, + Description = "Разрешение просматривать Данные телеметрии по САУБ", + Name = "TelemetryDataSaub.get" + }, + new + { + Id = 231, + Description = "Разрешение редактировать Данные телеметрии по SpinMaster", + Name = "TelemetryDataSpin.edit" + }, + new + { + Id = 232, + Description = "Разрешение просматривать Данные телеметрии по SpinMaster", + Name = "TelemetryDataSpin.get" + }, + new + { + Id = 233, + Description = "Разрешение редактировать Скважины", + Name = "Well.edit" + }, + new + { + Id = 234, + Description = "Разрешение просматривать Скважины", + Name = "Well.get" + }, + new + { + Id = 235, + Description = "Разрешение редактировать Композитные скважины", + Name = "WellComposite.edit" + }, + new + { + Id = 236, + Description = "Разрешение просматривать Композитные скважины", + Name = "WellComposite.get" + }, + new + { + Id = 237, + Description = "Разрешение удалять Операции по скважинам", + Name = "WellOperation.delete" + }, + new + { + Id = 238, + Description = "Разрешение редактировать Операции по скважинам", + Name = "WellOperation.edit" + }, + new + { + Id = 239, + Description = "Разрешение просматривать Операции по скважинам", + Name = "WellOperation.get" + }, + new + { + Id = 240, + Description = "Разрешение редактировать Файлы категории 1 (Растворный сервис)", + Name = "File.edit1" + }, + new + { + Id = 241, + Description = "Разрешение редактировать Файлы категории 2 (Цементирование)", + Name = "File.edit2" + }, + new + { + Id = 242, + Description = "Разрешение редактировать Файлы категории 3 (ННБ)", + Name = "File.edit3" + }, + new + { + Id = 243, + Description = "Разрешение редактировать Файлы категории 4 (ГТИ)", + Name = "File.edit4" + }, + new + { + Id = 244, + Description = "Разрешение редактировать Файлы категории 5 (Документы по скважине)", + Name = "File.edit5" + }, + new + { + Id = 245, + Description = "Разрешение редактировать Файлы категории 6 (Супервайзер)", + Name = "File.edit6" + }, + new + { + Id = 246, + Description = "Разрешение редактировать Файлы категории 7 (Мастер)", + Name = "File.edit7" + }, + new + { + Id = 247, + Description = "Разрешение редактировать Файлы категории 8 (Долотный сервис)", + Name = "File.edit8" + }, + new + { + Id = 248, + Description = "Разрешение редактировать Файлы категории 9 (Буровой подрядчик)", + Name = "File.edit9" + }, + new + { + Id = 249, + Description = "Разрешение редактировать Файлы категории 10 (Сервис по заканчиванию скважины)", + Name = "File.edit10" + }, + new + { + Id = 250, + Description = "Разрешение редактировать Файлы категории 11 (Рапорт)", + Name = "File.edit11" + }, + new + { + Id = 251, + Description = "Разрешение редактировать Файлы категории 12", + Name = "File.edit12" + }, + new + { + Id = 252, + Description = "Разрешение редактировать Файлы категории 12", + Name = "File.edit13" + }, + new + { + Id = 253, + Description = "Разрешение редактировать Файлы категории 13", + Name = "File.edit14" + }, + new + { + Id = 254, + Description = "Разрешение редактировать Файлы категории 14", + Name = "File.edit15" + }, + new + { + Id = 255, + Description = "Разрешение редактировать Файлы категории 15", + Name = "File.edit16" + }, + new + { + Id = 256, + Description = "Разрешение редактировать Файлы категории 16", + Name = "File.edit17" + }, + new + { + Id = 257, + Description = "Разрешение редактировать Файлы категории 17", + Name = "File.edit18" + }, + new + { + Id = 258, + Description = "Разрешение редактировать Файлы категории 18", + Name = "File.edit19" + }, + new + { + Id = 259, + Description = "Разрешение редактировать Файлы категории 19", + Name = "File.edit20" + }, + new + { + Id = 260, + Description = "Разрешение редактировать Файлы категории 20", + Name = "File.edit21" + }, + new + { + Id = 261, + Description = "Разрешение редактировать Файлы категории 21", + Name = "File.edit22" + }, + new + { + Id = 262, + Description = "Разрешение редактировать Файлы категории 22", + Name = "File.edit23" + }, + new + { + Id = 263, + Description = "Разрешение редактировать Файлы категории 23", + Name = "File.edit24" + }, + new + { + Id = 264, + Description = "Разрешение редактировать Файлы категории 24", + Name = "File.edit25" + }, + new + { + Id = 265, + Description = "Разрешение редактировать Файлы категории 25", + Name = "File.edit26" + }, + new + { + Id = 266, + Description = "Разрешение редактировать Файлы категории 26", + Name = "File.edit27" + }, + new + { + Id = 267, + Description = "Разрешение редактировать Файлы категории 27", + Name = "File.edit28" + }, + new + { + Id = 268, + Description = "Разрешение редактировать Файлы категории 28", + Name = "File.edit29" + }, + new + { + Id = 269, + Description = "Разрешение редактировать Файлы категории 29", + Name = "File.edit30" + }, + new + { + Id = 380, + Description = "Разрешение просматривать список бурильщиков", + Name = "Driller.get" + }, + new + { + Id = 381, + Description = "Разрешение редактировать бурильщика", + Name = "Driller.edit" + }, + new + { + Id = 382, + Description = "Разрешение удалять бурильщик", + Name = "Driller.delete" + }, + new + { + Id = 383, + Description = "Разрешение просматривать графики бурильщиков", + Name = "Schedule.get" + }, + new + { + Id = 384, + Description = "Разрешение редактировать график бурильщика", + Name = "Schedule.edit" + }, + new + { + Id = 385, + Description = "Разрешение удалять график бурильщика", + Name = "Schedule.delete" + }, + new + { + Id = 386, + Description = "Разрешение просматривать суточный рапорт", + Name = "DailyReport.get" + }, + new + { + Id = 387, + Description = "Разрешение редактировать суточный рапорт", + Name = "DailyReport.edit" + }, + new + { + Id = 388, + Description = "Разрешение просматривать авто. определенные операции", + Name = "DetectedOperation.get" + }, + new + { + Id = 389, + Description = "Разрешение просматривать целевые значения", + Name = "OperationValue.get" + }, + new + { + Id = 390, + Description = "Разрешение редактировать целевые значения", + Name = "OperationValue.edit" + }, + new + { + Id = 391, + Description = "Разрешение удалять целевые значения", + Name = "OperationValue.delete" + }, + new + { + Id = 400, + Description = "Разрешение просматривать инфо по wits параметрам", + Name = "WitsInfo.get" + }, + new + { + Id = 401, + Description = "Разрешение просматривать WITS record 1", + Name = "WitsRecord1.get" + }, + new + { + Id = 407, + Description = "Разрешение просматривать WITS record 7", + Name = "WitsRecord7.get" + }, + new + { + Id = 408, + Description = "Разрешение просматривать WITS record 8", + Name = "WitsRecord8.get" + }, + new + { + Id = 450, + Description = "Разрешение просматривать WITS record 50", + Name = "WitsRecord50.get" + }, + new + { + Id = 460, + Description = "Разрешение просматривать WITS record 60", + Name = "WitsRecord60.get" + }, + new + { + Id = 461, + Description = "Разрешение просматривать WITS record 61", + Name = "WitsRecord61.get" + }, + new + { + Id = 500, + Description = "Разрешение удалять Категорий документов файлов", + Name = "FileCategory.delete" + }, + new + { + Id = 501, + Description = "Разрешение редактировать Категорий документов файлов", + Name = "FileCategory.edit" + }, + new + { + Id = 502, + Description = "Разрешение просматривать Категорий документов файлов", + Name = "FileCategory.get" + }, + new + { + Id = 503, + Description = "Разрешение удалять Дело скважины", + Name = "WellFinalDocuments.delete" + }, + new + { + Id = 504, + Description = "Разрешение редактировать Дело скважины", + Name = "WellFinalDocuments.edit" + }, + new + { + Id = 505, + Description = "Разрешение просматривать Дело скважины", + Name = "WellFinalDocuments.get" + }, + new + { + Id = 506, + Description = "Разрешение редактировать ответственных за загрузку файла Дело скважины", + Name = "WellFinalDocuments.editPublisher" + }, + new + { + Id = 507, + Description = "Разрешение просматривать наработка талевого каната", + Name = "TelemetryWirelineRunOut.get" + }, + new + { + Id = 510, + Description = "Разрешение просматривать плановая траектория", + Name = "PlannedTrajectory.get" + }, + new + { + Id = 511, + Description = "Разрешение редактировать плановая траектория", + Name = "PlannedTrajectory.edit" + }, + new + { + Id = 512, + Description = "Разрешение удалять плановая траектория", + Name = "PlannedTrajectory.delete" + }, + new + { + Id = 513, + Description = "Разрешение просматривать РТК", + Name = "ProcessMap.get" + }, + new + { + Id = 514, + Description = "Разрешение редактировать РТК", + Name = "ProcessMap.edit" + }, + new + { + Id = 515, + Description = "Разрешение удалять РТК", + Name = "ProcessMap.delete" + }, + new + { + Id = 516, + Description = "Разрешение просматривать статистику вопросов", + Name = "FaqStatistics.get" + }, + new + { + Id = 517, + Description = "Разрешение редактировать вопрос", + Name = "FaqStatistics.edit" + }, + new + { + Id = 518, + Description = "Разрешение удалять вопрос", + Name = "FaqStatistics.delete" + }, + new + { + Id = 519, + Description = "Разрешение просматривать список контактов", + Name = "WellContact.get" + }, + new + { + Id = 520, + Description = "Разрешение редактировать список контактов", + Name = "WellContact.edit" + }, + new + { + Id = 521, + Description = "Разрешить создание справок по страницам", + Name = "HelpPage.edit" + }, + new + { + Id = 522, + Description = "Разрешить удаление всех настроек пользователя", + Name = "UserSettings.delete" + }, + new + { + Id = 523, + Description = "Разрешить редактирование инструкций", + Name = "Manual.edit" + }, + new + { + Id = 524, + Description = "Разрешить получение инструкций", + Name = "Manual.get" + }, + new + { + Id = 525, + Description = "Разрешение на редактирование РТК у завершенной скважины", + Name = "ProcessMap.editCompletedWell" + }, + new + { + Id = 526, + Description = "Разрешение на редактирование операций у завершенной скважины", + Name = "WellOperation.editCompletedWell" + }, + new + { + Id = 527, + Description = "Разрешение на удаление инструкций", + Name = "Manual.delete" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.PlannedTrajectory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AzimuthGeo") + .HasColumnType("double precision") + .HasColumnName("azimuth_geo") + .HasComment("Азимут Географ."); + + b.Property("AzimuthMagnetic") + .HasColumnType("double precision") + .HasColumnName("azimuth_magnetic") + .HasComment("Азимут Магнитный"); + + b.Property("Comment") + .HasColumnType("text") + .HasColumnName("comment") + .HasComment("Комментарии"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("ID пользователя который внес/изменил запись"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("ID скважины"); + + b.Property("Radius") + .HasColumnType("double precision") + .HasColumnName("radius") + .HasComment("Радиус цели"); + + b.Property("UpdateDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("update_date") + .HasComment("Дата загрузки траектории"); + + b.Property("VerticalDepth") + .HasColumnType("double precision") + .HasColumnName("vertical_depth") + .HasComment("Глубина вертикальная"); + + b.Property("WellboreDepth") + .HasColumnType("double precision") + .HasColumnName("wellbore_depth") + .HasComment("Глубина по стволу"); + + b.Property("ZenithAngle") + .HasColumnType("double precision") + .HasColumnName("zenith_angle") + .HasComment("Угол зенитный"); + + b.HasKey("Id"); + + b.HasIndex("IdUser"); + + b.HasIndex("IdWell"); + + b.ToTable("t_planned_trajectory"); + + b.HasComment("Загрузка плановой траектории"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.ProcessMap", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("AxialLoadLimitMax") + .HasColumnType("double precision") + .HasColumnName("axial_load_limit_max") + .HasComment("Нагрузка, допустимый максимум"); + + b.Property("AxialLoadPlan") + .HasColumnType("double precision") + .HasColumnName("axial_load_plan") + .HasComment("Нагрузка, план"); + + b.Property("DepthEnd") + .HasColumnType("double precision") + .HasColumnName("depth_end") + .HasComment("Глубина окончания интервала"); + + b.Property("DepthStart") + .HasColumnType("double precision") + .HasColumnName("depth_start") + .HasComment("Стартовая глубина"); + + b.Property("FlowLimitMax") + .HasColumnType("double precision") + .HasColumnName("flow_limit_max") + .HasComment("Расход, допустимый максимум"); + + b.Property("FlowPlan") + .HasColumnType("double precision") + .HasColumnName("flow_plan") + .HasComment("Расход, план"); + + b.Property("IdMode") + .HasColumnType("integer") + .HasColumnName("id_mode") + .HasComment("Id режима (1- ротор, 2 слайд)"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("Id пользователя"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("well_id") + .HasComment("Id скважины"); + + b.Property("IdWellSectionType") + .HasColumnType("integer") + .HasColumnName("id_wellsection_type") + .HasComment("Тип секции"); + + b.Property("LastUpdate") + .HasColumnType("timestamp with time zone") + .HasColumnName("last_update") + .HasComment("Дата последнего изменения"); + + b.Property("PressureLimitMax") + .HasColumnType("double precision") + .HasColumnName("pressure_limit_max") + .HasComment("Перепад давления, допустимый максимум"); + + b.Property("PressurePlan") + .HasColumnType("double precision") + .HasColumnName("pressure_plan") + .HasComment("Перепад давления, план"); + + b.Property("RopPlan") + .HasColumnType("double precision") + .HasColumnName("rop_plan") + .HasComment("Плановая механическая скорость, м/ч"); + + b.Property("TopDriveSpeedLimitMax") + .HasColumnType("double precision") + .HasColumnName("top_drive_speed_limit_max") + .HasComment("Обороты на ВСП, допустимый максимум"); + + b.Property("TopDriveSpeedPlan") + .HasColumnType("double precision") + .HasColumnName("top_drive_speed_plan") + .HasComment("Обороты на ВСП, план"); + + b.Property("TopDriveTorqueLimitMax") + .HasColumnType("double precision") + .HasColumnName("top_drive_torque_limit_max") + .HasComment("Момент на ВСП, допустимый максимум"); + + b.Property("TopDriveTorquePlan") + .HasColumnType("double precision") + .HasColumnName("top_drive_torque_plan") + .HasComment("Момент на ВСП, план"); + + b.Property("UsageSaub") + .HasColumnType("double precision") + .HasColumnName("usage_saub") + .HasComment("Плановый процент использования АКБ"); + + b.Property("UsageSpin") + .HasColumnType("double precision") + .HasColumnName("usage_spin") + .HasComment("Плановый процент использования spin master"); + + b.HasKey("Id"); + + b.HasIndex("IdWell"); + + b.HasIndex("IdWellSectionType"); + + b.ToTable("t_process_map"); + + b.HasComment("Операции по скважине – РТК"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationCompanyWell", b => + { + b.Property("IdCompany") + .HasColumnType("integer") + .HasColumnName("id_company"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well"); + + b.HasKey("IdCompany", "IdWell"); + + b.HasIndex("IdWell"); + + b.ToTable("t_relation_company_well"); + + b.HasComment("отношение скважин и компаний"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationContactWell", b => + { + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.HasKey("IdWell", "IdUser"); + + b.HasIndex("IdUser"); + + b.ToTable("t_relation_contact_well"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationUserDrillingProgramPart", b => + { + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.Property("IdDrillingProgramPart") + .HasColumnType("integer") + .HasColumnName("id_drilling_program_part"); + + b.Property("IdUserRole") + .HasColumnType("integer") + .HasColumnName("id_role") + .HasComment("1 - publisher, 2 - approver"); + + b.HasKey("IdUser", "IdDrillingProgramPart") + .HasName("t_relation_user_drilling_program_part_pk"); + + b.HasIndex("IdDrillingProgramPart"); + + b.ToTable("t_relation_user_drilling_program_part"); + + b.HasComment("Отношение пользователей и частей ПБ"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationUserRolePermission", b => + { + b.Property("IdUserRole") + .HasColumnType("integer") + .HasColumnName("id_user_role"); + + b.Property("IdPermission") + .HasColumnType("integer") + .HasColumnName("id_permission"); + + b.HasKey("IdUserRole", "IdPermission"); + + b.HasIndex("IdPermission"); + + b.ToTable("t_relation_user_role_permission"); + + b.HasComment("Отношение ролей пользователей и разрешений доступа"); + + b.HasData( + new + { + IdUserRole = 1100, + IdPermission = 102 + }, + new + { + IdUserRole = 1100, + IdPermission = 111 + }, + new + { + IdUserRole = 1101, + IdPermission = 101 + }, + new + { + IdUserRole = 1101, + IdPermission = 100 + }, + new + { + IdUserRole = 1102, + IdPermission = 105 + }, + new + { + IdUserRole = 1102, + IdPermission = 108 + }, + new + { + IdUserRole = 1103, + IdPermission = 104 + }, + new + { + IdUserRole = 1103, + IdPermission = 103 + }, + new + { + IdUserRole = 1104, + IdPermission = 108 + }, + new + { + IdUserRole = 1105, + IdPermission = 107 + }, + new + { + IdUserRole = 1105, + IdPermission = 106 + }, + new + { + IdUserRole = 1106, + IdPermission = 111 + }, + new + { + IdUserRole = 1107, + IdPermission = 110 + }, + new + { + IdUserRole = 1107, + IdPermission = 109 + }, + new + { + IdUserRole = 1108, + IdPermission = 114 + }, + new + { + IdUserRole = 1109, + IdPermission = 113 + }, + new + { + IdUserRole = 1109, + IdPermission = 112 + }, + new + { + IdUserRole = 1110, + IdPermission = 123 + }, + new + { + IdUserRole = 1110, + IdPermission = 114 + }, + new + { + IdUserRole = 1111, + IdPermission = 122 + }, + new + { + IdUserRole = 1111, + IdPermission = 121 + }, + new + { + IdUserRole = 1112, + IdPermission = 117 + }, + new + { + IdUserRole = 1113, + IdPermission = 105 + }, + new + { + IdUserRole = 1113, + IdPermission = 123 + }, + new + { + IdUserRole = 1113, + IdPermission = 120 + }, + new + { + IdUserRole = 1114, + IdPermission = 119 + }, + new + { + IdUserRole = 1114, + IdPermission = 118 + }, + new + { + IdUserRole = 1114, + IdPermission = 200 + }, + new + { + IdUserRole = 1115, + IdPermission = 223 + }, + new + { + IdUserRole = 1116, + IdPermission = 105 + }, + new + { + IdUserRole = 1116, + IdPermission = 102 + }, + new + { + IdUserRole = 1116, + IdPermission = 117 + }, + new + { + IdUserRole = 1116, + IdPermission = 126 + }, + new + { + IdUserRole = 1117, + IdPermission = 125 + }, + new + { + IdUserRole = 1117, + IdPermission = 124 + }, + new + { + IdUserRole = 1200, + IdPermission = 203 + }, + new + { + IdUserRole = 1200, + IdPermission = 230 + }, + new + { + IdUserRole = 1201, + IdPermission = 202 + }, + new + { + IdUserRole = 1201, + IdPermission = 203 + }, + new + { + IdUserRole = 1201, + IdPermission = 220 + }, + new + { + IdUserRole = 1202, + IdPermission = 203 + }, + new + { + IdUserRole = 1202, + IdPermission = 220 + }, + new + { + IdUserRole = 1202, + IdPermission = 236 + }, + new + { + IdUserRole = 1202, + IdPermission = 212 + }, + new + { + IdUserRole = 1203, + IdPermission = 235 + }, + new + { + IdUserRole = 1204, + IdPermission = 202 + }, + new + { + IdUserRole = 1204, + IdPermission = 203 + }, + new + { + IdUserRole = 1205, + IdPermission = 215 + }, + new + { + IdUserRole = 1206, + IdPermission = 203 + }, + new + { + IdUserRole = 1206, + IdPermission = 206 + }, + new + { + IdUserRole = 1207, + IdPermission = 205 + }, + new + { + IdUserRole = 1208, + IdPermission = 218 + }, + new + { + IdUserRole = 1209, + IdPermission = 217 + }, + new + { + IdUserRole = 1210, + IdPermission = 203 + }, + new + { + IdUserRole = 1210, + IdPermission = 230 + }, + new + { + IdUserRole = 1210, + IdPermission = 219 + }, + new + { + IdUserRole = 1211, + IdPermission = 203 + }, + new + { + IdUserRole = 1211, + IdPermission = 220 + }, + new + { + IdUserRole = 1211, + IdPermission = 239 + }, + new + { + IdUserRole = 1212, + IdPermission = 238 + }, + new + { + IdUserRole = 1212, + IdPermission = 237 + }, + new + { + IdUserRole = 1213, + IdPermission = 203 + }, + new + { + IdUserRole = 1213, + IdPermission = 239 + }, + new + { + IdUserRole = 1213, + IdPermission = 212 + }, + new + { + IdUserRole = 1214, + IdPermission = 211 + }, + new + { + IdUserRole = 1214, + IdPermission = 210 + }, + new + { + IdUserRole = 1215, + IdPermission = 203 + }, + new + { + IdUserRole = 1215, + IdPermission = 222 + }, + new + { + IdUserRole = 1216, + IdPermission = 221 + }, + new + { + IdUserRole = 1217, + IdPermission = 226 + }, + new + { + IdUserRole = 1218, + IdPermission = 225 + }, + new + { + IdUserRole = 1218, + IdPermission = 224 + }, + new + { + IdUserRole = 1219, + IdPermission = 203 + }, + new + { + IdUserRole = 1219, + IdPermission = 206 + }, + new + { + IdUserRole = 1219, + IdPermission = 230 + }, + new + { + IdUserRole = 1219, + IdPermission = 232 + }, + new + { + IdUserRole = 1220, + IdPermission = 203 + }, + new + { + IdUserRole = 1220, + IdPermission = 228 + }, + new + { + IdUserRole = 1221, + IdPermission = 202 + }, + new + { + IdUserRole = 1221, + IdPermission = 203 + }, + new + { + IdUserRole = 1221, + IdPermission = 220 + }, + new + { + IdUserRole = 1221, + IdPermission = 234 + }, + new + { + IdUserRole = 1500, + IdPermission = 507 + }, + new + { + IdUserRole = 1500, + IdPermission = 510 + }, + new + { + IdUserRole = 1501, + IdPermission = 214 + }, + new + { + IdUserRole = 1501, + IdPermission = 213 + }, + new + { + IdUserRole = 1502, + IdPermission = 207 + }, + new + { + IdUserRole = 1502, + IdPermission = 208 + }, + new + { + IdUserRole = 2000, + IdPermission = 205 + }, + new + { + IdUserRole = 2000, + IdPermission = 204 + }, + new + { + IdUserRole = 2000, + IdPermission = 245 + }, + new + { + IdUserRole = 2001, + IdPermission = 244 + }, + new + { + IdUserRole = 2001, + IdPermission = 245 + }, + new + { + IdUserRole = 2002, + IdPermission = 244 + }, + new + { + IdUserRole = 2002, + IdPermission = 246 + }, + new + { + IdUserRole = 2002, + IdPermission = 237 + }, + new + { + IdUserRole = 2002, + IdPermission = 238 + }, + new + { + IdUserRole = 2003, + IdPermission = 240 + }, + new + { + IdUserRole = 2003, + IdPermission = 217 + }, + new + { + IdUserRole = 2003, + IdPermission = 216 + }, + new + { + IdUserRole = 2004, + IdPermission = 242 + }, + new + { + IdUserRole = 2004, + IdPermission = 217 + }, + new + { + IdUserRole = 2004, + IdPermission = 216 + }, + new + { + IdUserRole = 2004, + IdPermission = 205 + }, + new + { + IdUserRole = 2004, + IdPermission = 204 + }, + new + { + IdUserRole = 2005, + IdPermission = 247 + }, + new + { + IdUserRole = 2005, + IdPermission = 205 + }, + new + { + IdUserRole = 2005, + IdPermission = 204 + }, + new + { + IdUserRole = 2006, + IdPermission = 243 + }, + new + { + IdUserRole = 2006, + IdPermission = 205 + }, + new + { + IdUserRole = 2006, + IdPermission = 204 + }, + new + { + IdUserRole = 2007, + IdPermission = 241 + }, + new + { + IdUserRole = 2007, + IdPermission = 205 + }, + new + { + IdUserRole = 2007, + IdPermission = 204 + }, + new + { + IdUserRole = 1, + IdPermission = 100 + }, + new + { + IdUserRole = 1, + IdPermission = 101 + }, + new + { + IdUserRole = 1, + IdPermission = 102 + }, + new + { + IdUserRole = 1, + IdPermission = 103 + }, + new + { + IdUserRole = 1, + IdPermission = 104 + }, + new + { + IdUserRole = 1, + IdPermission = 105 + }, + new + { + IdUserRole = 1, + IdPermission = 106 + }, + new + { + IdUserRole = 1, + IdPermission = 107 + }, + new + { + IdUserRole = 1, + IdPermission = 108 + }, + new + { + IdUserRole = 1, + IdPermission = 109 + }, + new + { + IdUserRole = 1, + IdPermission = 110 + }, + new + { + IdUserRole = 1, + IdPermission = 111 + }, + new + { + IdUserRole = 1, + IdPermission = 112 + }, + new + { + IdUserRole = 1, + IdPermission = 113 + }, + new + { + IdUserRole = 1, + IdPermission = 114 + }, + new + { + IdUserRole = 1, + IdPermission = 115 + }, + new + { + IdUserRole = 1, + IdPermission = 116 + }, + new + { + IdUserRole = 1, + IdPermission = 117 + }, + new + { + IdUserRole = 1, + IdPermission = 118 + }, + new + { + IdUserRole = 1, + IdPermission = 119 + }, + new + { + IdUserRole = 1, + IdPermission = 120 + }, + new + { + IdUserRole = 1, + IdPermission = 121 + }, + new + { + IdUserRole = 1, + IdPermission = 122 + }, + new + { + IdUserRole = 1, + IdPermission = 123 + }, + new + { + IdUserRole = 1, + IdPermission = 124 + }, + new + { + IdUserRole = 1, + IdPermission = 125 + }, + new + { + IdUserRole = 1, + IdPermission = 126 + }, + new + { + IdUserRole = 1, + IdPermission = 127 + }, + new + { + IdUserRole = 1, + IdPermission = 128 + }, + new + { + IdUserRole = 1, + IdPermission = 129 + }, + new + { + IdUserRole = 1, + IdPermission = 200 + }, + new + { + IdUserRole = 1, + IdPermission = 201 + }, + new + { + IdUserRole = 1, + IdPermission = 202 + }, + new + { + IdUserRole = 1, + IdPermission = 203 + }, + new + { + IdUserRole = 1, + IdPermission = 204 + }, + new + { + IdUserRole = 1, + IdPermission = 205 + }, + new + { + IdUserRole = 1, + IdPermission = 206 + }, + new + { + IdUserRole = 1, + IdPermission = 207 + }, + new + { + IdUserRole = 1, + IdPermission = 208 + }, + new + { + IdUserRole = 1, + IdPermission = 209 + }, + new + { + IdUserRole = 1, + IdPermission = 210 + }, + new + { + IdUserRole = 1, + IdPermission = 211 + }, + new + { + IdUserRole = 1, + IdPermission = 212 + }, + new + { + IdUserRole = 1, + IdPermission = 213 + }, + new + { + IdUserRole = 1, + IdPermission = 214 + }, + new + { + IdUserRole = 1, + IdPermission = 215 + }, + new + { + IdUserRole = 1, + IdPermission = 216 + }, + new + { + IdUserRole = 1, + IdPermission = 217 + }, + new + { + IdUserRole = 1, + IdPermission = 218 + }, + new + { + IdUserRole = 1, + IdPermission = 219 + }, + new + { + IdUserRole = 1, + IdPermission = 220 + }, + new + { + IdUserRole = 1, + IdPermission = 221 + }, + new + { + IdUserRole = 1, + IdPermission = 222 + }, + new + { + IdUserRole = 1, + IdPermission = 223 + }, + new + { + IdUserRole = 1, + IdPermission = 224 + }, + new + { + IdUserRole = 1, + IdPermission = 225 + }, + new + { + IdUserRole = 1, + IdPermission = 226 + }, + new + { + IdUserRole = 1, + IdPermission = 227 + }, + new + { + IdUserRole = 1, + IdPermission = 228 + }, + new + { + IdUserRole = 1, + IdPermission = 229 + }, + new + { + IdUserRole = 1, + IdPermission = 230 + }, + new + { + IdUserRole = 1, + IdPermission = 231 + }, + new + { + IdUserRole = 1, + IdPermission = 232 + }, + new + { + IdUserRole = 1, + IdPermission = 233 + }, + new + { + IdUserRole = 1, + IdPermission = 234 + }, + new + { + IdUserRole = 1, + IdPermission = 235 + }, + new + { + IdUserRole = 1, + IdPermission = 236 + }, + new + { + IdUserRole = 1, + IdPermission = 237 + }, + new + { + IdUserRole = 1, + IdPermission = 238 + }, + new + { + IdUserRole = 1, + IdPermission = 239 + }, + new + { + IdUserRole = 1, + IdPermission = 240 + }, + new + { + IdUserRole = 1, + IdPermission = 241 + }, + new + { + IdUserRole = 1, + IdPermission = 242 + }, + new + { + IdUserRole = 1, + IdPermission = 243 + }, + new + { + IdUserRole = 1, + IdPermission = 244 + }, + new + { + IdUserRole = 1, + IdPermission = 245 + }, + new + { + IdUserRole = 1, + IdPermission = 246 + }, + new + { + IdUserRole = 1, + IdPermission = 247 + }, + new + { + IdUserRole = 1, + IdPermission = 248 + }, + new + { + IdUserRole = 1, + IdPermission = 249 + }, + new + { + IdUserRole = 1, + IdPermission = 250 + }, + new + { + IdUserRole = 1, + IdPermission = 251 + }, + new + { + IdUserRole = 1, + IdPermission = 252 + }, + new + { + IdUserRole = 1, + IdPermission = 253 + }, + new + { + IdUserRole = 1, + IdPermission = 254 + }, + new + { + IdUserRole = 1, + IdPermission = 255 + }, + new + { + IdUserRole = 1, + IdPermission = 256 + }, + new + { + IdUserRole = 1, + IdPermission = 257 + }, + new + { + IdUserRole = 1, + IdPermission = 258 + }, + new + { + IdUserRole = 1, + IdPermission = 259 + }, + new + { + IdUserRole = 1, + IdPermission = 260 + }, + new + { + IdUserRole = 1, + IdPermission = 261 + }, + new + { + IdUserRole = 1, + IdPermission = 262 + }, + new + { + IdUserRole = 1, + IdPermission = 263 + }, + new + { + IdUserRole = 1, + IdPermission = 264 + }, + new + { + IdUserRole = 1, + IdPermission = 265 + }, + new + { + IdUserRole = 1, + IdPermission = 266 + }, + new + { + IdUserRole = 1, + IdPermission = 267 + }, + new + { + IdUserRole = 1, + IdPermission = 268 + }, + new + { + IdUserRole = 1, + IdPermission = 269 + }, + new + { + IdUserRole = 1, + IdPermission = 380 + }, + new + { + IdUserRole = 1, + IdPermission = 381 + }, + new + { + IdUserRole = 1, + IdPermission = 382 + }, + new + { + IdUserRole = 1, + IdPermission = 383 + }, + new + { + IdUserRole = 1, + IdPermission = 384 + }, + new + { + IdUserRole = 1, + IdPermission = 385 + }, + new + { + IdUserRole = 1, + IdPermission = 386 + }, + new + { + IdUserRole = 1, + IdPermission = 387 + }, + new + { + IdUserRole = 1, + IdPermission = 388 + }, + new + { + IdUserRole = 1, + IdPermission = 389 + }, + new + { + IdUserRole = 1, + IdPermission = 390 + }, + new + { + IdUserRole = 1, + IdPermission = 391 + }, + new + { + IdUserRole = 1, + IdPermission = 400 + }, + new + { + IdUserRole = 1, + IdPermission = 401 + }, + new + { + IdUserRole = 1, + IdPermission = 407 + }, + new + { + IdUserRole = 1, + IdPermission = 408 + }, + new + { + IdUserRole = 1, + IdPermission = 450 + }, + new + { + IdUserRole = 1, + IdPermission = 460 + }, + new + { + IdUserRole = 1, + IdPermission = 461 + }, + new + { + IdUserRole = 1, + IdPermission = 500 + }, + new + { + IdUserRole = 1, + IdPermission = 501 + }, + new + { + IdUserRole = 1, + IdPermission = 502 + }, + new + { + IdUserRole = 1, + IdPermission = 503 + }, + new + { + IdUserRole = 1, + IdPermission = 504 + }, + new + { + IdUserRole = 1, + IdPermission = 505 + }, + new + { + IdUserRole = 1, + IdPermission = 506 + }, + new + { + IdUserRole = 1, + IdPermission = 507 + }, + new + { + IdUserRole = 1, + IdPermission = 510 + }, + new + { + IdUserRole = 1, + IdPermission = 511 + }, + new + { + IdUserRole = 1, + IdPermission = 512 + }, + new + { + IdUserRole = 1, + IdPermission = 513 + }, + new + { + IdUserRole = 1, + IdPermission = 514 + }, + new + { + IdUserRole = 1, + IdPermission = 515 + }, + new + { + IdUserRole = 1, + IdPermission = 516 + }, + new + { + IdUserRole = 1, + IdPermission = 517 + }, + new + { + IdUserRole = 1, + IdPermission = 518 + }, + new + { + IdUserRole = 1, + IdPermission = 519 + }, + new + { + IdUserRole = 1, + IdPermission = 520 + }, + new + { + IdUserRole = 1, + IdPermission = 521 + }, + new + { + IdUserRole = 1, + IdPermission = 522 + }, + new + { + IdUserRole = 1, + IdPermission = 523 + }, + new + { + IdUserRole = 1, + IdPermission = 524 + }, + new + { + IdUserRole = 1, + IdPermission = 525 + }, + new + { + IdUserRole = 1, + IdPermission = 526 + }, + new + { + IdUserRole = 1, + IdPermission = 527 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationUserRoleUserRole", b => + { + b.Property("Id") + .HasColumnType("integer") + .HasColumnName("id_user_role"); + + b.Property("IdInclude") + .HasColumnType("integer") + .HasColumnName("id_include_user_role"); + + b.HasKey("Id", "IdInclude") + .HasName("t_relation_user_role_user_role_pk"); + + b.HasIndex("IdInclude"); + + b.ToTable("t_relation_user_role_user_role"); + + b.HasComment("Отношение ролей к ролям"); + + b.HasData( + new + { + Id = 1101, + IdInclude = 1100 + }, + new + { + Id = 1103, + IdInclude = 1102 + }, + new + { + Id = 1105, + IdInclude = 1104 + }, + new + { + Id = 1107, + IdInclude = 1106 + }, + new + { + Id = 1109, + IdInclude = 1108 + }, + new + { + Id = 1111, + IdInclude = 1110 + }, + new + { + Id = 1114, + IdInclude = 1113 + }, + new + { + Id = 1117, + IdInclude = 1116 + }, + new + { + Id = 1203, + IdInclude = 1202 + }, + new + { + Id = 1207, + IdInclude = 1206 + }, + new + { + Id = 1209, + IdInclude = 1208 + }, + new + { + Id = 1212, + IdInclude = 1211 + }, + new + { + Id = 1214, + IdInclude = 1213 + }, + new + { + Id = 1216, + IdInclude = 1215 + }, + new + { + Id = 1218, + IdInclude = 1217 + }, + new + { + Id = 2000, + IdInclude = 1200 + }, + new + { + Id = 2000, + IdInclude = 1201 + }, + new + { + Id = 2000, + IdInclude = 1202 + }, + new + { + Id = 2000, + IdInclude = 1204 + }, + new + { + Id = 2000, + IdInclude = 1205 + }, + new + { + Id = 2000, + IdInclude = 1206 + }, + new + { + Id = 2000, + IdInclude = 1208 + }, + new + { + Id = 2000, + IdInclude = 1210 + }, + new + { + Id = 2000, + IdInclude = 1211 + }, + new + { + Id = 2000, + IdInclude = 1213 + }, + new + { + Id = 2000, + IdInclude = 1215 + }, + new + { + Id = 2000, + IdInclude = 1217 + }, + new + { + Id = 2000, + IdInclude = 1219 + }, + new + { + Id = 2000, + IdInclude = 1220 + }, + new + { + Id = 2000, + IdInclude = 1221 + }, + new + { + Id = 2000, + IdInclude = 1500 + }, + new + { + Id = 2000, + IdInclude = 1501 + }, + new + { + Id = 2000, + IdInclude = 1502 + }, + new + { + Id = 2001, + IdInclude = 1500 + }, + new + { + Id = 2001, + IdInclude = 1501 + }, + new + { + Id = 2001, + IdInclude = 1502 + }, + new + { + Id = 2002, + IdInclude = 1500 + }, + new + { + Id = 2002, + IdInclude = 1501 + }, + new + { + Id = 2002, + IdInclude = 1502 + }, + new + { + Id = 2003, + IdInclude = 1500 + }, + new + { + Id = 2003, + IdInclude = 1501 + }, + new + { + Id = 2003, + IdInclude = 1502 + }, + new + { + Id = 2004, + IdInclude = 1500 + }, + new + { + Id = 2004, + IdInclude = 1501 + }, + new + { + Id = 2004, + IdInclude = 1502 + }, + new + { + Id = 2005, + IdInclude = 1500 + }, + new + { + Id = 2005, + IdInclude = 1501 + }, + new + { + Id = 2005, + IdInclude = 1502 + }, + new + { + Id = 2006, + IdInclude = 1500 + }, + new + { + Id = 2006, + IdInclude = 1501 + }, + new + { + Id = 2006, + IdInclude = 1502 + }, + new + { + Id = 2007, + IdInclude = 1500 + }, + new + { + Id = 2007, + IdInclude = 1501 + }, + new + { + Id = 2007, + IdInclude = 1502 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.RelationUserUserRole", b => + { + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.Property("IdUserRole") + .HasColumnType("integer") + .HasColumnName("id_user_role"); + + b.HasKey("IdUser", "IdUserRole"); + + b.HasIndex("IdUserRole"); + + b.ToTable("t_relation_user_user_role"); + + b.HasComment("Отношение пользователей и ролей"); + + b.HasData( + new + { + IdUser = 1, + IdUserRole = 1 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.ReportProperty", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Begin") + .HasColumnType("timestamp with time zone") + .HasColumnName("begin"); + + b.Property("End") + .HasColumnType("timestamp with time zone") + .HasColumnName("end") + .HasComment("timestamp with time zone"); + + b.Property("Format") + .HasColumnType("integer") + .HasColumnName("format") + .HasComment("Формат отчета"); + + b.Property("IdFile") + .HasColumnType("integer") + .HasColumnName("id_file") + .HasComment("id файла-родителя"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("id скважины"); + + b.Property("Step") + .HasColumnType("integer") + .HasColumnName("step") + .HasComment("размер шага в секундах"); + + b.HasKey("Id"); + + b.HasIndex("IdFile"); + + b.HasIndex("IdWell"); + + b.ToTable("t_report_property"); + + b.HasComment("Отчеты с данными по буровым"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Schedule", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id") + .HasComment("Идентификатор"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DrillEnd") + .HasColumnType("timestamp with time zone") + .HasColumnName("drill_end") + .HasComment("Конец вахты"); + + b.Property("DrillStart") + .HasColumnType("timestamp with time zone") + .HasColumnName("drill_start") + .HasComment("Начало вахты"); + + b.Property("IdDriller") + .HasColumnType("integer") + .HasColumnName("id_driller") + .HasComment("Идентификатор бурильщика"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("Идентификатор скважины"); + + b.Property("ShiftEnd") + .HasColumnType("time without time zone") + .HasColumnName("shift_end") + .HasComment("Конец смены"); + + b.Property("ShiftStart") + .HasColumnType("time without time zone") + .HasColumnName("shift_start") + .HasComment("Начало смены"); + + b.HasKey("Id"); + + b.HasIndex("IdDriller"); + + b.HasIndex("IdWell"); + + b.ToTable("t_schedule"); + + b.HasComment("График работы бурильщика"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.SetpointsRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Comment") + .HasColumnType("text") + .HasColumnName("comment") + .HasComment("комментарий для оператора"); + + b.Property("IdAuthor") + .HasColumnType("integer") + .HasColumnName("id_author") + .HasComment("Id пользователя, загрузившего файл"); + + b.Property("IdState") + .HasColumnType("integer") + .HasColumnName("id_state") + .HasComment("0: неизвестно, 1:ожидает отправки, 2: отправлено, 3: принято оператором, 4: отклонено оператором, 5: устарело"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("id скважины"); + + b.Property("ObsolescenceSec") + .HasColumnType("integer") + .HasColumnName("obsolescence") + .HasComment("сек. до устаревания"); + + b.Property("Setpoints") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("setpoint_set") + .HasComment("Набор уставок"); + + b.Property("UploadDate") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.HasKey("Id"); + + b.HasIndex("IdAuthor"); + + b.HasIndex("IdWell"); + + b.ToTable("t_setpoints_rquest"); + + b.HasComment("Запросы на изменение уставок панели оператора"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Subsystems.Subsystem", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Description") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("description"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("name"); + + b.HasKey("Id"); + + b.ToTable("t_subsystem"); + + b.HasComment("Описание подсистем"); + + b.HasData( + new + { + Id = 1, + Description = "Совместная работа режимов \"Бурение в роторе\" и \"Бурение в слайде\"", + Name = "АКБ" + }, + new + { + Id = 11, + Description = "Режим работы \"Бурение в роторе\"", + Name = "АПД ротор" + }, + new + { + Id = 12, + Description = "Режим работы \"Бурение в слайде\"", + Name = "АПД слайд" + }, + new + { + Id = 2, + Description = "Алгоритм поиска оптимальных параметров бурения САУБ", + Name = "MSE" + }, + new + { + Id = 65536, + Description = "Spin master", + Name = "Spin master" + }, + new + { + Id = 65537, + Description = "Torque master", + Name = "Torque master" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Subsystems.SubsystemOperationTime", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("DateEnd") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_end") + .HasComment("дата/время выключения подсистемы"); + + b.Property("DateStart") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_start") + .HasComment("дата/время включения подсистемы"); + + b.Property("DepthEnd") + .HasColumnType("real") + .HasColumnName("depth_end") + .HasComment("глубина забоя на момент выключения подсистемы"); + + b.Property("DepthStart") + .HasColumnType("real") + .HasColumnName("depth_start") + .HasComment("глубина забоя на момент включения подсистемы"); + + b.Property("IdSubsystem") + .HasColumnType("integer") + .HasColumnName("id_subsystem"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry") + .HasComment("ИД телеметрии по которой выдается информация"); + + b.HasKey("Id"); + + b.HasIndex("IdSubsystem"); + + b.HasIndex("IdTelemetry"); + + b.ToTable("t_subsystem_operation_time"); + + b.HasComment("наработки подсистем"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Telemetry", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Info") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("info") + .HasComment("Информация с панели о скважине"); + + b.Property("RemoteUid") + .IsRequired() + .HasColumnType("text") + .HasColumnName("remote_uid") + .HasComment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв."); + + b.Property("TimeZone") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("timezone") + .HasComment("Смещение часового пояса от UTC"); + + b.HasKey("Id"); + + b.HasIndex(new[] { "RemoteUid" }, "t_telemetry_remote_uid_index"); + + b.ToTable("t_telemetry"); + + b.HasComment("таблица привязки телеметрии от комплектов к конкретной скважине."); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSaub", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date") + .HasComment("'2021-10-19 18:23:54+05'"); + + b.Property("AxialLoad") + .HasColumnType("real") + .HasColumnName("axial_load") + .HasComment("Осевая нагрузка"); + + b.Property("AxialLoadLimitMax") + .HasColumnType("real") + .HasColumnName("axial_load_limit_max") + .HasComment("Осевая нагрузка. Аварийная макс."); + + b.Property("AxialLoadSp") + .HasColumnType("real") + .HasColumnName("axial_load_sp") + .HasComment("Осевая нагрузка. Задание"); + + b.Property("BitDepth") + .HasColumnType("real") + .HasColumnName("bit_depth") + .HasComment("Положение инструмента"); + + b.Property("BlockPosition") + .HasColumnType("real") + .HasColumnName("block_position") + .HasComment("Высота талевого блока"); + + b.Property("BlockPositionMax") + .HasColumnType("real") + .HasColumnName("block_position_max") + .HasComment("Талевый блок. Макс положение"); + + b.Property("BlockPositionMin") + .HasColumnType("real") + .HasColumnName("block_position_min") + .HasComment("Талевый блок. Мин положение"); + + b.Property("BlockSpeed") + .HasColumnType("real") + .HasColumnName("block_speed") + .HasComment("Скорость талевого блока"); + + b.Property("BlockSpeedSp") + .HasColumnType("real") + .HasColumnName("block_speed_sp") + .HasComment("Скорости талевого блока. Задание"); + + b.Property("BlockSpeedSpDevelop") + .HasColumnType("real") + .HasColumnName("block_speed_sp_develop") + .HasComment("Талевый блок. Задание скорости для проработки"); + + b.Property("BlockSpeedSpRotor") + .HasColumnType("real") + .HasColumnName("block_speed_sp_rotor") + .HasComment("Талевый блок. Задание скорости для роторного бурения"); + + b.Property("BlockSpeedSpSlide") + .HasColumnType("real") + .HasColumnName("block_speed_sp_slide") + .HasComment("Талевый блок. Задание скорости для режима слайда"); + + b.Property("Flow") + .HasColumnType("real") + .HasColumnName("flow") + .HasComment("Расход"); + + b.Property("FlowDeltaLimitMax") + .HasColumnType("real") + .HasColumnName("flow_delta_limit_max") + .HasComment("Расход. Аварийный макс."); + + b.Property("FlowIdle") + .HasColumnType("real") + .HasColumnName("flow_idle") + .HasComment("Расход. Холостой ход"); + + b.Property("HookWeight") + .HasColumnType("real") + .HasColumnName("hook_weight") + .HasComment("Вес на крюке"); + + b.Property("HookWeightIdle") + .HasColumnType("real") + .HasColumnName("hook_weight_idle") + .HasComment("Вес на крюке. Холостой ход"); + + b.Property("HookWeightLimitMax") + .HasColumnType("real") + .HasColumnName("hook_weight_limit_max") + .HasComment("Вес на крюке. Затяжка"); + + b.Property("HookWeightLimitMin") + .HasColumnType("real") + .HasColumnName("hook_weight_limit_min") + .HasComment("Вес на крюке. Посадка"); + + b.Property("IdFeedRegulator") + .HasColumnType("smallint") + .HasColumnName("id_feed_regulator") + .HasComment("Текущий критерий бурения"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user") + .HasComment("Пользователь САУБ"); + + b.Property("Mode") + .HasColumnType("smallint") + .HasColumnName("mode") + .HasComment("Режим САУБ"); + + b.Property("Mse") + .HasColumnType("real") + .HasColumnName("mse") + .HasComment("MSE"); + + b.Property("MseState") + .HasColumnType("smallint") + .HasColumnName("mse_state") + .HasComment("Текущее состояние работы MSE"); + + b.Property("Pressure") + .HasColumnType("real") + .HasColumnName("pressure") + .HasComment("Давление"); + + b.Property("PressureDeltaLimitMax") + .HasColumnType("real") + .HasColumnName("pressure_delta_limit_max") + .HasComment("Давление дифф. Аварийное макс."); + + b.Property("PressureIdle") + .HasColumnType("real") + .HasColumnName("pressure_idle") + .HasComment("Давление. Холостой ход"); + + b.Property("PressureSp") + .HasColumnType("real") + .HasColumnName("pressure_sp") + .HasComment("Давление. Задание"); + + b.Property("PressureSpDevelop") + .HasColumnType("real") + .HasColumnName("pressure_sp_develop") + .HasComment("Давление. Задание для проработки"); + + b.Property("PressureSpRotor") + .HasColumnType("real") + .HasColumnName("pressure_sp_rotor") + .HasComment("Давление. Задание для роторного бурения"); + + b.Property("PressureSpSlide") + .HasColumnType("real") + .HasColumnName("pressure_sp_slide") + .HasComment("Давление. Задание для режима слайда"); + + b.Property("Pump0Flow") + .HasColumnType("real") + .HasColumnName("pump0_flow") + .HasComment("Расход. Буровой насос 1"); + + b.Property("Pump1Flow") + .HasColumnType("real") + .HasColumnName("pump1_flow") + .HasComment("Расход. Буровой насос 2"); + + b.Property("Pump2Flow") + .HasColumnType("real") + .HasColumnName("pump2_flow") + .HasComment("Расход. Буровой насос 3"); + + b.Property("RotorSpeed") + .HasColumnType("real") + .HasColumnName("rotor_speed") + .HasComment("Обороты ротора"); + + b.Property("RotorTorque") + .HasColumnType("real") + .HasColumnName("rotor_torque") + .HasComment("Момент на роторе"); + + b.Property("RotorTorqueIdle") + .HasColumnType("real") + .HasColumnName("rotor_torque_idle") + .HasComment("Момент на роторе. Холостой ход"); + + b.Property("RotorTorqueLimitMax") + .HasColumnType("real") + .HasColumnName("rotor_torque_limit_max") + .HasComment("Момент на роторе. Аварийный макс."); + + b.Property("RotorTorqueSp") + .HasColumnType("real") + .HasColumnName("rotor_torque_sp") + .HasComment("Момент на роторе. Задание"); + + b.Property("WellDepth") + .HasColumnType("real") + .HasColumnName("well_depth") + .HasComment("Глубина забоя"); + + b.HasKey("IdTelemetry", "DateTime"); + + b.ToTable("t_telemetry_data_saub"); + + b.HasComment("набор основных данных по SAUB"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSaubStat", b => + { + b.Property("Count") + .HasColumnType("bigint") + .HasColumnName("count_items"); + + b.Property("DateMax") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_max"); + + b.Property("DateMin") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_min"); + + b.Property("DepthMax") + .HasColumnType("real") + .HasColumnName("depth_max"); + + b.Property("DepthMin") + .HasColumnType("real") + .HasColumnName("depth_min"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.ToView("mw_telemetry_datas_saub_stat"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryDataSpin", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date") + .HasComment("'2021-10-19 18:23:54+05'"); + + b.Property("Mode") + .HasColumnType("smallint") + .HasColumnName("mode") + .HasComment("Выбранный режим управления"); + + b.Property("PositionRight") + .HasColumnType("real") + .HasColumnName("position_right") + .HasComment("Крайний правый угол осцилляции"); + + b.Property("PositionZero") + .HasColumnType("real") + .HasColumnName("position_zero") + .HasComment("Нулевая позиция осцилляции"); + + b.Property("RevolsLeftLimit") + .HasColumnType("real") + .HasColumnName("revols_left_limit") + .HasComment("Ограничение числа оборотов влево"); + + b.Property("RevolsLeftTotal") + .HasColumnType("real") + .HasColumnName("revols_left_total") + .HasComment("Суммарное количество оборотов влево"); + + b.Property("RevolsRightLimit") + .HasColumnType("real") + .HasColumnName("revols_right_limit") + .HasComment("Ограничение числа оборотов вправо"); + + b.Property("RevolsRightTotal") + .HasColumnType("real") + .HasColumnName("revols_right_total") + .HasComment("Суммарное количество оборотов вправо"); + + b.Property("SpeedLeftSp") + .HasColumnType("real") + .HasColumnName("speed_left_sp") + .HasComment("Заданная скорость вращения влево"); + + b.Property("SpeedRightSp") + .HasColumnType("real") + .HasColumnName("speed_right_sp") + .HasComment("Заданная скорость вращения вправо"); + + b.Property("State") + .HasColumnType("smallint") + .HasColumnName("state") + .HasComment("Переменная этапа"); + + b.HasKey("IdTelemetry", "DateTime"); + + b.ToTable("t_telemetry_data_spin"); + + b.HasComment("набор основных данных по SpinMaster"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryEvent", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdEvent") + .HasColumnType("integer") + .HasColumnName("id_event"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category"); + + b.Property("MessageTemplate") + .IsRequired() + .HasColumnType("text") + .HasColumnName("message_template"); + + b.HasKey("IdTelemetry", "IdEvent"); + + b.ToTable("t_telemetry_event"); + + b.HasComment("Справочник событий. События формируют сообщения. Разделено по версиям посылок от телеметрии."); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryMessage", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Arg0") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("arg0") + .HasComment("Аргумент №0 для вставки в шаблон сообщения"); + + b.Property("Arg1") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("arg1"); + + b.Property("Arg2") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("arg2"); + + b.Property("Arg3") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("arg3"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.Property("IdEvent") + .HasColumnType("integer") + .HasColumnName("id_event"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdTelemetryUser") + .HasColumnType("integer") + .HasColumnName("id_telemetry_user") + .HasComment("Пользователь панели отправляющей телеметрию. не пользователь облака."); + + b.Property("WellDepth") + .HasColumnType("double precision") + .HasColumnName("well_depth"); + + b.HasKey("Id"); + + b.HasIndex("IdTelemetry"); + + b.ToTable("t_telemetry_message"); + + b.HasComment("Сообщения на буровых"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryUser", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.Property("Level") + .HasColumnType("integer") + .HasColumnName("level"); + + b.Property("Name") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("name"); + + b.Property("Patronymic") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("patronymic"); + + b.Property("Surname") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("surname"); + + b.HasKey("IdTelemetry", "IdUser"); + + b.ToTable("t_telemetry_user"); + + b.HasComment("Пользователи панели САУБ. Для сообщений."); + }); + + modelBuilder.Entity("AsbCloudDb.Model.TelemetryWirelineRunOut", b => + { + b.Property("IdTelemetry") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id_telemetry") + .HasComment("Идентификатор телеметрии"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("IdTelemetry")); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_time") + .HasComment("Отметка времени"); + + b.Property("Hauling") + .HasColumnType("real") + .HasColumnName("hauling") + .HasComment("Наработка талевого каната с момента перетяжки каната, т*км"); + + b.Property("HaulingWarnSp") + .HasColumnType("real") + .HasColumnName("hauling_warn_sp") + .HasComment("Наработка талевого каната до сигнализации о необходимости перетяжки, т*км"); + + b.Property("Replace") + .HasColumnType("real") + .HasColumnName("replace") + .HasComment("Наработка талевого каната с момента замены каната, т*км"); + + b.Property("ReplaceWarnSp") + .HasColumnType("real") + .HasColumnName("replace_warn_sp") + .HasComment("Наработка талевого каната до сигнализации о необходимости замены, т*км"); + + b.HasKey("IdTelemetry"); + + b.ToTable("t_telemetry_wireline_run_out"); + + b.HasComment("Наработка талевого каната"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Email") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("email") + .HasComment("должность"); + + b.Property("IdCompany") + .HasColumnType("integer") + .HasColumnName("id_company"); + + b.Property("IdState") + .HasColumnType("smallint") + .HasColumnName("state") + .HasComment("состояние:\n0 - не активен, \n1 - активен, \n2 - заблокирован"); + + b.Property("Login") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("login"); + + b.Property("Name") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("name") + .HasComment("имя"); + + b.Property("PasswordHash") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("password_hash") + .HasComment("соленый хэш пароля.\nпервые 5 символов - соль"); + + b.Property("Patronymic") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("patronymic") + .HasComment("отчество"); + + b.Property("Phone") + .HasMaxLength(50) + .HasColumnType("character varying(50)") + .HasColumnName("phone") + .HasComment("номер телефона"); + + b.Property("Position") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("position") + .HasComment("email"); + + b.Property("Surname") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("surname") + .HasComment("фамилия"); + + b.HasKey("Id"); + + b.HasIndex("IdCompany"); + + b.HasIndex("Login") + .IsUnique(); + + b.ToTable("t_user"); + + b.HasComment("Пользователи облака"); + + b.HasData( + new + { + Id = 1, + Email = "", + IdCompany = 1, + IdState = (short)1, + Login = "dev", + Name = "Разработчик", + PasswordHash = "Vlcj|4fa529103dde7ff72cfe76185f344d4aa87931f8e1b2044e8a7739947c3d18923464eaad93843e4f809c5e126d013072" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.UserRole", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption") + .HasComment("Название"); + + b.Property("IdType") + .HasColumnType("integer") + .HasColumnName("id_type") + .HasComment("0-роль из стандартной матрицы, \n1-специальная роль для какого-либо пользователя"); + + b.HasKey("Id"); + + b.ToTable("t_user_role"); + + b.HasComment("Роли пользователей в системе"); + + b.HasData( + new + { + Id = 1, + Caption = "root", + IdType = 1 + }, + new + { + Id = 1100, + Caption = "admin_cluster.view", + IdType = 1 + }, + new + { + Id = 1101, + Caption = "admin_cluster.edit", + IdType = 1 + }, + new + { + Id = 1102, + Caption = "admin_company.view", + IdType = 1 + }, + new + { + Id = 1103, + Caption = "admin_company.edit", + IdType = 1 + }, + new + { + Id = 1104, + Caption = "admin_company_type.view", + IdType = 1 + }, + new + { + Id = 1105, + Caption = "admin_company_type.edit", + IdType = 1 + }, + new + { + Id = 1106, + Caption = "admin_deposit.view", + IdType = 1 + }, + new + { + Id = 1107, + Caption = "admin_deposit.edit", + IdType = 1 + }, + new + { + Id = 1108, + Caption = "admin_permission.view", + IdType = 1 + }, + new + { + Id = 1109, + Caption = "admin_permission.edit", + IdType = 1 + }, + new + { + Id = 1110, + Caption = "admin_role.view", + IdType = 1 + }, + new + { + Id = 1111, + Caption = "admin_role.edit", + IdType = 1 + }, + new + { + Id = 1112, + Caption = "admin_telemetry.view", + IdType = 1 + }, + new + { + Id = 1113, + Caption = "admin_user.view", + IdType = 1 + }, + new + { + Id = 1114, + Caption = "admin_user.edit", + IdType = 1 + }, + new + { + Id = 1115, + Caption = "admin_visit_log.view", + IdType = 1 + }, + new + { + Id = 1116, + Caption = "admin_well.view", + IdType = 1 + }, + new + { + Id = 1117, + Caption = "admin_well.edit", + IdType = 1 + }, + new + { + Id = 1200, + Caption = "archive.view", + IdType = 1 + }, + new + { + Id = 1201, + Caption = "cluster.view", + IdType = 1 + }, + new + { + Id = 1202, + Caption = "composite.view", + IdType = 1 + }, + new + { + Id = 1203, + Caption = "composite.edit", + IdType = 1 + }, + new + { + Id = 1204, + Caption = "deposit.view", + IdType = 1 + }, + new + { + Id = 1205, + Caption = "document.view", + IdType = 1 + }, + new + { + Id = 1206, + Caption = "drillProcessFlow.view", + IdType = 1 + }, + new + { + Id = 1207, + Caption = "drillProcessFlow.edit", + IdType = 1 + }, + new + { + Id = 1208, + Caption = "measure.view", + IdType = 1 + }, + new + { + Id = 1209, + Caption = "measure.edit", + IdType = 1 + }, + new + { + Id = 1210, + Caption = "message.view", + IdType = 1 + }, + new + { + Id = 1211, + Caption = "operations.view", + IdType = 1 + }, + new + { + Id = 1212, + Caption = "operations.edit", + IdType = 1 + }, + new + { + Id = 1213, + Caption = "params.view", + IdType = 1 + }, + new + { + Id = 1214, + Caption = "params.edit", + IdType = 1 + }, + new + { + Id = 1215, + Caption = "report.view", + IdType = 1 + }, + new + { + Id = 1216, + Caption = "report.edit", + IdType = 1 + }, + new + { + Id = 1217, + Caption = "setpoints.view", + IdType = 1 + }, + new + { + Id = 1218, + Caption = "setpoints.edit", + IdType = 1 + }, + new + { + Id = 1219, + Caption = "telemetry.view", + IdType = 1 + }, + new + { + Id = 1220, + Caption = "telemetryAnalysis.view", + IdType = 1 + }, + new + { + Id = 1221, + Caption = "well.view", + IdType = 1 + }, + new + { + Id = 1500, + Caption = "Просмотр всего", + IdType = 1 + }, + new + { + Id = 1501, + Caption = "file.edit", + IdType = 1 + }, + new + { + Id = 1502, + Caption = "drillingProgram.edit", + IdType = 1 + }, + new + { + Id = 2000, + Caption = "Заказчик", + IdType = 0 + }, + new + { + Id = 2001, + Caption = "Супервайзер", + IdType = 0 + }, + new + { + Id = 2002, + Caption = "Буровой подрядчик", + IdType = 0 + }, + new + { + Id = 2003, + Caption = "Растворщик", + IdType = 0 + }, + new + { + Id = 2004, + Caption = "Телеметрист", + IdType = 0 + }, + new + { + Id = 2005, + Caption = "Долотный сервис", + IdType = 0 + }, + new + { + Id = 2006, + Caption = "ГТИ", + IdType = 0 + }, + new + { + Id = 2007, + Caption = "Цементирование", + IdType = 0 + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.UserSetting", b => + { + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.Property("Key") + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("key") + .HasComment("Ключ настроек пользователя"); + + b.Property("Value") + .HasColumnType("jsonb") + .HasColumnName("setting_value") + .HasComment("Значение настроек пользователя"); + + b.HasKey("IdUser", "Key"); + + b.ToTable("t_user_settings"); + + b.HasComment("настройки интерфейса пользователя"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Well", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption"); + + b.Property("IdCluster") + .HasColumnType("integer") + .HasColumnName("id_cluster"); + + b.Property("IdState") + .HasColumnType("integer") + .HasColumnName("state") + .HasComment("0 - неизвестно, 1 - в работе, 2 - завершена"); + + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("IdWellType") + .HasColumnType("integer") + .HasColumnName("id_well_type"); + + b.Property("Latitude") + .HasColumnType("double precision") + .HasColumnName("latitude"); + + b.Property("Longitude") + .HasColumnType("double precision") + .HasColumnName("longitude"); + + b.Property("Timezone") + .IsRequired() + .HasColumnType("jsonb") + .HasColumnName("timezone") + .HasComment("Смещение часового пояса от UTC"); + + b.HasKey("Id"); + + b.HasIndex("IdCluster"); + + b.HasIndex("IdTelemetry") + .IsUnique(); + + b.HasIndex("IdWellType"); + + b.ToTable("t_well"); + + b.HasComment("скважины"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellComposite", b => + { + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("Id скважины получателя"); + + b.Property("IdWellSrc") + .HasColumnType("integer") + .HasColumnName("id_well_src") + .HasComment("Id скважины композита"); + + b.Property("IdWellSectionType") + .HasColumnType("integer") + .HasColumnName("id_well_section_type") + .HasComment("Id тип секции композита"); + + b.HasKey("IdWell", "IdWellSrc", "IdWellSectionType"); + + b.HasIndex("IdWellSectionType"); + + b.HasIndex("IdWellSrc"); + + b.ToTable("t_well_composite"); + + b.HasComment("Композитная скважина"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellFinalDocument", b => + { + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well"); + + b.Property("IdUser") + .HasColumnType("integer") + .HasColumnName("id_user"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category"); + + b.HasKey("IdWell", "IdUser", "IdCategory") + .HasName("t_well_final_documents_pk"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdUser"); + + b.ToTable("t_well_final_documents"); + + b.HasComment("Дело скважины"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellOperation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("CategoryInfo") + .HasColumnType("text") + .HasColumnName("category_info") + .HasComment("Доп. информация к выбраной категории"); + + b.Property("Comment") + .HasColumnType("text") + .HasColumnName("comment") + .HasComment("Комментарий"); + + b.Property("DateStart") + .HasColumnType("timestamp with time zone") + .HasColumnName("date_start") + .HasComment("Дата начала операции"); + + b.Property("DepthEnd") + .HasColumnType("double precision") + .HasColumnName("depth_end") + .HasComment("Глубина после завершения операции, м"); + + b.Property("DepthStart") + .HasColumnType("double precision") + .HasColumnName("depth_start") + .HasComment("Глубина на начало операции, м"); + + b.Property("DurationHours") + .HasColumnType("double precision") + .HasColumnName("duration_hours") + .HasComment("Продолжительность, часы"); + + b.Property("IdCategory") + .HasColumnType("integer") + .HasColumnName("id_category") + .HasComment("Id категории операции"); + + b.Property("IdPlan") + .HasColumnType("integer") + .HasColumnName("id_plan") + .HasComment("Id плановой операции"); + + b.Property("IdType") + .HasColumnType("integer") + .HasColumnName("id_type") + .HasComment("0 = План или 1 = Факт"); + + b.Property("IdUser") + .HasColumnType("integer"); + + b.Property("IdWell") + .HasColumnType("integer") + .HasColumnName("id_well") + .HasComment("Id скважины"); + + b.Property("IdWellSectionType") + .HasColumnType("integer") + .HasColumnName("id_well_section_type") + .HasComment("Id тип секции скважины"); + + b.Property("LastUpdateDate") + .HasColumnType("timestamp with time zone"); + + b.HasKey("Id"); + + b.HasIndex("DateStart"); + + b.HasIndex("DepthEnd"); + + b.HasIndex("IdCategory"); + + b.HasIndex("IdPlan"); + + b.HasIndex("IdWell"); + + b.HasIndex("IdWellSectionType"); + + b.ToTable("t_well_operation"); + + b.HasComment("Данные по операциям на скважине"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellOperationCategory", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("IdParent") + .HasColumnType("integer") + .HasColumnName("id_parent") + .HasComment("id родительской категории"); + + b.Property("KeyValueName") + .HasMaxLength(32) + .HasColumnType("character varying(32)") + .HasColumnName("key_value_name") + .HasComment("Название ключевого показателя операции"); + + b.Property("KeyValueUnits") + .HasMaxLength(16) + .HasColumnType("character varying(16)") + .HasColumnName("key_value_units") + .HasComment("Единицы измерения ключевого показателя операции"); + + b.Property("Name") + .IsRequired() + .HasColumnType("text") + .HasColumnName("name") + .HasComment("Название категории операции"); + + b.HasKey("Id"); + + b.HasIndex("IdParent"); + + b.ToTable("t_well_operation_category"); + + b.HasComment("Справочник операций на скважине"); + + b.HasData( + new + { + Id = 3000, + KeyValueName = "dT", + KeyValueUnits = "м/ч", + Name = "БУРЕНИЕ" + }, + new + { + Id = 3001, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО" + }, + new + { + Id = 3002, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "КРЕПЛЕНИЕ" + }, + new + { + Id = 3003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ГФР" + }, + new + { + Id = 3004, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Вспомогательные операции" + }, + new + { + Id = 3005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Непроизводительное время (НПВ)" + }, + new + { + Id = 4000, + IdParent = 3000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "КНБК" + }, + new + { + Id = 4001, + IdParent = 3000, + KeyValueName = "dT", + KeyValueUnits = "м/ч", + Name = "Механическое. бурение" + }, + new + { + Id = 4002, + IdParent = 3000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Статический замер" + }, + new + { + Id = 4003, + IdParent = 3000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Нормализация диаметра скважины" + }, + new + { + Id = 4004, + IdParent = 3000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Наращивание" + }, + new + { + Id = 4005, + IdParent = 3001, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО" + }, + new + { + Id = 4006, + IdParent = 3002, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск обсадной колонны" + }, + new + { + Id = 4007, + IdParent = 3002, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Цементирование" + }, + new + { + Id = 4008, + IdParent = 3002, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Вспомогательные работы при креплении" + }, + new + { + Id = 4009, + IdParent = 3003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка/разборка приборов ГИС" + }, + new + { + Id = 4010, + IdParent = 3003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО" + }, + new + { + Id = 4011, + IdParent = 3003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ГИС" + }, + new + { + Id = 4012, + IdParent = 3004, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Промывка, ОБР" + }, + new + { + Id = 4013, + IdParent = 3004, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Вспомогательные работы" + }, + new + { + Id = 4014, + IdParent = 3005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ремонт оборудования" + }, + new + { + Id = 4015, + IdParent = 3005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Аварийные работы" + }, + new + { + Id = 4016, + IdParent = 3005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Осложнение" + }, + new + { + Id = 4017, + IdParent = 3005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Незаложенные в ГГД операции" + }, + new + { + Id = 5000, + IdParent = 4000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Разборка КНБК" + }, + new + { + Id = 5001, + IdParent = 4000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка КНБК" + }, + new + { + Id = 5002, + IdParent = 4001, + KeyValueName = "МСП", + KeyValueUnits = "м/ч", + Name = "Бурение слайдом" + }, + new + { + Id = 5003, + IdParent = 4001, + KeyValueName = "МСП", + KeyValueUnits = "м/ч", + Name = "Бурение ротором" + }, + new + { + Id = 5004, + IdParent = 4002, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Замер ЗТС (запись MWD)" + }, + new + { + Id = 5005, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Промывка перед наращиванием" + }, + new + { + Id = 5006, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Проработка во время бурения" + }, + new + { + Id = 5007, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Проработка перед наращиванием" + }, + new + { + Id = 5008, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Шаблонировка во время бурения" + }, + new + { + Id = 5009, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Шаблонировка перед наращиванием" + }, + new + { + Id = 5010, + IdParent = 4004, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Наращивание" + }, + new + { + Id = 5011, + IdParent = 4004, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Удержание в клиньях" + }, + new + { + Id = 5012, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Подъем инструмента" + }, + new + { + Id = 5013, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Подъем КНБК" + }, + new + { + Id = 5014, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск инструмента" + }, + new + { + Id = 5015, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск КНБК" + }, + new + { + Id = 5016, + IdParent = 4006, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Промывка при спуске ОК" + }, + new + { + Id = 5017, + IdParent = 4006, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск ОК" + }, + new + { + Id = 5018, + IdParent = 4007, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ОЗЦ" + }, + new + { + Id = 5019, + IdParent = 4007, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Цементирование" + }, + new + { + Id = 5020, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Опрессовка БИ" + }, + new + { + Id = 5021, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Опрессовка ОК" + }, + new + { + Id = 5022, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ПЗР при спуске ОК" + }, + new + { + Id = 5023, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ПЗР при цементировании" + }, + new + { + Id = 5024, + IdParent = 4009, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Разборка комплекса приборов ГИС" + }, + new + { + Id = 5025, + IdParent = 4009, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка комплекса приборов ГИС" + }, + new + { + Id = 5026, + IdParent = 4010, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Подъем приборов ГИС (на трубах)" + }, + new + { + Id = 5027, + IdParent = 4010, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск приборов ГИС (на трубах)" + }, + new + { + Id = 5028, + IdParent = 4011, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Комплекс ГИС на жестком кабеле" + }, + new + { + Id = 5029, + IdParent = 4011, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Комплекс ГИС на кабеле" + }, + new + { + Id = 5030, + IdParent = 4011, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Комплекс ГИС на трубах" + }, + new + { + Id = 5031, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Закачка/прокачка пачки" + }, + new + { + Id = 5032, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Обработка БР" + }, + new + { + Id = 5033, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ориентирование ТС при бурении" + }, + new + { + Id = 5034, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Перезапись гаммы-каротажа" + }, + new + { + Id = 5035, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Приготовление БР" + }, + new + { + Id = 5036, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Промывка" + }, + new + { + Id = 5037, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Разбуривание тех.оснастки" + }, + new + { + Id = 5038, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск инструмента с проработкой" + }, + new + { + Id = 5039, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ВМР" + }, + new + { + Id = 5040, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Демонтаж ПВО" + }, + new + { + Id = 5041, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Долив затруба при подъёме" + }, + new + { + Id = 5042, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Монтаж ПВО" + }, + new + { + Id = 5043, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Наработка жёлоба" + }, + new + { + Id = 5044, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Обвязка устья с циркуляционной системой" + }, + new + { + Id = 5045, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Оборудование устья" + }, + new + { + Id = 5046, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Опрессовка ПВО" + }, + new + { + Id = 5047, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Перемонтаж ПВО " + }, + new + { + Id = 5048, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Перетяжка талевого каната" + }, + new + { + Id = 5049, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ПЗР при сборке КНБК" + }, + new + { + Id = 5050, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Полная замена талевого каната" + }, + new + { + Id = 5051, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ПР перед забуркой направления" + }, + new + { + Id = 5052, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Продувка манифольда" + }, + new + { + Id = 5053, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Срезка" + }, + new + { + Id = 5054, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Тайм-дриллинг" + }, + new + { + Id = 5055, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Тех.отстой" + }, + new + { + Id = 5056, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Учебная тревога \"Выброс\"" + }, + new + { + Id = 5057, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Чистка ЦСГО/емкостного блока" + }, + new + { + Id = 5058, + IdParent = 4014, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ремонт бурового оборудования" + }, + new + { + Id = 5059, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ловильные работы" + }, + new + { + Id = 5060, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ожидание" + }, + new + { + Id = 5061, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Определение места прихвата и ЛМ" + }, + new + { + Id = 5062, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Работа яссом" + }, + new + { + Id = 5063, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Расхаживание" + }, + new + { + Id = 5064, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО - колокол" + }, + new + { + Id = 5065, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО - метчик" + }, + new + { + Id = 5066, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО - овершот" + }, + new + { + Id = 5067, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "СПО - труболовка" + }, + new + { + Id = 5068, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Торпедирование (встряхивание)" + }, + new + { + Id = 5069, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Торпедирование (отстрел)" + }, + new + { + Id = 5070, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Установка ванн" + }, + new + { + Id = 5071, + IdParent = 4015, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Фрезеровка" + }, + new + { + Id = 5072, + IdParent = 4016, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Контролируемое ГНВП" + }, + new + { + Id = 5073, + IdParent = 4016, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Поглощение" + }, + new + { + Id = 5074, + IdParent = 4016, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сальникообразование" + }, + new + { + Id = 5075, + IdParent = 4016, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Утяжеление БР" + }, + new + { + Id = 5076, + IdParent = 4017, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "НПВ / прочее" + }, + new + { + Id = 5077, + IdParent = 4017, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Обработка раствора (несоответствие параметров)" + }, + new + { + Id = 5078, + IdParent = 4017, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "подъем ОК" + }, + new + { + Id = 5079, + IdParent = 4017, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ревизия КНБК/инструмента/ЗТС" + }, + new + { + Id = 5082, + IdParent = 4000, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка устройства ориентирования КО" + }, + new + { + Id = 5083, + IdParent = 4003, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Проработка принудительная" + }, + new + { + Id = 5084, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Шаблонировка подъем БИ, продувка" + }, + new + { + Id = 5085, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск бурильного инструмента со сборкой с мостков" + }, + new + { + Id = 5086, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Подъем БИ с выбросом на мостки" + }, + new + { + Id = 5087, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск БИ со сборкой с мостков" + }, + new + { + Id = 5088, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка и спуск ТБТ" + }, + new + { + Id = 5089, + IdParent = 4005, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Спуск КО на транспотрной колонне" + }, + new + { + Id = 5090, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Отворот допускной трубы" + }, + new + { + Id = 5091, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Активация подвески, опрессовка" + }, + new + { + Id = 5092, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Монтаж, опрессовка ФА" + }, + new + { + Id = 5093, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка хвостовика 114мм (согласно схеме)" + }, + new + { + Id = 5094, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "ПЗР к спуску УЭЦН" + }, + new + { + Id = 5095, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Активация подвески (потайной колонны, хвостовика)" + }, + new + { + Id = 5096, + IdParent = 4008, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Шаблонирование перед спуском" + }, + new + { + Id = 5097, + IdParent = 4012, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Промывка - перевод скважины на новый раствор" + }, + new + { + Id = 5098, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Сборка БИ с мостков на подсвечник" + }, + new + { + Id = 5099, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Подготовка ствола скважины. Перезапись ГК в интервале установки КО." + }, + new + { + Id = 5100, + IdParent = 4013, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Смена рабочего переводника ВСП" + }, + new + { + Id = 5101, + IdParent = 4014, + KeyValueName = "dT", + KeyValueUnits = "мин", + Name = "Ремонт" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellSectionType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption") + .HasComment("Название"); + + b.Property("Order") + .HasColumnType("real") + .HasColumnName("order") + .HasComment("Порядок"); + + b.HasKey("Id"); + + b.ToTable("t_well_section_type"); + + b.HasComment("конструкция секции скважины"); + + b.HasData( + new + { + Id = 1, + Caption = "Пилотный ствол", + Order = 4f + }, + new + { + Id = 2, + Caption = "Направление", + Order = 0f + }, + new + { + Id = 3, + Caption = "Кондуктор", + Order = 1f + }, + new + { + Id = 4, + Caption = "Эксплуатационная колонна", + Order = 3f + }, + new + { + Id = 5, + Caption = "Транспортный ствол", + Order = 5f + }, + new + { + Id = 6, + Caption = "Хвостовик", + Order = 6f + }, + new + { + Id = 7, + Caption = "Пилотный ствол 2", + Order = 4.1f + }, + new + { + Id = 8, + Caption = "Направление 2", + Order = 0.1f + }, + new + { + Id = 9, + Caption = "Кондуктор 2", + Order = 1.1f + }, + new + { + Id = 10, + Caption = "Эксплуатационная колонна 2", + Order = 3.1f + }, + new + { + Id = 11, + Caption = "Транспортный ствол 2", + Order = 5.1f + }, + new + { + Id = 12, + Caption = "Хвостовик 2", + Order = 6.1f + }, + new + { + Id = 13, + Caption = "Пилотный ствол 3", + Order = 4.2f + }, + new + { + Id = 14, + Caption = "Направление 3", + Order = 0.2f + }, + new + { + Id = 15, + Caption = "Кондуктор 3", + Order = 1.2f + }, + new + { + Id = 16, + Caption = "Эксплуатационная колонна 3", + Order = 3.2f + }, + new + { + Id = 17, + Caption = "Транспортный ствол 3", + Order = 5.2f + }, + new + { + Id = 18, + Caption = "Хвостовик 3", + Order = 6.2f + }, + new + { + Id = 19, + Caption = "Пилотный ствол 4", + Order = 4.3f + }, + new + { + Id = 20, + Caption = "Направление 4", + Order = 0.3f + }, + new + { + Id = 21, + Caption = "Кондуктор 4", + Order = 1.3f + }, + new + { + Id = 22, + Caption = "Эксплуатационная колонна 4", + Order = 3.3f + }, + new + { + Id = 23, + Caption = "Транспортный ствол 4", + Order = 5.3f + }, + new + { + Id = 24, + Caption = "Хвостовик 4", + Order = 6.3f + }, + new + { + Id = 25, + Caption = "Пилотный ствол 5", + Order = 4.4f + }, + new + { + Id = 26, + Caption = "Направление 5", + Order = 0.4f + }, + new + { + Id = 27, + Caption = "Кондуктор 5", + Order = 1.4f + }, + new + { + Id = 28, + Caption = "Эксплуатационная колонна 5", + Order = 3.4f + }, + new + { + Id = 29, + Caption = "Транспортный ствол 5", + Order = 5.4f + }, + new + { + Id = 30, + Caption = "Хвостовик 5", + Order = 6.4f + }, + new + { + Id = 31, + Caption = "Техническая колонна", + Order = 2f + }, + new + { + Id = 32, + Caption = "Техническая колонна 2", + Order = 2.1f + }, + new + { + Id = 33, + Caption = "Техническая колонна 3", + Order = 2.2f + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellType", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasColumnName("id"); + + NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); + + b.Property("Caption") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("character varying(255)") + .HasColumnName("caption") + .HasComment("Название"); + + b.HasKey("Id"); + + b.ToTable("t_well_type"); + + b.HasComment("конструкция скважины"); + + b.HasData( + new + { + Id = 1, + Caption = "Наклонно-направленная" + }, + new + { + Id = 2, + Caption = "Горизонтальная" + }); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.RecordBase", b => + { + b.Property("IdTelemetry") + .HasColumnType("integer") + .HasColumnName("id_telemetry"); + + b.Property("DateTime") + .HasColumnType("timestamp with time zone") + .HasColumnName("date"); + + b.Property("Actcod") + .HasColumnType("smallint") + .HasColumnName("ACTCOD"); + + b.Property("Date") + .HasColumnType("integer") + .HasColumnName("DATE"); + + b.Property("Recid") + .HasColumnType("smallint") + .HasColumnName("RECID"); + + b.Property("Seqid") + .HasColumnType("integer") + .HasColumnName("SEQID"); + + b.Property("Stknum") + .HasColumnType("smallint") + .HasColumnName("STKNUM"); + + b.Property("Time") + .HasColumnType("integer") + .HasColumnName("TIME"); + + b.Property("Wellid") + .HasColumnType("text") + .HasColumnName("WELLID"); + + b.HasKey("IdTelemetry", "DateTime"); + + b.ToTable("t_telemetry_wits_base"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record1", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Blkpos") + .HasColumnType("real") + .HasColumnName("BLKPOS"); + + b.Property("Chkp") + .HasColumnType("real") + .HasColumnName("CHKP"); + + b.Property("Deptbitm") + .HasColumnType("real") + .HasColumnName("DEPTBITM"); + + b.Property("Deptbitv") + .HasColumnType("real") + .HasColumnName("DEPTBITV"); + + b.Property("Deptmeas") + .HasColumnType("real") + .HasColumnName("DEPTMEAS"); + + b.Property("Deptretm") + .HasColumnType("real") + .HasColumnName("DEPTRETM"); + + b.Property("Deptvert") + .HasColumnType("real") + .HasColumnName("DEPTVERT"); + + b.Property("Gasa") + .HasColumnType("real") + .HasColumnName("GASA"); + + b.Property("Hkla") + .HasColumnType("real") + .HasColumnName("HKLA"); + + b.Property("Hklx") + .HasColumnType("real") + .HasColumnName("HKLX"); + + b.Property("Lagstks") + .HasColumnType("smallint") + .HasColumnName("LAGSTKS"); + + b.Property("Mcia") + .HasColumnType("real") + .HasColumnName("MCIA"); + + b.Property("Mcoa") + .HasColumnType("real") + .HasColumnName("MCOA"); + + b.Property("Mdia") + .HasColumnType("real") + .HasColumnName("MDIA"); + + b.Property("Mdoa") + .HasColumnType("real") + .HasColumnName("MDOA"); + + b.Property("Mfia") + .HasColumnType("real") + .HasColumnName("MFIA"); + + b.Property("Mfoa") + .HasColumnType("real") + .HasColumnName("MFOA"); + + b.Property("Mfop") + .HasColumnType("smallint") + .HasColumnName("MFOP"); + + b.Property("Mtia") + .HasColumnType("real") + .HasColumnName("MTIA"); + + b.Property("Mtoa") + .HasColumnType("real") + .HasColumnName("MTOA"); + + b.Property("Ropa") + .HasColumnType("real") + .HasColumnName("ROPA"); + + b.Property("Rpma") + .HasColumnType("smallint") + .HasColumnName("RPMA"); + + b.Property("Spare1") + .HasColumnType("real") + .HasColumnName("SPARE1"); + + b.Property("Spare2") + .HasColumnType("real") + .HasColumnName("SPARE2"); + + b.Property("Spare3") + .HasColumnType("real") + .HasColumnName("SPARE3"); + + b.Property("Spare4") + .HasColumnType("real") + .HasColumnName("SPARE4"); + + b.Property("Spare5") + .HasColumnType("real") + .HasColumnName("SPARE5"); + + b.Property("Spm1") + .HasColumnType("smallint") + .HasColumnName("SPM1"); + + b.Property("Spm2") + .HasColumnType("smallint") + .HasColumnName("SPM2"); + + b.Property("Spm3") + .HasColumnType("smallint") + .HasColumnName("SPM3"); + + b.Property("Sppa") + .HasColumnType("real") + .HasColumnName("SPPA"); + + b.Property("Stkc") + .HasColumnType("integer") + .HasColumnName("STKC"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.Property("Torqa") + .HasColumnType("real") + .HasColumnName("TORQA"); + + b.Property("Torqx") + .HasColumnType("real") + .HasColumnName("TORQX"); + + b.Property("Tvolact") + .HasColumnType("real") + .HasColumnName("TVOLACT"); + + b.Property("Tvolcact") + .HasColumnType("real") + .HasColumnName("TVOLCACT"); + + b.Property("Woba") + .HasColumnType("real") + .HasColumnName("WOBA"); + + b.Property("Wobx") + .HasColumnType("real") + .HasColumnName("WOBX"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_1"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record50", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Deptbitm") + .HasColumnType("real") + .HasColumnName("DEPTBITM"); + + b.Property("DeptmeasGdpMc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_GDP_mc"); + + b.Property("DeptmeasMcrstat") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_MCRSTAT"); + + b.Property("DeptmeasRa33Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RA33_mc"); + + b.Property("DeptmeasRa33f2Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RA33F2_mc"); + + b.Property("DeptmeasRa33f4Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RA33F4_mc"); + + b.Property("DeptmeasRp33Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RP33_mc"); + + b.Property("DeptmeasRp33f2Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RP33F2_mc"); + + b.Property("DeptmeasRp33f4Mc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_RP33F4_mc"); + + b.Property("DeptmeasSlvlMc") + .HasColumnType("real") + .HasColumnName("DEPTMEAS_SLVL_mc"); + + b.Property("GdpMc") + .HasColumnType("real") + .HasColumnName("GDP_mc"); + + b.Property("Mcrstat") + .HasColumnType("real") + .HasColumnName("MCRSTAT"); + + b.Property("Ra33Mc") + .HasColumnType("real") + .HasColumnName("RA33_mc"); + + b.Property("Ra33f2Mc") + .HasColumnType("real") + .HasColumnName("RA33F2_mc"); + + b.Property("Ra33f4Mc") + .HasColumnType("real") + .HasColumnName("RA33F4_mc"); + + b.Property("Rp33Mc") + .HasColumnType("real") + .HasColumnName("RP33_mc"); + + b.Property("Rp33f2Mc") + .HasColumnType("real") + .HasColumnName("RP33F2_mc"); + + b.Property("Rp33f4Mc") + .HasColumnType("real") + .HasColumnName("RP33F4_mc"); + + b.Property("SlvlMc") + .HasColumnType("real") + .HasColumnName("SLVL_mc"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_50"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record60", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Btot") + .HasColumnType("real") + .HasColumnName("Btot"); + + b.Property("Bx") + .HasColumnType("real") + .HasColumnName("Bx"); + + b.Property("By") + .HasColumnType("real") + .HasColumnName("By"); + + b.Property("Bz") + .HasColumnType("real") + .HasColumnName("Bz"); + + b.Property("Deptbitm") + .HasColumnType("real") + .HasColumnName("DEPTBITM"); + + b.Property("Deptmeas") + .HasColumnType("real") + .HasColumnName("DEPTMEAS"); + + b.Property("Gtot") + .HasColumnType("real") + .HasColumnName("Gtot"); + + b.Property("Gx") + .HasColumnType("real") + .HasColumnName("Gx"); + + b.Property("Gy") + .HasColumnType("real") + .HasColumnName("Gy"); + + b.Property("Gz") + .HasColumnType("real") + .HasColumnName("Gz"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_60"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record61", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Att06h") + .HasColumnType("real") + .HasColumnName("ATT06H"); + + b.Property("Att06l") + .HasColumnType("real") + .HasColumnName("ATT06L"); + + b.Property("Att10h") + .HasColumnType("real") + .HasColumnName("ATT10H"); + + b.Property("Att10l") + .HasColumnType("real") + .HasColumnName("ATT10L"); + + b.Property("Deptbitm") + .HasColumnType("real") + .HasColumnName("DEPTBITM"); + + b.Property("Deptmeas") + .HasColumnType("real") + .HasColumnName("DEPTMEAS"); + + b.Property("Phl1f1") + .HasColumnType("real") + .HasColumnName("PHL1F1"); + + b.Property("Phl1f2") + .HasColumnType("real") + .HasColumnName("PHL1F2"); + + b.Property("Phl2f1") + .HasColumnType("real") + .HasColumnName("PHL2F1"); + + b.Property("Phl2f2") + .HasColumnType("real") + .HasColumnName("PHL2F2"); + + b.Property("Status") + .HasColumnType("real") + .HasColumnName("Status"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_61"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record7", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Deptmeas") + .HasColumnType("real") + .HasColumnName("DEPTMEAS"); + + b.Property("Deptsvym") + .HasColumnType("real") + .HasColumnName("DEPTSVYM"); + + b.Property("Deptsvyv") + .HasColumnType("real") + .HasColumnName("DEPTSVYV"); + + b.Property("Passnum") + .HasColumnType("smallint") + .HasColumnName("PASSNUM"); + + b.Property("Spare1") + .HasColumnType("real") + .HasColumnName("SPARE1"); + + b.Property("Spare2") + .HasColumnType("real") + .HasColumnName("SPARE2"); + + b.Property("Spare3") + .HasColumnType("real") + .HasColumnName("SPARE3"); + + b.Property("Spare4") + .HasColumnType("real") + .HasColumnName("SPARE4"); + + b.Property("Spare5") + .HasColumnType("real") + .HasColumnName("SPARE5"); + + b.Property("Svyazc") + .HasColumnType("real") + .HasColumnName("SVYAZC"); + + b.Property("Svyazu") + .HasColumnType("real") + .HasColumnName("SVYAZU"); + + b.Property("Svydls") + .HasColumnType("real") + .HasColumnName("SVYDLS"); + + b.Property("Svyew") + .HasColumnType("real") + .HasColumnName("SVYEW"); + + b.Property("Svygtf") + .HasColumnType("real") + .HasColumnName("SVYGTF"); + + b.Property("Svyinc") + .HasColumnType("real") + .HasColumnName("SVYINC"); + + b.Property("Svymtf") + .HasColumnType("real") + .HasColumnName("SVYMTF"); + + b.Property("Svyns") + .HasColumnType("real") + .HasColumnName("SVYNS"); + + b.Property("Svytype") + .HasColumnType("text") + .HasColumnName("SVYTYPE"); + + b.Property("Svywalk") + .HasColumnType("real") + .HasColumnName("SVYWALK"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_7"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WITS.Record8", b => + { + b.HasBaseType("AsbCloudDb.Model.WITS.RecordBase"); + + b.Property("Deptbitm") + .HasColumnType("real") + .HasColumnName("DEPTBITM"); + + b.Property("Deptbitv") + .HasColumnType("real") + .HasColumnName("DEPTBITV"); + + b.Property("Deptcalm") + .HasColumnType("real") + .HasColumnName("DEPTCALM"); + + b.Property("Deptcalv") + .HasColumnType("real") + .HasColumnName("DEPTCALV"); + + b.Property("Deptfdm") + .HasColumnType("real") + .HasColumnName("DEPTFDM"); + + b.Property("Deptfdv") + .HasColumnType("real") + .HasColumnName("DEPTFDV"); + + b.Property("Deptgr1m") + .HasColumnType("real") + .HasColumnName("DEPTGR1M"); + + b.Property("Deptgr1v") + .HasColumnType("real") + .HasColumnName("DEPTGR1V"); + + b.Property("Deptgr2m") + .HasColumnType("real") + .HasColumnName("DEPTGR2M"); + + b.Property("Deptgr2v") + .HasColumnType("real") + .HasColumnName("DEPTGR2V"); + + b.Property("Deptmeas") + .HasColumnType("real") + .HasColumnName("DEPTMEAS"); + + b.Property("Deptp1m") + .HasColumnType("real") + .HasColumnName("DEPTP1M"); + + b.Property("Deptp1v") + .HasColumnType("real") + .HasColumnName("DEPTP1V"); + + b.Property("Deptp2m") + .HasColumnType("real") + .HasColumnName("DEPTP2M"); + + b.Property("Deptp2v") + .HasColumnType("real") + .HasColumnName("DEPTP2V"); + + b.Property("Deptrs1m") + .HasColumnType("real") + .HasColumnName("DEPTRS1M"); + + b.Property("Deptrs1v") + .HasColumnType("real") + .HasColumnName("DEPTRS1V"); + + b.Property("Deptrs2m") + .HasColumnType("real") + .HasColumnName("DEPTRS2M"); + + b.Property("Deptrs2v") + .HasColumnType("real") + .HasColumnName("DEPTRS2V"); + + b.Property("Deptvert") + .HasColumnType("real") + .HasColumnName("DEPTVERT"); + + b.Property("Mclp") + .HasColumnType("real") + .HasColumnName("MCLP"); + + b.Property("Mfd") + .HasColumnType("real") + .HasColumnName("MFD"); + + b.Property("Mffp") + .HasColumnType("real") + .HasColumnName("MFFP"); + + b.Property("Mfpp") + .HasColumnType("real") + .HasColumnName("MFPP"); + + b.Property("Mfrann") + .HasColumnType("real") + .HasColumnName("MFRANN"); + + b.Property("Mfrpipe") + .HasColumnType("real") + .HasColumnName("MFRPIPE"); + + b.Property("Mftann") + .HasColumnType("real") + .HasColumnName("MFTANN"); + + b.Property("Mftpipe") + .HasColumnType("real") + .HasColumnName("MFTPIPE"); + + b.Property("Mg1") + .HasColumnType("real") + .HasColumnName("MG1"); + + b.Property("Mg1c") + .HasColumnType("real") + .HasColumnName("MG1C"); + + b.Property("Mg2") + .HasColumnType("real") + .HasColumnName("MG2"); + + b.Property("Mg2c") + .HasColumnType("real") + .HasColumnName("MG2C"); + + b.Property("Mpo1") + .HasColumnType("real") + .HasColumnName("MPO1"); + + b.Property("Mpo2") + .HasColumnType("real") + .HasColumnName("MPO2"); + + b.Property("Mr1") + .HasColumnType("real") + .HasColumnName("MR1"); + + b.Property("Mr1c") + .HasColumnType("real") + .HasColumnName("MR1C"); + + b.Property("Mr2") + .HasColumnType("real") + .HasColumnName("MR2"); + + b.Property("Mr2c") + .HasColumnType("real") + .HasColumnName("MR2C"); + + b.Property("Passnum") + .HasColumnType("smallint") + .HasColumnName("PASSNUM"); + + b.Property("Spare1") + .HasColumnType("real") + .HasColumnName("SPARE1"); + + b.Property("Spare2") + .HasColumnType("real") + .HasColumnName("SPARE2"); + + b.Property("Spare3") + .HasColumnType("real") + .HasColumnName("SPARE3"); + + b.Property("Spare4") + .HasColumnType("real") + .HasColumnName("SPARE4"); + + b.Property("Spare5") + .HasColumnType("real") + .HasColumnName("SPARE5"); + + b.Property("Spare6") + .HasColumnType("real") + .HasColumnName("SPARE6"); + + b.Property("Spare7") + .HasColumnType("real") + .HasColumnName("SPARE7"); + + b.Property("Spare8") + .HasColumnType("real") + .HasColumnName("SPARE8"); + + b.Property("Spare9") + .HasColumnType("real") + .HasColumnName("SPARE9"); + + b.Property("TelemetryId") + .HasColumnType("integer"); + + b.HasIndex("TelemetryId"); + + b.ToTable("t_telemetry_wits_8"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Cluster", b => + { + b.HasOne("AsbCloudDb.Model.Deposit", "Deposit") + .WithMany("Clusters") + .HasForeignKey("IdDeposit") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired() + .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.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.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.Faq", b => + { + b.HasOne("AsbCloudDb.Model.User", "AuthorAnswer") + .WithMany() + .HasForeignKey("IdAuthorAnswer"); + + b.HasOne("AsbCloudDb.Model.User", "AuthorQuestion") + .WithMany() + .HasForeignKey("IdAuthorQuestion") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("AuthorAnswer"); + + b.Navigation("AuthorQuestion"); + }); + + 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.GTR.WitsItemFloat", b => + { + b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") + .WithMany() + .HasForeignKey("IdTelemetry") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Telemetry"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.GTR.WitsItemInt", b => + { + b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") + .WithMany() + .HasForeignKey("IdTelemetry") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Telemetry"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.GTR.WitsItemString", b => + { + b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") + .WithMany() + .HasForeignKey("IdTelemetry") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Telemetry"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.HelpPage", b => + { + b.HasOne("AsbCloudDb.Model.FileCategory", "FileCategory") + .WithMany() + .HasForeignKey("IdCategory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("FileCategory"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.LimitingParameter", b => + { + b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") + .WithMany() + .HasForeignKey("IdTelemetry") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Telemetry"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Manuals.Manual", b => + { + b.HasOne("AsbCloudDb.Model.User", "Author") + .WithMany() + .HasForeignKey("IdAuthor") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.FileCategory", "Category") + .WithMany() + .HasForeignKey("IdCategory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.Manuals.ManualDirectory", "Directory") + .WithMany("Manuals") + .HasForeignKey("IdDirectory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Author"); + + b.Navigation("Category"); + + b.Navigation("Directory"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Manuals.ManualDirectory", b => + { + b.HasOne("AsbCloudDb.Model.Manuals.ManualDirectory", "Parent") + .WithMany("Children") + .HasForeignKey("IdParent") + .OnDelete(DeleteBehavior.Cascade); + + b.Navigation("Parent"); + }); + + 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.Notification", b => + { + b.HasOne("AsbCloudDb.Model.NotificationCategory", "NotificationCategory") + .WithMany("Notifications") + .HasForeignKey("IdNotificationCategory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.User", "User") + .WithMany() + .HasForeignKey("IdUser") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("NotificationCategory"); + + b.Navigation("User"); + }); + + 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.PlannedTrajectory", b => + { + b.HasOne("AsbCloudDb.Model.User", "User") + .WithMany() + .HasForeignKey("IdUser") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.Well", "Well") + .WithMany() + .HasForeignKey("IdWell") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + + b.Navigation("Well"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.ProcessMap", b => + { + b.HasOne("AsbCloudDb.Model.Well", "Well") + .WithMany("ProcessMaps") + .HasForeignKey("IdWell") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.WellSectionType", "WellSectionType") + .WithMany() + .HasForeignKey("IdWellSectionType") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Well"); + + b.Navigation("WellSectionType"); + }); + + 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.RelationContactWell", b => + { + b.HasOne("AsbCloudDb.Model.User", "User") + .WithMany("RelationContactsWells") + .HasForeignKey("IdUser") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.Well", "Well") + .WithMany() + .HasForeignKey("IdWell") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + + 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.Subsystems.SubsystemOperationTime", b => + { + b.HasOne("AsbCloudDb.Model.Subsystems.Subsystem", "Subsystem") + .WithMany() + .HasForeignKey("IdSubsystem") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.Telemetry", "Telemetry") + .WithMany() + .HasForeignKey("IdTelemetry") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Subsystem"); + + b.Navigation("Telemetry"); + }); + + 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) + .IsRequired() + .HasConstraintName("t_user_t_company_id_fk"); + + b.Navigation("Company"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.UserSetting", b => + { + b.HasOne("AsbCloudDb.Model.User", "User") + .WithMany() + .HasForeignKey("IdUser") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.Well", b => + { + b.HasOne("AsbCloudDb.Model.Cluster", "Cluster") + .WithMany("Wells") + .HasForeignKey("IdCluster") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired() + .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") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + 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.WellFinalDocument", b => + { + b.HasOne("AsbCloudDb.Model.FileCategory", "Category") + .WithMany() + .HasForeignKey("IdCategory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.User", "User") + .WithMany() + .HasForeignKey("IdUser") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.Well", "Well") + .WithMany() + .HasForeignKey("IdWell") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Category"); + + b.Navigation("User"); + + b.Navigation("Well"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellOperation", b => + { + b.HasOne("AsbCloudDb.Model.WellOperationCategory", "OperationCategory") + .WithMany() + .HasForeignKey("IdCategory") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("AsbCloudDb.Model.WellOperation", "OperationPlan") + .WithMany() + .HasForeignKey("IdPlan"); + + 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("OperationPlan"); + + b.Navigation("Well"); + + b.Navigation("WellSectionType"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellOperationCategory", b => + { + b.HasOne("AsbCloudDb.Model.WellOperationCategory", "Parent") + .WithMany() + .HasForeignKey("IdParent"); + + b.Navigation("Parent"); + }); + + 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.Manuals.ManualDirectory", b => + { + b.Navigation("Children"); + + b.Navigation("Manuals"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.MeasureCategory", b => + { + b.Navigation("Measures"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.NotificationCategory", b => + { + b.Navigation("Notifications"); + }); + + 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("RelationContactsWells"); + + 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("ProcessMaps"); + + b.Navigation("RelationCompaniesWells"); + + b.Navigation("WellCompositeSrcs"); + + b.Navigation("WellComposites"); + + b.Navigation("WellOperations"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellSectionType", b => + { + b.Navigation("WellComposites"); + + b.Navigation("WellOperations"); + }); + + modelBuilder.Entity("AsbCloudDb.Model.WellType", b => + { + b.Navigation("Wells"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.cs b/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.cs new file mode 100644 index 00000000..8217925d --- /dev/null +++ b/AsbCloudDb/Migrations/20230925081405_Add_New_Permission_For_Manuals.cs @@ -0,0 +1,35 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace AsbCloudDb.Migrations +{ + public partial class Add_New_Permission_For_Manuals : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.InsertData( + table: "t_permission", + columns: new[] { "id", "description", "name" }, + values: new object[] { 527, "Разрешение на удаление инструкций", "Manual.delete" }); + + migrationBuilder.InsertData( + table: "t_relation_user_role_permission", + columns: new[] { "id_permission", "id_user_role" }, + values: new object[] { 527, 1 }); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DeleteData( + table: "t_relation_user_role_permission", + keyColumns: new[] { "id_permission", "id_user_role" }, + keyValues: new object[] { 527, 1 }); + + migrationBuilder.DeleteData( + table: "t_permission", + keyColumn: "id", + keyValue: 527); + } + } +} diff --git a/AsbCloudDb/Migrations/AsbCloudDbContextModelSnapshot.cs b/AsbCloudDb/Migrations/AsbCloudDbContextModelSnapshot.cs index ee655b87..14dc227a 100644 --- a/AsbCloudDb/Migrations/AsbCloudDbContextModelSnapshot.cs +++ b/AsbCloudDb/Migrations/AsbCloudDbContextModelSnapshot.cs @@ -2274,6 +2274,12 @@ namespace AsbCloudDb.Migrations Id = 526, Description = "Разрешение на редактирование операций у завершенной скважины", Name = "WellOperation.editCompletedWell" + }, + new + { + Id = 527, + Description = "Разрешение на удаление инструкций", + Name = "Manual.delete" }); }); @@ -3836,6 +3842,11 @@ namespace AsbCloudDb.Migrations { IdUserRole = 1, IdPermission = 526 + }, + new + { + IdUserRole = 1, + IdPermission = 527 }); }); diff --git a/AsbCloudDb/Model/DefaultData/EntityFillerPermission.cs b/AsbCloudDb/Model/DefaultData/EntityFillerPermission.cs index e8258a35..3cabad97 100644 --- a/AsbCloudDb/Model/DefaultData/EntityFillerPermission.cs +++ b/AsbCloudDb/Model/DefaultData/EntityFillerPermission.cs @@ -161,7 +161,9 @@ new() { Id = 524, Name = "Manual.get", Description = "Разрешить получение инструкций"}, new (){ Id = 525, Name = "ProcessMap.editCompletedWell", Description = "Разрешение на редактирование РТК у завершенной скважины"}, - new (){ Id = 526, Name = "WellOperation.editCompletedWell", Description = "Разрешение на редактирование операций у завершенной скважины"} + new (){ Id = 526, Name = "WellOperation.editCompletedWell", Description = "Разрешение на редактирование операций у завершенной скважины"}, + + new() { Id = 527, Name = "Manual.delete", Description = "Разрешение на удаление инструкций"} }; } } diff --git a/AsbCloudWebApi/Controllers/ManualController.cs b/AsbCloudWebApi/Controllers/ManualController.cs index 6da171a5..8c01b873 100644 --- a/AsbCloudWebApi/Controllers/ManualController.cs +++ b/AsbCloudWebApi/Controllers/ManualController.cs @@ -2,7 +2,6 @@ using System.ComponentModel.DataAnnotations; using System.Threading; using System.Threading.Tasks; using AsbCloudApp.Exceptions; -using AsbCloudApp.Repositories; using AsbCloudApp.Services; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; @@ -16,13 +15,10 @@ namespace AsbCloudWebApi.Controllers; public class ManualController : ControllerBase { private readonly IManualCatalogService manualCatalogService; - private readonly IUserRepository userRepository; - public ManualController(IManualCatalogService manualCatalogService, - IUserRepository userRepository) + public ManualController(IManualCatalogService manualCatalogService) { this.manualCatalogService = manualCatalogService; - this.userRepository = userRepository; } /// @@ -46,8 +42,6 @@ public class ManualController : ControllerBase if(!idUser.HasValue) throw new ForbidException("Не удается вас опознать"); - AssertUserHasAccessToManual("Manual.edit"); - using var fileStream = file.OpenReadStream(); var id = await manualCatalogService.SaveFileAsync(idDirectory, idUser.Value, file.FileName, fileStream, cancellationToken); @@ -68,8 +62,6 @@ public class ManualController : ControllerBase [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task GetFileAsync(int id, CancellationToken cancellationToken) { - AssertUserHasAccessToManual("Manual.get"); - var file = await manualCatalogService.GetFileAsync(id, cancellationToken); if (!file.HasValue) @@ -90,16 +82,6 @@ public class ManualController : ControllerBase [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task DeleteFileAsync(int id, CancellationToken cancellationToken) { - AssertUserHasAccessToManual("Manual.edit"); - return Ok(await manualCatalogService.DeleteFileAsync(id, cancellationToken)); } - - private void AssertUserHasAccessToManual(string permissionName) - { - var idUser = User.GetUserId(); - - if (!idUser.HasValue || !userRepository.HasPermission(idUser.Value, permissionName)) - throw new ForbidException("У вас недостаточно прав"); - } } \ No newline at end of file diff --git a/AsbCloudWebApi/Controllers/ManualDirectoryController.cs b/AsbCloudWebApi/Controllers/ManualDirectoryController.cs index 73c247ac..f53da16a 100644 --- a/AsbCloudWebApi/Controllers/ManualDirectoryController.cs +++ b/AsbCloudWebApi/Controllers/ManualDirectoryController.cs @@ -2,7 +2,6 @@ using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using AsbCloudApp.Data.Manuals; -using AsbCloudApp.Exceptions; using AsbCloudApp.Repositories; using AsbCloudApp.Services; using Microsoft.AspNetCore.Authorization; @@ -17,15 +16,12 @@ public class ManualDirectoryController : ControllerBase { private readonly IManualDirectoryRepository manualDirectoryRepository; private readonly IManualCatalogService manualCatalogService; - private readonly IUserRepository userRepository; public ManualDirectoryController(IManualDirectoryRepository manualDirectoryRepository, - IManualCatalogService manualCatalogService, - IUserRepository userRepository) + IManualCatalogService manualCatalogService) { this.manualDirectoryRepository = manualDirectoryRepository; this.manualCatalogService = manualCatalogService; - this.userRepository = userRepository; } /// @@ -36,14 +32,12 @@ public class ManualDirectoryController : ControllerBase /// /// [HttpPost] - [Permission] + [Permission("Manual.edit")] [ProducesResponseType(typeof(int), StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task AddDirectoryAsync(string name, int? idParent, CancellationToken cancellationToken) { - AssertUserHasAccessToManualDirectory("Manual.edit"); - return Ok(await manualCatalogService.AddDirectoryAsync(name, idParent, cancellationToken)); } @@ -55,13 +49,11 @@ public class ManualDirectoryController : ControllerBase /// /// [HttpPut] - [Permission] + [Permission("Manual.edit")] [ProducesResponseType(StatusCodes.Status400BadRequest)] [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task UpdateDirectoryAsync(int id, string name, CancellationToken cancellationToken) { - AssertUserHasAccessToManualDirectory("Manual.edit"); - await manualCatalogService.UpdateDirectoryAsync(id, name, cancellationToken); return Ok(); @@ -74,13 +66,11 @@ public class ManualDirectoryController : ControllerBase /// /// [HttpDelete] - [Permission] + [Permission("Manual.delete")] [ProducesResponseType(typeof(int), StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task DeleteDirectoryAsync(int id, CancellationToken cancellationToken) { - AssertUserHasAccessToManualDirectory("Manual.edit"); - return Ok(await manualCatalogService.DeleteDirectoryAsync(id, cancellationToken)); } @@ -90,21 +80,11 @@ public class ManualDirectoryController : ControllerBase /// /// [HttpGet] - [Permission] + [Permission("Manual.get")] [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status403Forbidden)] public async Task GetAsync(CancellationToken cancellationToken) { - AssertUserHasAccessToManualDirectory("Manual.get"); - return Ok(await manualDirectoryRepository.GetTreeAsync(cancellationToken)); } - - private void AssertUserHasAccessToManualDirectory(string permissionName) - { - var idUser = User.GetUserId(); - - if (!idUser.HasValue || !userRepository.HasPermission(idUser.Value, permissionName)) - throw new ForbidException("У вас недостаточно прав"); - } } \ No newline at end of file From d88ea454a8e24dca13b9985ef82b08b437126c6e Mon Sep 17 00:00:00 2001 From: ngfrolov Date: Tue, 26 Sep 2023 17:05:01 +0500 Subject: [PATCH 2/2] =?UTF-8?q?#20402628=20Fix=20report.=20-=20=D0=90?= =?UTF-8?q?=D1=82=D1=80=D0=B8=D0=B1=D1=83=D1=82=20=D0=B2=D0=B0=D0=BB=D0=B8?= =?UTF-8?q?=D0=B4=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B4=D0=B0=D1=82=D1=8B=20-?= =?UTF-8?q?=20=D0=94=D0=B0=D1=82=D1=8B=20=D0=BF=D0=BE=20=D1=83=D0=BC=D0=BE?= =?UTF-8?q?=D0=BB=D1=87=D0=B0=D0=BD=D0=B8=D1=8E=20-=20=D0=BC=D0=B8=D0=BD?= =?UTF-8?q?=20=D0=B8=20=D0=BC=D0=B0=D0=BA=D1=81=20=D0=B4=D0=B0=D1=82=D0=B0?= =?UTF-8?q?=20=D0=BF=D0=BE=20=D1=82=D0=B5=D0=BB=D0=B5=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D1=80=D0=B8=D0=B8=20=D0=A1=D0=90=D0=A3=D0=91.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Requests/ReportParametersRequest.cs | 11 +- .../AsbCloudInfrastructure.csproj | 12 +- .../CommonLibs/AsbSaubReport.dll | Bin 17408 -> 0 bytes .../CommonLibs/AsbSaubReportLas.dll | Bin 16896 -> 0 bytes .../CommonLibs/AsbSaubReportPdf.deps.json | 1378 ----------------- .../CommonLibs/AsbSaubReportPdf.dll | Bin 451584 -> 0 bytes .../ReportDataSourcePgCloud.cs | 1 - .../Services/ReportService.cs | 8 + AsbCloudWebApi/wwwroot/index.html | 2 +- 9 files changed, 19 insertions(+), 1393 deletions(-) delete mode 100644 AsbCloudInfrastructure/CommonLibs/AsbSaubReport.dll delete mode 100644 AsbCloudInfrastructure/CommonLibs/AsbSaubReportLas.dll delete mode 100644 AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.deps.json delete mode 100644 AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.dll diff --git a/AsbCloudApp/Requests/ReportParametersRequest.cs b/AsbCloudApp/Requests/ReportParametersRequest.cs index d01259d4..465662e1 100644 --- a/AsbCloudApp/Requests/ReportParametersRequest.cs +++ b/AsbCloudApp/Requests/ReportParametersRequest.cs @@ -1,3 +1,4 @@ +using AsbCloudApp.ValidationAttributes; using System; namespace AsbCloudApp.Requests; @@ -20,10 +21,12 @@ public class ReportParametersRequest /// /// Дата начала интервала /// + [DateValidation(GtDate ="2000-01-01")] public DateTime Begin { get; set; } = default; - /// - /// Дата окончания интервала - /// - public DateTime End { get; set; } = default; + /// + /// Дата окончания интервала + /// + [DateValidation(GtDate ="2000-01-01")] + public DateTime End { get; set; } = default; } \ No newline at end of file diff --git a/AsbCloudInfrastructure/AsbCloudInfrastructure.csproj b/AsbCloudInfrastructure/AsbCloudInfrastructure.csproj index d807a6c8..72ed00c1 100644 --- a/AsbCloudInfrastructure/AsbCloudInfrastructure.csproj +++ b/AsbCloudInfrastructure/AsbCloudInfrastructure.csproj @@ -40,6 +40,9 @@ + + + @@ -59,15 +62,6 @@ - - CommonLibs\AsbSaubReport.dll - - - CommonLibs\AsbSaubReportLas.dll - - - CommonLibs\AsbSaubReportPdf.dll - CommonLibs\AsbWitsInfo.dll diff --git a/AsbCloudInfrastructure/CommonLibs/AsbSaubReport.dll b/AsbCloudInfrastructure/CommonLibs/AsbSaubReport.dll deleted file mode 100644 index b9260919993494519b90d28e7a99d046f7305953..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17408 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 diff --git a/AsbCloudInfrastructure/CommonLibs/AsbSaubReportLas.dll b/AsbCloudInfrastructure/CommonLibs/AsbSaubReportLas.dll deleted file mode 100644 index 0c88a8225bcf2a7eb6f778183b07f91a3925d251..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16896 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 C`$a1N diff --git a/AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.deps.json b/AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.deps.json deleted file mode 100644 index 0fb1131e..00000000 --- a/AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.deps.json +++ /dev/null @@ -1,1378 +0,0 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v6.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v6.0": { - "AsbSaubReportPdf/1.0.0": { - "dependencies": { - "AsbSaubReport": "1.0.0", - "itext7": "7.2.0" - }, - "runtime": { - "AsbSaubReportPdf.dll": {} - } - }, - "itext7/7.2.0": { - "dependencies": { - "Microsoft.DotNet.PlatformAbstractions": "1.1.0", - "Microsoft.Extensions.DependencyModel": "1.1.0", - "Microsoft.Extensions.Logging": "5.0.0", - "Portable.BouncyCastle": "1.8.9", - "System.Collections.NonGeneric": "4.3.0", - "System.Diagnostics.Process": "4.3.0", - "System.Globalization.Extensions": "4.3.0", - "System.Runtime.Loader": "4.3.0", - "System.Runtime.Serialization.Formatters": "4.3.0", - "System.Security.Cryptography.Csp": "4.3.0", - "System.Text.Encoding.CodePages": "4.3.0", - "System.Threading.Thread": "4.3.0", - "System.Threading.ThreadPool": "4.3.0", - "System.Xml.XmlDocument": "4.3.0", - "itext7.commons": "7.2.0" - }, - "runtime": { - "lib/netstandard2.0/itext.barcodes.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.forms.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.io.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.kernel.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.layout.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.pdfa.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.sign.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.styledxmlparser.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - }, - "lib/netstandard2.0/itext.svg.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - } - } - }, - "itext7.commons/7.2.0": { - "dependencies": { - "Microsoft.Extensions.Logging": "5.0.0" - }, - "runtime": { - "lib/netstandard2.0/itext.commons.dll": { - "assemblyVersion": "7.2.0.0", - "fileVersion": "7.2.0.0" - } - } - }, - "Microsoft.CSharp/4.0.1": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Dynamic.Runtime": "4.0.11", - "System.Globalization": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.1.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.0.1", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "Microsoft.DotNet.PlatformAbstractions/1.1.0": { - "dependencies": { - "System.AppContext": "4.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.0.0" - }, - "runtime": { - "lib/netstandard1.3/Microsoft.DotNet.PlatformAbstractions.dll": { - "assemblyVersion": "1.1.0.0", - "fileVersion": "1.1.0.0" - } - } - }, - "Microsoft.Extensions.DependencyInjection/5.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0" - }, - "runtime": { - "lib/net5.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.Extensions.DependencyModel/1.1.0": { - "dependencies": { - "Microsoft.DotNet.PlatformAbstractions": "1.1.0", - "Newtonsoft.Json": "9.0.1", - "System.Diagnostics.Debug": "4.3.0", - "System.Dynamic.Runtime": "4.0.11", - "System.Linq": "4.3.0" - }, - "runtime": { - "lib/netstandard1.6/Microsoft.Extensions.DependencyModel.dll": { - "assemblyVersion": "1.1.0.0", - "fileVersion": "1.1.0.0" - } - } - }, - "Microsoft.Extensions.Logging/5.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "5.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0", - "Microsoft.Extensions.Logging.Abstractions": "5.0.0", - "Microsoft.Extensions.Options": "5.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/5.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.Extensions.Options/5.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "5.0.0", - "Microsoft.Extensions.Primitives": "5.0.0" - }, - "runtime": { - "lib/net5.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.Extensions.Primitives/5.0.0": { - "runtime": { - "lib/netcoreapp3.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.0.20.51904" - } - } - }, - "Microsoft.NETCore.Platforms/1.1.0": {}, - "Microsoft.NETCore.Targets/1.1.0": {}, - "Microsoft.Win32.Primitives/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "Microsoft.Win32.Registry/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - } - }, - "Newtonsoft.Json/9.0.1": { - "dependencies": { - "Microsoft.CSharp": "4.0.1", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Dynamic.Runtime": "4.0.11", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.1.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.0.1", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Serialization.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0", - "System.Xml.XDocument": "4.0.11" - }, - "runtime": { - "lib/netstandard1.0/Newtonsoft.Json.dll": { - "assemblyVersion": "9.0.0.0", - "fileVersion": "9.0.1.19813" - } - } - }, - "Portable.BouncyCastle/1.8.9": { - "runtime": { - "lib/netstandard2.0/BouncyCastle.Crypto.dll": { - "assemblyVersion": "1.8.9.0", - "fileVersion": "1.8.9.1" - } - } - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.native.System/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "dependencies": { - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" - } - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "dependencies": { - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": {}, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "System.AppContext/4.1.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Collections/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Collections.Concurrent/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Collections.NonGeneric/4.3.0": { - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Diagnostics.Debug/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.Process/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.Win32.Primitives": "4.3.0", - "Microsoft.Win32.Registry": "4.3.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Thread": "4.3.0", - "System.Threading.ThreadPool": "4.3.0", - "runtime.native.System": "4.3.0" - } - }, - "System.Diagnostics.Tools/4.0.1": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.Tracing/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Dynamic.Runtime/4.0.11": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.1.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.0.1", - "System.Reflection.Emit.ILGeneration": "4.0.1", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Globalization/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - } - }, - "System.IO/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.FileSystem/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Linq/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Linq.Expressions/4.1.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.0.1", - "System.Reflection.Emit.ILGeneration": "4.0.1", - "System.Reflection.Emit.Lightweight": "4.0.1", - "System.Reflection.Extensions": "4.0.1", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.1.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.ObjectModel/4.0.12": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Reflection/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit/4.0.1": { - "dependencies": { - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.0.1", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit.ILGeneration/4.0.1": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit.Lightweight/4.0.1": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.0.1", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Extensions/4.0.1": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Primitives/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.TypeExtensions/4.1.0": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Resources.ResourceManager/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "System.Runtime.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.Handles/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.InteropServices/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0" - } - }, - "System.Runtime.Loader/4.3.0": { - "dependencies": { - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.Numerics/4.3.0": { - "dependencies": { - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Runtime.Serialization.Formatters/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Serialization.Primitives": "4.3.0" - } - }, - "System.Runtime.Serialization.Primitives/4.3.0": { - "dependencies": { - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.Apple": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Csp/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Linq": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Text.Encoding/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Text.Encoding.CodePages/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Text.Encoding.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Text.RegularExpressions/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Threading/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Tasks/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Thread/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Threading.ThreadPool/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Xml.ReaderWriter/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Tasks.Extensions": "4.3.0" - } - }, - "System.Xml.XDocument/4.0.11": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.0.1", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - } - }, - "System.Xml.XmlDocument/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - } - }, - "AsbSaubReport/1.0.0": { - "runtime": { - "AsbSaubReport.dll": {} - } - } - } - }, - "libraries": { - "AsbSaubReportPdf/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "itext7/7.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1MkQiUY0pCevnKWrY/le7BiW/oV/9CLwB2jGD6xfs0tepE5eU5BTSlabgYq7oWZP8OB7KXoGySMqP+Ugj6MeOA==", - "path": "itext7/7.2.0", - "hashPath": "itext7.7.2.0.nupkg.sha512" - }, - "itext7.commons/7.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bfysIirFpBOTc/mSfElJMOy9D/I2LTLeL0uae7xNgV4Vv7P2HF2n2/CJRTe9iZFsL3r8JdH0hd+eusnt0BjA8w==", - "path": "itext7.commons/7.2.0", - "hashPath": "itext7.commons.7.2.0.nupkg.sha512" - }, - "Microsoft.CSharp/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-17h8b5mXa87XYKrrVqdgZ38JefSUqLChUQpXgSnpzsM0nDOhE40FTeNWOJ/YmySGV6tG6T8+hjz6vxbknHJr6A==", - "path": "microsoft.csharp/4.0.1", - "hashPath": "microsoft.csharp.4.0.1.nupkg.sha512" - }, - "Microsoft.DotNet.PlatformAbstractions/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Bl6KYfbFSIW3QIRHAp931iR5h01qHjKghdpAtncwbzNUs0+IUZ+XfwkIU0sQsR33ufGvi3u4dZMIYYFysjpHAA==", - "path": "microsoft.dotnet.platformabstractions/1.1.0", - "hashPath": "microsoft.dotnet.platformabstractions.1.1.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Rc2kb/p3Ze6cP6rhFC3PJRdWGbLvSHZc0ev7YlyeU6FmHciDMLrhoVoTUEzKPhN5ZjFgKF1Cf5fOz8mCMIkvpA==", - "path": "microsoft.extensions.dependencyinjection/5.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.5.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ORj7Zh81gC69TyvmcUm9tSzytcy8AVousi+IVRAI8nLieQjOFryRusSFh7+aLk16FN9pQNqJAiMd7BTKINK0kA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/5.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.5.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyModel/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-TG7dJ8GY1Myz9lZ8DJL4i6D05ncJQBi5CjBMXMdJ4edKxaW+vP2DndDd1jJabdMdmVRdGrvybzqkB+A6Df7eDw==", - "path": "microsoft.extensions.dependencymodel/1.1.0", - "hashPath": "microsoft.extensions.dependencymodel.1.1.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MgOwK6tPzB6YNH21wssJcw/2MKwee8b2gI7SllYfn6rvTpIrVvVS5HAjSU2vqSku1fwqRvWP0MdIi14qjd93Aw==", - "path": "microsoft.extensions.logging/5.0.0", - "hashPath": "microsoft.extensions.logging.5.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-NxP6ahFcBnnSfwNBi2KH2Oz8Xl5Sm2krjId/jRR3I7teFphwiUoUeZPwTNA21EX+5PtjqmyAvKaOeBXcJjcH/w==", - "path": "microsoft.extensions.logging.abstractions/5.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.5.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-CBvR92TCJ5uBIdd9/HzDSrxYak+0W/3+yxrNg8Qm6Bmrkh5L+nu6m3WeazQehcZ5q1/6dDA7J5YdQjim0165zg==", - "path": "microsoft.extensions.options/5.0.0", - "hashPath": "microsoft.extensions.options.5.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/5.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-cI/VWn9G1fghXrNDagX9nYaaB/nokkZn0HYAawGaELQrl8InSezfe9OnfPZLcJq3esXxygh3hkq2c3qoV3SDyQ==", - "path": "microsoft.extensions.primitives/5.0.0", - "hashPath": "microsoft.extensions.primitives.5.0.0.nupkg.sha512" - }, - "Microsoft.NETCore.Platforms/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", - "path": "microsoft.netcore.platforms/1.1.0", - "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512" - }, - "Microsoft.NETCore.Targets/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", - "path": "microsoft.netcore.targets/1.1.0", - "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512" - }, - "Microsoft.Win32.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", - "path": "microsoft.win32.primitives/4.3.0", - "hashPath": "microsoft.win32.primitives.4.3.0.nupkg.sha512" - }, - "Microsoft.Win32.Registry/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Lw1/VwLH1yxz6SfFEjVRCN0pnflLEsWgnV4qsdJ512/HhTwnKXUG+zDQ4yTO3K/EJQemGoNaBHX5InISNKTzUQ==", - "path": "microsoft.win32.registry/4.3.0", - "hashPath": "microsoft.win32.registry.4.3.0.nupkg.sha512" - }, - "Newtonsoft.Json/9.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-U82mHQSKaIk+lpSVCbWYKNavmNH1i5xrExDEquU1i6I5pV6UMOqRnJRSlKO3cMPfcpp0RgDY+8jUXHdQ4IfXvw==", - "path": "newtonsoft.json/9.0.1", - "hashPath": "newtonsoft.json.9.0.1.nupkg.sha512" - }, - "Portable.BouncyCastle/1.8.9": { - "type": "package", - "serviceable": true, - "sha512": "sha512-wlJo8aFoeyl+W93iFXTK5ShzDYk5WBqoUPjTNEM0Xv9kn1H+4hmuCjF0/n8HLm9Nnp1aY6KNndWqQTNk+NGgRQ==", - "path": "portable.bouncycastle/1.8.9", - "hashPath": "portable.bouncycastle.1.8.9.nupkg.sha512" - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", - "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", - "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", - "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.native.System/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", - "path": "runtime.native.system/4.3.0", - "hashPath": "runtime.native.system.4.3.0.nupkg.sha512" - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", - "path": "runtime.native.system.security.cryptography.apple/4.3.0", - "hashPath": "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", - "path": "runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", - "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", - "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", - "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", - "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", - "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", - "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", - "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "System.AppContext/4.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3QjO4jNV7PdKkmQAVp9atA+usVnKRwI3Kx1nMwJ93T0LcQfx7pKAYk0nKz5wn1oP5iqlhZuy6RXOFdhr7rDwow==", - "path": "system.appcontext/4.1.0", - "hashPath": "system.appcontext.4.1.0.nupkg.sha512" - }, - "System.Collections/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", - "path": "system.collections/4.3.0", - "hashPath": "system.collections.4.3.0.nupkg.sha512" - }, - "System.Collections.Concurrent/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", - "path": "system.collections.concurrent/4.3.0", - "hashPath": "system.collections.concurrent.4.3.0.nupkg.sha512" - }, - "System.Collections.NonGeneric/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-prtjIEMhGUnQq6RnPEYLpFt8AtLbp9yq2zxOSrY7KJJZrw25Fi97IzBqY7iqssbM61Ek5b8f3MG/sG1N2sN5KA==", - "path": "system.collections.nongeneric/4.3.0", - "hashPath": "system.collections.nongeneric.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.Debug/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", - "path": "system.diagnostics.debug/4.3.0", - "hashPath": "system.diagnostics.debug.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.Process/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-J0wOX07+QASQblsfxmIMFc9Iq7KTXYL3zs2G/Xc704Ylv3NpuVdo6gij6V3PGiptTxqsK0K7CdXenRvKUnkA2g==", - "path": "system.diagnostics.process/4.3.0", - "hashPath": "system.diagnostics.process.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.Tools/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-xBfJ8pnd4C17dWaC9FM6aShzbJcRNMChUMD42I6772KGGrqaFdumwhn9OdM68erj1ueNo3xdQ1EwiFjK5k8p0g==", - "path": "system.diagnostics.tools/4.0.1", - "hashPath": "system.diagnostics.tools.4.0.1.nupkg.sha512" - }, - "System.Diagnostics.Tracing/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", - "path": "system.diagnostics.tracing/4.3.0", - "hashPath": "system.diagnostics.tracing.4.3.0.nupkg.sha512" - }, - "System.Dynamic.Runtime/4.0.11": { - "type": "package", - "serviceable": true, - "sha512": "sha512-db34f6LHYM0U0JpE+sOmjar27BnqTVkbLJhgfwMpTdgTigG/Hna3m2MYVwnFzGGKnEJk2UXFuoVTr8WUbU91/A==", - "path": "system.dynamic.runtime/4.0.11", - "hashPath": "system.dynamic.runtime.4.0.11.nupkg.sha512" - }, - "System.Globalization/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", - "path": "system.globalization/4.3.0", - "hashPath": "system.globalization.4.3.0.nupkg.sha512" - }, - "System.Globalization.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", - "path": "system.globalization.extensions/4.3.0", - "hashPath": "system.globalization.extensions.4.3.0.nupkg.sha512" - }, - "System.IO/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", - "path": "system.io/4.3.0", - "hashPath": "system.io.4.3.0.nupkg.sha512" - }, - "System.IO.FileSystem/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", - "path": "system.io.filesystem/4.3.0", - "hashPath": "system.io.filesystem.4.3.0.nupkg.sha512" - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", - "path": "system.io.filesystem.primitives/4.3.0", - "hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512" - }, - "System.Linq/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", - "path": "system.linq/4.3.0", - "hashPath": "system.linq.4.3.0.nupkg.sha512" - }, - "System.Linq.Expressions/4.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-I+y02iqkgmCAyfbqOmSDOgqdZQ5tTj80Akm5BPSS8EeB0VGWdy6X1KCoYe8Pk6pwDoAKZUOdLVxnTJcExiv5zw==", - "path": "system.linq.expressions/4.1.0", - "hashPath": "system.linq.expressions.4.1.0.nupkg.sha512" - }, - "System.ObjectModel/4.0.12": { - "type": "package", - "serviceable": true, - "sha512": "sha512-tAgJM1xt3ytyMoW4qn4wIqgJYm7L7TShRZG4+Q4Qsi2PCcj96pXN7nRywS9KkB3p/xDUjc2HSwP9SROyPYDYKQ==", - "path": "system.objectmodel/4.0.12", - "hashPath": "system.objectmodel.4.0.12.nupkg.sha512" - }, - "System.Reflection/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", - "path": "system.reflection/4.3.0", - "hashPath": "system.reflection.4.3.0.nupkg.sha512" - }, - "System.Reflection.Emit/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-P2wqAj72fFjpP6wb9nSfDqNBMab+2ovzSDzUZK7MVIm54tBJEPr9jWfSjjoTpPwj1LeKcmX3vr0ttyjSSFM47g==", - "path": "system.reflection.emit/4.0.1", - "hashPath": "system.reflection.emit.4.0.1.nupkg.sha512" - }, - "System.Reflection.Emit.ILGeneration/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Ov6dU8Bu15Bc7zuqttgHF12J5lwSWyTf1S+FJouUXVMSqImLZzYaQ+vRr1rQ0OZ0HqsrwWl4dsKHELckQkVpgA==", - "path": "system.reflection.emit.ilgeneration/4.0.1", - "hashPath": "system.reflection.emit.ilgeneration.4.0.1.nupkg.sha512" - }, - "System.Reflection.Emit.Lightweight/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-sSzHHXueZ5Uh0OLpUQprhr+ZYJrLPA2Cmr4gn0wj9+FftNKXx8RIMKvO9qnjk2ebPYUjZ+F2ulGdPOsvj+MEjA==", - "path": "system.reflection.emit.lightweight/4.0.1", - "hashPath": "system.reflection.emit.lightweight.4.0.1.nupkg.sha512" - }, - "System.Reflection.Extensions/4.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-GYrtRsZcMuHF3sbmRHfMYpvxZoIN2bQGrYGerUiWLEkqdEUQZhH3TRSaC/oI4wO0II1RKBPlpIa1TOMxIcOOzQ==", - "path": "system.reflection.extensions/4.0.1", - "hashPath": "system.reflection.extensions.4.0.1.nupkg.sha512" - }, - "System.Reflection.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", - "path": "system.reflection.primitives/4.3.0", - "hashPath": "system.reflection.primitives.4.3.0.nupkg.sha512" - }, - "System.Reflection.TypeExtensions/4.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-tsQ/ptQ3H5FYfON8lL4MxRk/8kFyE0A+tGPXmVP967cT/gzLHYxIejIYSxp4JmIeFHVP78g/F2FE1mUUTbDtrg==", - "path": "system.reflection.typeextensions/4.1.0", - "hashPath": "system.reflection.typeextensions.4.1.0.nupkg.sha512" - }, - "System.Resources.ResourceManager/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", - "path": "system.resources.resourcemanager/4.3.0", - "hashPath": "system.resources.resourcemanager.4.3.0.nupkg.sha512" - }, - "System.Runtime/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", - "path": "system.runtime/4.3.0", - "hashPath": "system.runtime.4.3.0.nupkg.sha512" - }, - "System.Runtime.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", - "path": "system.runtime.extensions/4.3.0", - "hashPath": "system.runtime.extensions.4.3.0.nupkg.sha512" - }, - "System.Runtime.Handles/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", - "path": "system.runtime.handles/4.3.0", - "hashPath": "system.runtime.handles.4.3.0.nupkg.sha512" - }, - "System.Runtime.InteropServices/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", - "path": "system.runtime.interopservices/4.3.0", - "hashPath": "system.runtime.interopservices.4.3.0.nupkg.sha512" - }, - "System.Runtime.InteropServices.RuntimeInformation/4.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-hWPhJxc453RCa8Z29O91EmfGeZIHX1ZH2A8L6lYQVSaKzku2DfArSfMEb1/MYYzPQRJZeu0c9dmYeJKxW5Fgng==", - "path": "system.runtime.interopservices.runtimeinformation/4.0.0", - "hashPath": "system.runtime.interopservices.runtimeinformation.4.0.0.nupkg.sha512" - }, - "System.Runtime.Loader/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-DHMaRn8D8YCK2GG2pw+UzNxn/OHVfaWx7OTLBD/hPegHZZgcZh3H6seWegrC4BYwsfuGrywIuT+MQs+rPqRLTQ==", - "path": "system.runtime.loader/4.3.0", - "hashPath": "system.runtime.loader.4.3.0.nupkg.sha512" - }, - "System.Runtime.Numerics/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", - "path": "system.runtime.numerics/4.3.0", - "hashPath": "system.runtime.numerics.4.3.0.nupkg.sha512" - }, - "System.Runtime.Serialization.Formatters/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KT591AkTNFOTbhZlaeMVvfax3RqhH1EJlcwF50Wm7sfnBLuHiOeZRRKrr1ns3NESkM20KPZ5Ol/ueMq5vg4QoQ==", - "path": "system.runtime.serialization.formatters/4.3.0", - "hashPath": "system.runtime.serialization.formatters.4.3.0.nupkg.sha512" - }, - "System.Runtime.Serialization.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Wz+0KOukJGAlXjtKr+5Xpuxf8+c8739RI1C+A2BoQZT+wMCCoMDDdO8/4IRHfaVINqL78GO8dW8G2lW/e45Mcw==", - "path": "system.runtime.serialization.primitives/4.3.0", - "hashPath": "system.runtime.serialization.primitives.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", - "path": "system.security.cryptography.algorithms/4.3.0", - "hashPath": "system.security.cryptography.algorithms.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Csp/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", - "path": "system.security.cryptography.csp/4.3.0", - "hashPath": "system.security.cryptography.csp.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", - "path": "system.security.cryptography.encoding/4.3.0", - "hashPath": "system.security.cryptography.encoding.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", - "path": "system.security.cryptography.primitives/4.3.0", - "hashPath": "system.security.cryptography.primitives.4.3.0.nupkg.sha512" - }, - "System.Text.Encoding/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", - "path": "system.text.encoding/4.3.0", - "hashPath": "system.text.encoding.4.3.0.nupkg.sha512" - }, - "System.Text.Encoding.CodePages/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-IRiEFUa5b/Gs5Egg8oqBVoywhtOeaO2KOx3j0RfcYY/raxqBuEK7NXRDgOwtYM8qbi+7S4RPXUbNt+ZxyY0/NQ==", - "path": "system.text.encoding.codepages/4.3.0", - "hashPath": "system.text.encoding.codepages.4.3.0.nupkg.sha512" - }, - "System.Text.Encoding.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", - "path": "system.text.encoding.extensions/4.3.0", - "hashPath": "system.text.encoding.extensions.4.3.0.nupkg.sha512" - }, - "System.Text.RegularExpressions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", - "path": "system.text.regularexpressions/4.3.0", - "hashPath": "system.text.regularexpressions.4.3.0.nupkg.sha512" - }, - "System.Threading/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", - "path": "system.threading/4.3.0", - "hashPath": "system.threading.4.3.0.nupkg.sha512" - }, - "System.Threading.Tasks/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", - "path": "system.threading.tasks/4.3.0", - "hashPath": "system.threading.tasks.4.3.0.nupkg.sha512" - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", - "path": "system.threading.tasks.extensions/4.3.0", - "hashPath": "system.threading.tasks.extensions.4.3.0.nupkg.sha512" - }, - "System.Threading.Thread/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-OHmbT+Zz065NKII/ZHcH9XO1dEuLGI1L2k7uYss+9C1jLxTC9kTZZuzUOyXHayRk+dft9CiDf3I/QZ0t8JKyBQ==", - "path": "system.threading.thread/4.3.0", - "hashPath": "system.threading.thread.4.3.0.nupkg.sha512" - }, - "System.Threading.ThreadPool/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-k/+g4b7vjdd4aix83sTgC9VG6oXYKAktSfNIJUNGxPEj7ryEOfzHHhfnmsZvjxawwcD9HyWXKCXmPjX8U4zeSw==", - "path": "system.threading.threadpool/4.3.0", - "hashPath": "system.threading.threadpool.4.3.0.nupkg.sha512" - }, - "System.Xml.ReaderWriter/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", - "path": "system.xml.readerwriter/4.3.0", - "hashPath": "system.xml.readerwriter.4.3.0.nupkg.sha512" - }, - "System.Xml.XDocument/4.0.11": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Mk2mKmPi0nWaoiYeotq1dgeNK1fqWh61+EK+w4Wu8SWuTYLzpUnschb59bJtGywaPq7SmTuPf44wrXRwbIrukg==", - "path": "system.xml.xdocument/4.0.11", - "hashPath": "system.xml.xdocument.4.0.11.nupkg.sha512" - }, - "System.Xml.XmlDocument/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lJ8AxvkX7GQxpC6GFCeBj8ThYVyQczx2+f/cWHJU8tjS7YfI6Cv6bon70jVEgs2CiFbmmM8b9j1oZVx0dSI2Ww==", - "path": "system.xml.xmldocument/4.3.0", - "hashPath": "system.xml.xmldocument.4.3.0.nupkg.sha512" - }, - "AsbSaubReport/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - } - } -} \ No newline at end of file diff --git a/AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.dll b/AsbCloudInfrastructure/CommonLibs/AsbSaubReportPdf.dll deleted file mode 100644 index 4fd8d9060e059302ed39182f339088d910ef50e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 451584 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 *0urX> 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ü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%0D!2T_7xMlPAOKiqutW%deQr81QGD2D?wFjzv z;l9C-F3sga0BgJymz`>-W4{z0aH#h-&?ES|v6hV-jPsnHVjt&cUo(A=eY`KX(rP#i zZZ3T1Z925wc0B4owEBuIhRZiWJStvsvpd-sz8quC!dX2l=?ptQ47m{UrS(W|0T9$q zyTed}&nZ%a)9m1p!U4JDkmZJ_A%lrx!|Odo)U%W7RvkHnKgfnW^!7sHKb|yf@Pms+ zPXOB%1H~@!MJ|hDnQX5w8KeGY^F12|vGI$#{P+ikj4>W6IA?tedR9>MguR8yYD_xh zkgo6%%J_qlzK1yu)g$C^X337~_54}y&FF?5EH0i{I4YL9lpO|K;cZ-w7Yx5;9%Ol1^ego(7#<; z9dB+p{6h$=f!2naH5i_~xG?MDt^|~$wCFMo_2o)Q7-JW6AyybxPK*-%M?1w*c_V{3 zo55FI5JwQn-TR#e@p-RyIVo;3^W?U}1}j&lUg<ZtmoJc*=K@kCLZZUCt*yes-#bzz6rulj4#UjN_1%SWe7p5t z?5?L4-F^1F8U)i`!u}$>a#<&Xsu-3+EDTjWpbG}+_+}w)3qdduYzv`IOa6y_2b(L2 z0f46Yr#cxVg&8@>xmVycfik63GlL?RDI=SN$((rpiSRM&&m%0fDv)V*9{XE-`N5($ z-(wa2hGU%kyEk@RyztwNwfu`Y%NDHLKi}H(&GAjIu1?KbJz~?|6U(jHo7T>Jb3RlL z(h2PP%J8#Jk)KmVThk%+AJ}=}Lwn0ekl$BCYu(^4C4ZHYF}=dDsyo65FBjsTX}y-Me2_bQ!8n~OHDm?zMt z1NEbg;O7w&B=w=v{&zK`o8E!?IgmrCO&)i%;`MVngIg^pd@sP#$TsX9@{>|*Z2;d( z^+V%P{fyw(ON>YL1Kd2jpAnQltomU^#v^T*s-FSuL@Q7UmP!_t^D4j)&=tC0>=mFQ?1K`#ym)+u${vG+TW(9w4GZ0&_=DxgUEFz z-v=zP6k{CJ&oF;K`fJ)%)`a?jUfU$7pYN=i{(jKr14#!M`~q}HmE$SwXR5ZhL_f{J z6Bh*fvGl3qh?;gU*sH3KbAho;)4qaTS&ikc!m;22|1dC?Y1;FM=aapZDmo`xH%S|P zy0)LW?S9;a{a`FF1p1kdN;!Y2HU)p#ZRDCbQdB=$7VD%P0{geuhT4MGejA2dC-Vo@ zpKSY_RzbGKdMTO*^4rxsQR~qj-|O14Tg?;Wd%_-{rN7=IXqEw5{T=9IiuN%ZZO?IZ zkvYmq&p8R+AU-gJ_%W^|GQeVBnhW}uIb zb{`#!^g%HvY8*3qJ5?V}yARs?eqRD;Cw&RU=p67V(0TCt6krvBPoXH4ZQsIfamJ7_ zso3$vlX@5*K!=w+AdH4Zyzw6Koy55J+x>eO!*C1A^I`bgkR7s-JZGw(2aSdDoUx#D zCjAFiU(BzSeAk1<B&mBoDDl5;71b}G&no%Q0+t_ym0sy0VHiyq*; zqqC{rJ5BpW?pb=)e>Ta!nPCx6!g~>0G);RS78bc%;);%+&Zg>Tx^`5aP3p&gHWfW5 z2Kt$<%`3R3_Ef<&>Iid@>nqPD`oW&*q#d`TOD_|4aDIGOGjnCA*`8J*Y>+t|j*x?QluI zqvANrmG>z6AwI5yMi|p9aYnldn@}cUl+sxAD7jDl!=^URi?5CSGG7x^u!&q zqTs4(Q*hO8BiF@|tNNk+1c=MwazD}f#LD|&IND-Et&ZJ<8EutTPCi5H z<)l4W&i{!29-0r|<6n-7uuVhJmU2-I_7IH)d;FoG@g64GiOIVjSf}qw*$MrXrY5wH zR6o@M{p7JB$UIg33@Fmi=|Deu+V^mONgk9`w4W9Je%OO%DK^~hhvrM~B3^Kq_K_M7 z_FBn(q{dSr(9gZtN1g3{ItTR=W*+pf17x%XO15On1M=s5aoqgNYNGm)G7`MiHmwgE z;92$bjf_zAeIxn(ddzE<+3LLOHAfOo5YFt1~BUeu3Yo|OI2yi`AE^H1}_J!kiG zuXbI@6zIo)&#Cc{4@-^*^M0@3GS(eDyWp}tW~_@<%j%-~k@SbYqSnQ@X^p9=T6cKMxw-68l8;6B6j>UTrgLWY0?m zCx9kuUZAJ)!?AmN7NI85tzZQ9(tatUD4sV+`~-bV^2NC{WTNd-e$e<82sthE`;Kd! zbG-E3Dt^%XU48eF*0=9Je%DT%(%;5O$Ng3Eon8uY4BoMaH_;Q@+(BpWI!mRyB8T zJQ#_WV($KTw$yW(SJSr8Klbw(uZ=Gp_;*#{`>FDKc-HWJE=4Zlb-fGjVPjb& z-Y={Cgjz7P&=_<^gP_pjp0S8$1`?MV2W7kF=3q2cJ*#O*{luRva^d^(Uz$%7>~;7K z(VMLOiqstHL*=KyTB1B=(j+GhHVB-8(T41UMzY9piwyRy8?^?se2k(V8zD%1(K?A9 z{~vMR0Uu@2_4~}smh=hN92!6T%wy-^81YO>+IFRf8I1mMhoBZk;+iFJJnv%mjL_;f6lWS(kIy3twnnR5) ziUizMG?3iEI;A_W8z4fkYaUToydtfj;Ri>kjRe9R%(SX^YHHs;sqK3+eM;{>$tfv4 zd#3O@ISWE>(xzdo;vEdy!#%*eqE7H!SEb~6hdiu!VQ<=>GI;?IUGAJbz>jewaw#;#aC zrsrz`H736_c15xK^08yyTrqmw3KlvtbLgm%!-kF|g}Aax{}AIx=VIkQ`FG zAwAlVq)*(M*0E#SN0T~C`Uo5I2YfV%O`WuL>!kLRKKyV}(aH1$3(`9bdwp(Z2X*!O zFj_Ep!Ggi<2QOMY=;_^>x}2JVwqtbzxje)6%EfU{7K(d4uR|?M+eI$3EueDExN6uu z1bapy@S1QC!FPfaE!kH{Jr`y3ASBHA$4q5u_E;Nj_0l&Dw4nBJ~%y98FjC8oY zwja0Ir2V1Og<#`*;S*UnmgC!Pu-%;qrxxX3##ILrx?zr&C`@~<6eeAeOe64~u}7?Z z3)O36#USoGBLr*if!-lTI(Ps6Xd4vE_fu^K@|B?$i;6jUGL|kVw$P3Qi`<-c9r7oGm2!VVk%&~_;K7;^gpR!o&vrVs?VK z*#79Ga`FhWTr#HJa2$ z9gnv+()Hl|wAKnZ!={F;qhS~`CSd2_U^#E2VHmTBd7Cg2L;r{|{UOwOeXV0$Y7Kbv zs!0q^PLNS&g0&s&@iu@6yxv_)tY@%URaHCMJ;$=T!!t2z8`jR!0k_%$R*@H1Gnr7~ zB5-GeSdms{5U6kXtY1>R_2+}JBO{|m#+v2f*_c1ZQlOQk8CSJZa`}a*^zDJpLS`O-)ucuWN zVbUu1!l8SH3oIly>NLLk!3)UkT%rDVHsV|ZwTcDP2WMx8=|k1H@E3f=$2<({^Nz1e zzv+dxQHwT(HL4dwcAToCqp(n<{Mlm1N$tvYyeoQRgoe{RU~_=VH}MTb zj&e|(Cg&IFtHuT1{%8v5cEg%?;^w#SG_OU@kRI9lH&0twqeFbBE{26GU8(;5*_M?n zo2pi!wLdc$0Lrow(iD z_K7LBSql~#A8WfyYD6{X^qy~jY^bZ>j+W*ltr?w(IE7#h0KLlytQx9W5}he#Nj!Zf z(y!4UM7j^`_vjLl{vDMbmSl2PMVFLIe+2e1A#9WV8l5lFpI7N0mZYCwl70yCZ!OaA z&?>0(&~6ZpPwunnL1);UqQAR`b(TPGFIU+MMo%OGChC|FsV!f8E3<>Reif@%tr+MR zSUXscHeLri_X>Ouu<|Mh4}u}S5k7oFm0a;8kFY;VZ+mj|sLg)w-0bVIw#Sb$cl=oI z!nz}euIleuY^!aTu06(C9qvaS5|`OynvuGsW&gj15&x_8r|x@l?Cr-uUE67Upo<58 zI?k4qGecqhfw2sjkDsLpUK0})UA(#I2Q!;zdtjLJWVGQRzK^v%(#;k84O>VTBkT)2 z;m#K(d1&Gx$Q%UplyG9#nUDD0bV=Sm@Bn~=3klBR2s9CbbzQzPPUx4#U+IibKcwA? zx74BRQBeeKL7NoaH`iy8EUE!xrlPyZY$N@S6<}VCeSetu5aiFDrm2xEtYbhq%%xaC z(SDXlze5*|G#GcV&A`!3!wDSRF*pQJ<68r%INw$bHN@^3xn0QzBS#>}kHNu+G04QY zx#k-YhQ?%k6PqdO{)COcE?cJi0*6e{IbsYj*M8T@7xEMs%|(GJXhkRA zzfK4gXOCMlvsQd{ry7yLS>t+@>;cjzuYAwRIm*d6Z_;0%L6*|V zWStMYiu@z_Ud7fjf^uKa3sw=uR-` z>WEH-_quvRE6g~>tdpBpVt1w4&tKrG#!n%^!A7)X?1gVEjVHt>$EEjg5#MrbxG`)( zTtdQ2mZnK@W5c}5zA==2!;+IakV+BZl{&UcNN!)bL9{>Vlw#Xg@-VLCA&_6J&1dIz zn=!J)sfE5iRExtVJJu35t?(lOF2$da@vxmcL>?4B+E{yu%}#0_vQ?+#o!V@w*|yefyHbs~m`R$M)T;(6qD_V76nm@O zwIN!~F1_QlxCFFzz3oqn!}tysvaL57M?S_c=Hot|em1&~3p#J45A^R>lKw$)xJ=Jg zcp`ncXjLg+*<=SHn|f$6aFVkd&e_nz=t77nW>%}&UrCU+vq z+qS-uwmvMuwgbmu?Ifwu(b(1&Qe2N-q|Jv7EB>nZ@NlTeh_=<Y^`Pw3FneL5U z6^LIQ$JBjx1rzo0uIKGDz$pTKTm8`bBor=RT|!-5T?T0S+B%3^ZLN-9?K*uLl8^?$ z)Tj$F_KGHc{syY6@2Bh2qcjB{r(-%%EbZ*SRsNSI;vs zoYb!$+BuAbhPo%#3aH_(b9Hs=(mbeHVAGmWo{`ROZr*Nu*3Bp9b6$v0sEaE$s{hYo z#Pt9({t=_v*mqpVPyatb92?TBh ztGd(=?e(vi`-Kc0_u4;G2C^aLL|>2lcl+<0{ofFK5hh$`1g+7MoSf|JVZ(+D894Ce zmtX4Ep+oD|2?@=bd3r2cx@7U9g$v%8KX2~qb7s$aZRU*WuTGmfW%8s6V@K!Y=j7+* zW{=7qHPSL{#IO-r!-r%J$;=o!FnwV9;6X2^y_`0nf8XBS`n}YzL)Q*nyL9fCziOu4h#mBX5(Y$GsXcNxtX;?Qnux8cD9@RXn)v472qdlRrf>KzF zGH_@MCVtos%BO#DFd}u|%B7B8-US(9gvm!FLD-X05nesG6E1kgg%9Y8b)bspM|kja ze+)sm;zLsv%3k}bos2IJC`*a@G_sOAAhxB!iTK*hCOo#MVVzv}r(Kn7XMNEQ~wqJ1{Qn9!% z28k}E*ZcZ4k8ReZU(v%+;-9gWMf{^l173M$z{r8)#tppGF|}ceyJw4#cI}F8kie4GPLj9w<8(pipgi9N*>P?1do; zhWz-?o$Yc(pA**1HD@SBC^XYhp$?N84`_ej+!rS?;BY#e8)7tO!u=m~B<&F~9Zn-> zx)hyGDg1(J;j}Yd4PA{|z71S`>N_(%6qT~NYZ?6gvEM@046M&9`Uh3SDV7z3c+gd1 zpBKd!CFwk?)NTFprp2?~W9&=Pw7$7%WN62xCr+Gbhk-f_Mc6GwMh>swoAF0Zq8AhqlBlEEw#W@_@jRPhr*pKRqkq3wbKhPi& zg))iKv|hXT#Dverd?PEeAY-H{I><=UhfLicdTwBs4nuTvNo+;i7j*W?Blvi({V_ey z8ekj}q%|h>cY9)Tujin-cbBRFj2RlVN^-W}$1%mnRw;C(Tq*y;B$&J?4fhL^$XxjG zCNE4PbKz&1yfBH(h4)%7Od@mPy~qob@LXQ}78%Iat=FE~_!nB2FZ@A?EahKpSK~gn z#L$h&mPRx*Wv}V}j`8jKy*=*LO)qy!?zD2OWqHll24v2iJ1lKR<*_dfm@ujTOJnFu zEeBMpoRKtq{J5;7jLMY;v>Y;Wl&xB7+JN>Q`}QNJlY4Y+)4E3w@XUDB+X2*D71+3R zjq|JluGC{EJn_d&hdbNi)mI(qxJt1PrkA`Xxwi{23^%04rX5v*|BwjQ)~X8sA(709 zSK>b;k~#5e{D(v`Cti{NkVxjltMVTb@tpqYJu*?%8Ru86D$#-htA+(njMT5VA1-?livMkTKM2FxBA`9{iarV zbx_9S5e+5{o)Tf2ZOK{n&WztCtnv0X`FN1X`0()IvnKcG4ma@H68o>P5nqjZ4CZ^U z_^K49qND~Cj!BlJ>`<9cUZ!6%xeWy4Xzek(N}E4keCz4{tL_=9L=0i z^GBI|F;A5pU{o+|(rHGtPmHDO$_w>(Pu+Il(g*Kf{bS{{V_u&vTKdUa-RcU}qN@5{ z+;q9)z%M>nbL7uMB=+;aitkMtxcTabQuh{wf**k;*4YaF_#?V_CG8hiyo34~T9A%r+ig<0CVY5(NgtD; zfCX(6=+qx{3e~#Cb%M_mQUQ%=b#xgFT43-!c7ov?H-nM)5NI#apWtX7Ok(tWO8qwo8Ot_$A^a0X|kRkvl6FE?)ZD_Qp(q?yZdnhV>tj{q5VU zZ|Pa1-Ak9fw_(j&GiP0zvtkhXY zQRnb5hE)Nq+VcG?@hAxDURP285RWUYFz-t85Aq4&ery9lHAgpA7FU9!Xge0Wl2bXo z=geF7c4MkP_Wr8vv&Y#cQTm>l92&j8ol6`5R3T%3Dym&8Wo6FRC^2ca0K7DYgM&sag~t^@48Dm1~imV zS#h-vnn%TTTzW!eqbR+2nb?u*dp`M|2lIgq8}@y^e*J#3>cq{PCrFRuH*X#%A09pW zq3!(-P8{C?m;z6B1$^eLVSO6wLGV4zxeWD8p`Po-({Nu6Pym3(xE?Z^kH)xuui|o+ zSY%;!i~eHW%;rYAP*XkR*92=WI^^f71;*8I=8o?iwj#WUid~h(i1IoIeudjRv=8oN zNxaQuwnfKLmul7NwBkCp4rCX-#PN(rzFs0pw~u8$&1Gw5&n_AWfPmc=Wov;;XRS({KX0Y@%9R+PNzc`y zSPoSvNYwy4aLKz(ZMB=>|J1lRo!iq~o)gb&i~Uz!JKT6{0ddvAc8~x*a&hRlk;YrY zfvG__%z}7V(7_Lg3Dz~T;qunCvlV^)jjh;Rxc%eXx_L!^eSZ1!=gd&_*ZPB>Z@_X1 z^5^Z+XUN~ERf?+!4gs>k}|qe)@! zt-E~Y%kTFdyoeRF&))lJ$Aaq@kNtXV&r{sqSiSvQ;y*aQS*>gH`&HGFyXDswW&Mz;~0T=Vm$nWs*hHl5cu#TawBZW-w5s|9LxEdaH)33VFf7gzcD%_vPz=rc&pM`xL z>e9ali_)ULbjheMX{p92cnB>7n7=b*ir0^?w=ZYVKpBPg0`H>j9P1pwL0<_tc=FnCHK6(93muR`EOcN! z28TvNC}p4R3nek{v+KYS1<(mW`ytSxg$8mbKH6Zb6Kbn!Ft_cci-LT6lBW+8f*d!_ zo4o-CP81-AC@Pu^Sl&1U(Tn+rmfAb=F0~Z*!RdZTtG*NMvj=bIaK@)lrs9R#Axq#W zTFA0+5iLd(e2o*n4;{|27rkdTZzsPrqc$gaCv8ca79ZBlE51dm>5GpS?-Ff9U&wek z;CX4a;{u(a66Yik?HL1_IAaGEa@-d!PCyau1==6ppE(5AM4!YQTe;;Z`P1n zHNL(k>j9lIZ@Kth|Xo#Lw~;3*2*Q+z!a?W-SnJ3zxZsW|tTRzoK( z8Zdq&2yd~_9_Zm}x^%%7#uCAGF#K^W)nfGs-L}8cp@tTXZ!|YQ)cMuBzVV{%4?@2? zecp{W_Wtn8&u-rNa`FCJw%ugvTP-Za`TTF^i1T~v4aUWD?|u6FzPsI`Nf;mZaDLc{ zaypB0qVLB3VvG=hGJK&pxB}(mtA3(==DKgzuXw(h+KZ!U4mB5_(9JX3{8V0h1kJ!B zpfY@Wpg^#TgQAq@<>0g8GP%$Kygj#Agl|?(8CC4-$9V zZwGA$NW!N3_rWB#N2kwxXZsy}%?}UuoZbCU))o65byZ!%spzE^B7AY3Q9XR*VqB)z z4M9qXt1Zw9wCU!|)XwXrztJoH%lhdD4W5V?mKObl0?^|7PzT z9cio>^hVQ&XtTcWzE992QEjsB6g^{@jP_5gn87B8H-PZ>IZVvGaFP%b;eSu`R9Nrj zreyqNF{I}QBB9SzhBGCN0gio(q+e70+Szl~8%d-5DdWd)>$(j`rWn#*nJ~c6{^bGf zd~bqu$P*OQMS-qH4JT8_Rplpf0jdyz-WXPiK`fVbAp?w$*5q22k>wOGn$?6{Yeud# zDGs0sw#U8(AJPe~>*hU$>jt_aikOgpXWcDkHiThco4eL-7j!omfwtQgiurOS)v{m* zIw6^meYpEqYNSf2aA=TZ%cI_lSG{&)B@L% zQvcOu!`{6HlA=GVQTtKdExM%y2Pmh|xH@ovFkwMGgLihBU}oTe)qZ})8PKD!(=7L1 zyaEnf!`1g<6}Re_~1w320fP+q`(01Q^-HtwO_H(=F zn7n$mLnBj7=CL7lLKWTjw``vo7w*)e|FDS0fVV_5(#`IpC3&JkNhA4CmrnxC31yCXCdT?I6>6O%_)hWpT^HX<0nD- z`}uftp%3z@1s$@Q(5hvDkP!Vd)kY_e7?C@yJ~b|yJaLhM+HR$FpVh}WenrMh`fbU* zdbBe1uvmH+yn7iMV0of`+xVm;Lu23}@V!Ql8g>Fy5cI#Tst}#AvS^gh;wJ=oQ9~R| zyrJCSE~|L@9uOR1`RJF36FgK46Ne7fQ=7SubD~*ntH>DegRd487vPLp8ArLJc^uQWL$lE4{$7UYTmL{6`wHgin0Dp2cV(G_x3@ycG?4N zG$?`bE$SY+GmLKeFk37plo+5OF^E+sNC#l$L75&%yORoL*qx02R#=-D-B!-~R^$&~ zDRd2MjgO%LfnON{OA_GTk-x;S5gRM&2cQ7#nG=VGJSl(5#FKKzTcBREVFP;&>j2Q{ z@;wq#r|Xa5IpqdI$QT-2%r+_aAXNc&Lg=EEQ;dI5VhTUxR2YZ(;CKj3W`wOxi4v1y zh(J9*y%6)wx#*^qF#2n4LLIuoS2n^U@58|V7lNq-9sI4&6U^dhx`tOR4 zvhnckUp(2?w@)83ht46cX4Eg=+gL@^Z(Xf@Tw6ZLBCb$jQhrPl`XmE%3((lZM|~g8 zPhGiFI$_f4sOGBB_*Si3wQg|jfEuMbU%01xR_E&j|G9kL>e-V zMsHzjx-~?l*td9}cV&8C>0V+CE~w?ZJ=V+U}E}N95p7 zq*l?;`j>3~DcW}8;WzU+txlmV{-9M&K5nhaouV7OrIrM}3>NBmNu(!Ll!PlWLAz2# ziE#ERJf!;iVpI;>sc18#oik_2ph{>AjW;^b?ZuOuw_LjLqnl^0ef*1_Ha_^ym%Dat zT(_q#UB;@IikG#F)9L^G?g!gn#}6B}Y`<{vlXJs)A5Ae2z$t6Mk?$pWv3?qe{j+|W zbuKD07q_5$;*0yzY(od~mD!d{=GD;Yi+tI7I#uuv_oM5Cx((G@$0fszA9F_>&-VBF zX@^=`IkiC*mnx`1nb07g+5ud9r*zJLtCg-@mQF!ruVv4fUE4NXXhik@*}d<5%g{E>^gaJ7oQHj{ocFpApX(@?d#Ds>yAW!GR3K!*X}e~>}U&;C{hkqWIC&XiKJ_+KTE>o{6c#~KlafW~DBP|kcA)ol7JZ=KkG zXw4aL)aHeo*R5MHXMJsIq%&h}LE&b`j&0h0X8meCoiY2JcNe_d8~r$6D|k#Vm#$HA zt#O&PEwx7Z;w7#!Ym_feRA!Cx#fi$SQNB1)nKjB6Cn~c>`Qk)n)+k?`NUl-7`2CC4 zDF4MuAJ(DyN}rnhM+K8}(L?Kcg?5V>v9#8-o|EUUn>2C5?%dw5`Ai#{F=+&A;N=tL zm`=V=QwwzjkTb7TfGLO$$;e^H7(cu|TaRX&mQL)7Klz4zLU; zu@fj|G_l}}0jlV;N~^Fc&qeWKxg@0(_`)Qm)%U_ArIq)>B&AjN!X%{?_rfHi+Ftm! zw9@v}hDS_qzWtD)#6tI)xX9z1%aW$?femB~Qzc{AJh z)dDD+J8t}f5yRmRt>>_ezQdwTT)w*C=Qq^JKlg7XnlQ)uYaO-Ev1I)$C|BZyhtrGtIHxdpvQuz1ZNI2YP;opBF;cyd%fBy}K^S_ZCAW94z{x2+fFB_ho znbCKABWhTgGk$*S__pm=y^{MboYhZEAC_my&LO)xr?%)`TvAM&V52#czt=;f( z`4}n8WP!|4-Vw+KPxvoWk%1t(EBs(OWjgh&u|dBE-z?Ia2^atP8m-@W21vFe>KB$ z)APAWkdHK3fbzj8w~onmfHGYqxtUCNB;<5%64SYJOq0%$k#%ZEMAWVmX*j6Abf`(U zZcUnW>eM7SA|f~>iu*IbUPt^i0xkZ2Y$Mj)qe&z4yVvMlj~Kp<9#XiFodn{E9RFbFbuAoWGxY#lL#~ zDLzo#y2~*e+W^uU#!d=^6`fJZ^qTj_j@i~fOsdOS2FaBnzJaA= zQq4V0lG`f}M;*xBboj~#AKbY6as13=&!+jUW_(uXvp1G}x+eI@>aSC~9bWzJkJc}2 zD|Z!CsT5hcA~`goL%a7*AD=b-ea@@Xf%_`pF6Yw?<8Ug8FwR50|E*OX==j`hns+!L zRdEmci>}85+dSLhPd_Ei$(UdG`5nBk8-u>? zzvTy`rywXhcz$%u;;E)NlWf&!9s0}0Kh8{^e4hAE=I#QqM`DTY6AB;o*h12c-`fj- zFV=lvr};XhlkZC(Z|7%2z(0>&oelAC(l~4nkk2c~$H1lzJ}q~*+fR#~EF8921JM77 zGz&N^Em8XxOF6;^REZBmndWLqn$ct-v?U^q*fCm~&vi!{tgOBRJ{M`K2w)|!PM4(N zKJWP15Aa)6a`uCS1;1qiADruu&(C*(4?=#viz5#><52iwpWcsJyi6fn;+5cHD8Yq& zsQn_##I}``X|AmmU+Y3Xb49twlT4hCEd3Jw#SsQ9K8M;PXoGcBL7VL&A9$N6$w#K) zw2^5>lRQBiq$#0|OvCXJX+WDW0BNtf% zf?t8FE?Lj(aSF!;KAjGUdIY4BdgSZAq56kNGnuCWUtQK3@_HiM8antvrny^^W;9u) z)sboHluvWdkp{He3cZHNC$xMT_~VqYfY0;(&?KyrDh=p6xf;)f3NL`D>n+?4NPiRW z$4h)k1z3j*>XrCHlWDG%q!~>v2)}D6cZuIMnFc=JWIn+67xa=MAMWc-&`+k>??{6# ze=nLLLF1A$XoOvu{w&gr7Wj-NqhuPQ4qkG|g0Sb7vO5Z1AGtj@Xk6kiP0EuM`G_=V zVdlbXmPpggflmU?;2R{`8>E4stsc}W@SKY_|93sFA1NbT?s@&7yk+YLX?XpJG(zrq z{UA-*`azm2C26|D3)J7Ic~Fw3EBq{RenCDZ{K94AFFmhk-YyzQ*S=+1suFqS_U%%J zMolbZ-CpvZ(?Yx_-7K6EfWRqH^8SQ+Z^WsM9iEjBZI^8o!&<*g!)ZnQ95R8ng5xG- zysNhSIr#)Vb$)_Y=$9ZjU9dmxZ|HzDMaYMzL64B1DsfDeILbUYEoC0vQKQf0VN2jP z7mhS+5P8}5P_}KhhrH5dS#{M!Tkx8~W#_YHwNJpCr$WwUd(qP#{+yf(UN$%bmXI5q z`O`r1I~BeSIc@BpA)lZ1obEE8ZuSttgNpKkeyy<{(@D@3X|Pwc$7R_!uH%uO*9rgD zK)UOBuYxam%ZYNpc1Gu-KZ5tr7;>7zGcJ=U7%!?QtF1M+;X#_|JPqjKYUBQYxt|w@ z-^G#Ot={_0Nb@R(qm5>_RBv!gWFzxw%Wa5M8sww>Y7?gpAs=QUO;80U#LLb`JUojKoy3ceKWIk;|_#yJyh4d+ZjXOV{cH&yL$FYTdh zt7&Olz-9QcDAz<)u9)Y>61!||xg8<$5oti@LQyV^f6CGMu_zZ$gSMbg`L;mVO^UXQ zb1|pijOW@endTngh%}JLH=mQGJd6`yf9Xi0jVJw{8z;zoc-tlO>8ic|T-((KWr7_j z((thu=Rx=9>WYt3KNIbw7_X78lX)$G*Lf|V4uq_6|CmbFdTLk8@82m&^NAx3cEkQ4 z{0bwN62HPSA6{-Lv)#1s;1xzdYVN2@k;Y&wN%Im3##j+)=(Yq$8kE~9LbqBI<%SQu z3A*lr4|qAQh`Pz=Wd+Yod5-5~8ZOr|O?MLgZ2Kd|uU7=Gh%~6fe$UB(>?e03AKp)* zU+>PnIs;4Y)fe=T@6W6Eyv>~#md^3nnZSw@b_$sC%I7tqRL z8Jd+I5D^w0(Zw>*l4l9%mXVp=C4FdqR$7jH*`&;iCP*0hQhH8qrX@Qdyis^qSa?); zQ~r5m(}29ZA!+$}7JQ!22WbAB47iByd&IYS#~$vko!r?yE2sq?`W{pAZvUud;Nh;d(L@inC0OOiu&{yVJ zmZKc}#Py8gALhA(5@wYEunn=ow-3~gS8N0mqLH9rsY ziCIJs58V&p-(<7)So>Z31O3E@+HvhDe5MaXO)dbXzDC_1(@sE(a}vG9DeVrp?5uVg zJ^WVG$pdYnc0oI*oku<1)$YOb$uQK>aByW7IAk4aZWL;g%OaPp(Wu>Dw6WTFv#GQ4X{(Wb)M>b|xYBQGON+MJ0Can*`78!S}a;iK16!?pwBMZDo9-51;A zDiS~J2CYOY!~IiLELvB`39mJ^KeZ<$fCQ3SB#6`|b#Rzg2>dx8`Q#0ZE#yP; z5!nhKs2`Kd`49P%JRyIPr=*A!6C1HZT(P}`!dRQa z2o@{$PSlyYP*+&px>FD8N#Qex`cPk50jCoBQGZ&AR;E>GRa%W!r!{Cz8bAYSEgD2? zLya0tLug%EkA~9vv;l2M8_~uzjE2()8cCz5iJECNjiIr$32jQ7(dO{X)sn{1c$z>H zX%bDQDYO-BP2146*o=}&+tUuTBkhC@Ze3_s+KqOnFVP;fC+$Uh(>}B>?MGjx{pkRj zMhDVCbTCb)L+DVNK{M$vI-F+F5j2}x=tw#WTLW@w9xVAs(=l``9Y@F0SLg&fkxrtM z=@dGZPNT2V>2wC2NnfM0=xjO%UR&qVd2~K~gD#*8=_0zAE}={5GP<0upl{NZbQOJz zuBL0~TDp#|ryJ--`Zj%szDwVu@6%0mGt6PP&=2WHbSvFPKc?I14!V=>qPyuH`U(A% z?xml>RCPZ+KtHDk=@;}%`V~Dy57Q&`C_P4x(-W{3KS{r#r|7rzGZU$efrnb78K`4V%C{m?!gM-pq&j zvI;m|%a8f9N~|)g!m6@rtU9Z~YO(+p$ZD}5R-4sf!7PN;W%XDntIry+hO7~5%)(eW zi{QT3n2DKLG>c)etO;w%nz81r1#8LTSUgK$i7bgFvlP~fwPtNtTh@-Hvi7V4>&QB> z&a4aT%DS=c>?NE`yo2>%J>l7Vk9LUlf<|hWb{L+8zSLf0y|oXtBdibWs~yljXZ^H& z>}A$p`wtty(%3*Yhz-VB+C#LtY$(fMnQRyvuC0J}?oI7i=*1UlZ{bv>H?$?%QteZg zr5%JXzHDY;BiSgH!*W?3%V(q67&exTW8>K?Yyz9eCb7wE3Y*HNu~*r2HiOM%ud!Kd zHk-puw- zGaIw>1NC5+&!EfE!~cd+=cIGSIVi3=H*7Wa(0O9NtGCWa=c}t=%+JmY3k!>oaeR_t zMB1PnOSZ?z^qfq~V2rBs(sR-W8{_3;W15T&@dIzXC*fnub zX3n7e5ks=l$GQ$Gy%sRS!{Sw(U`QI223Ur{GD-sAv^?DL$e64kVm81LG9*ig=^}DT z9&E`=8^qCbNiVrHCM!JBWo$^68K;ZLwN)u5u0u<&B{mUZDh_vRg*nEEG?}~G&@wl! ztxLah%_zOrwH}z3qszdLp-o<9*5GtQrihGfR2ec=8QRD)WJ;>FQP^h6*riQLL1>${ zG;^41+fop&!%DB++Lgh{ZFsqxp*iX4*;#4XgEI#iQqu;8kS}A`9;Fz%jwy59tIYMd(rZI+S=R9)a_L>dLoVY> zF7;WK?4h~(jv1DmY`sPNb{D_-{8#dQN|;ML$5m#NR&r^KPZp1iY3U+%?U9GERwf9-5OjIvoiII*Z)Im7pxY(q&jI!$s1_uoNd0 zWng-iWsDwXE0$dM!I@~3a-js^cP{Z+BQw&(rE^-gB`-ZIJu}TMd1P)TiY*>HCFiO4 zZP03nM{XTQWb$T3-gGaM*rnr$^r145cP5gTgQXX+bP4HsY5G=aXeIPX=~;PcMg>jR z8!s53>APj%O2@(J+og>hnFe7TF>r7iZJ$p&JaMEG{J)N#QD%{aIv^S=>j3 z$<{q8Oumm&{asX8qdaTn-zSsf^Syv%?iF*!8a@TW(D7@;F}fv zXazr7!H-t(vCEf_Kck`*{AdL~TEUN2@S_#{Xazr7!H-t(qZRyU1wUHBk5=$w6#N(k zKSsfiQSf6F{1^p4M!}C!aAOqQ7zH;*!HrRHV-(yN1vf^)ja6`C72H?_H&(%oRd8b! z+*k!SR+T$e!H-q&V-@^Z1wU57k5%wv75rEQKVHF)SMcK%{CEXFUcrx7@Z%Nycm+RR z!H-w);}!gP1wUTFk5};H75sPwKS9AyQ1BBJ`~(F*LBUT@@DmjL1O-1q!B0@|6BPUe z1z(LOq7oGR1O-1q!B1516BYbK1wT>2PgL*|75qd6KT*L?RPYlO{6qymQNd4CPf_qw6#NtgKSjY$QSeg~{1gR0MZr%|@KY506bav?`hAn?_f4wbH>rN#6ei)D z!X$iCn1pW%lkiQd-#3Lx_$D=XHK~5z6ei)DRKITulkiPp3cl+1O{(8Fsea!i`~C1_ zi63G?pYUYaZy`=G^bo^i!x$O$5JP0c7!f)5a1524$2hKdI~txW+^h0SdB?pfzm#{}tMW^E$Gs}Q zly}^#@=JLSPfiIp^pcD_PDGMBrL^O%f-a>U_X@g{cHB$oDRMN06=czhAQq)UEU1cD zlnSw+Dq@i@VnJ2JB45OUs)$9thy_&1?OBe{Yr2W!e4 z_lU3vlVL<=HrJ=*V$Pa9*g1XdAWVReTE35ta?Z}p7h1C%T~=mJnqg#mE+$O!ZG3_* zIX}lDZo(Cs;j$5k2oEPL|R_@U}xyj()n_IhFe|+bUE@m*L6tdXvei%E)dIh zym)4!osuAlgIEv;u^>(gjs)b;Q&MD;i8#qksizv{juf%k?qs<>OQtwUbd>8MTp7YZVQB z$h! z2l8b}TGv6a=*WV(LSE(|FUK`co0UE!&#mkO4_I~#g(8>p6W%+E`pnACAK@bFSX>Hr zYQ!&{cs272XU=ZwidVQuCo5c};}tG0c!i4(M1}J!LnlEVnFD7mqu?DdlgN{EmE@uP zkU2!WFXX4VcREH++-4h3;4@O<3i96Ti zGQgx-O+5EXeg>FFaybC5ZOVMtrVNs8p8c*(`R_WE;_TY7OdcJ}*ULaq#5*#JJ5;#PJi5u^-D+c0; zSDBRp`K??S5Z6BC)WPa?nXJ{ifOz3qx+oy-y~?Z!hzH(f7XxHoQtvO{meu;Jx1}X? z=DL3QROb>TT&aP@IbO82Lgf^2N1JIW@j~Ew%UJ+PkdoUcD{N)m3Wj#dEK& z&v27_*K$JCwe&OZvMPL;sZ`y|YpJdm*KSH#uU?c=+ePT<#bZx2l_RipGB7JwChJ`a z$+J|kuHKb0s7J4I-0oFIQ!mnbl~L)72X0E|FK%=lx~Hb{t{KCeSlI2r7zDPM@I8oY zH)Y2|H78gwY=RL_BN_#VinUo|{I+JWgXAl*`0c{rpAqY)*b>RIuuh6x@U07McN%CU zDJ8WVEPix6H{{LVkm2b$*?7j`@t_knL^{pGYi#8Orj^L08Bb5%^sMAr$vxGnwaXlj zNAA}QIqrYD|LM`prI}%YxO(KY%rL>_Ej;ma4|Y4?kzhFKe!z96`y<0Nk1DP+4F^2V zxd$Mmmj1cSalfYikeAE_c|I!nYvv*U65J1z`FrFp{yeIb{GD^1DRMr5yhU)CBma0# zfbe`!@Jh>ISit`rSRm&|G8hiL~0r`7MsFTr4QJ7Cn|eS*=&UvoR)G)2G>rQ=XQg|}SSxgFr& zIqehQ-FN!a{eUxduI9GWxe+K6;GD!^IRh$cE5Lb$^LFRooqxxZW1P-Ng*%UP`1W`A zRF5hyejev|aGmLT-)$$t0rvnGZ~^}VY`~Lr;m_Uwl)oH0r;rG|Hh8{xFK7(duIrGW zBOq7&@vr$8f4T>YKgZYqHvYRhFZ+zsQPuF@##KaJiyG#&timHM17-edct&~l_RR7e z?K#(Tk>@9#Cp@otKJu#O)yON#tA*EKjgU8CW#>}PR_^aC<;q*hCBZU|Tg7oJxbCoi z1P*I<7(2lj4rVcj+#_7DqTowf+}ZcAVnu?+TZE3{RxlvoXWx3#cz z+lXBW?`ZGBa$+-VFSfw)joV{z+l)`N&$WZv7qH9t3OmsbYe!%a$8F$F!v5{Fc1GB{ zUC=JV7VENhMOkANz_N{7uswiv-5;<-dkX6{JGO@EVbA8wE!aw|*Zg6%R+ZEy!LUsW zg)jF?ukGdRyPmP`Qnp>CmR%0JE^gH&ZMvjIS9yD`0@!d_%h+#m+bwCi z#qGB2!dA;g*k}2avB7fKRdI`|WY|)*fgM$Q*iH3NHdEYUN?Jzc!49g_3W{4mO;^@W z+}df`GgeOA!b#dTNqeQQV5@ZW|AC#-Z~thcAFJ$BF-Pm~h z750j~DVt<}$R^t#u~~@c+JD2hzWBBcde9!QY3+^Rgl~T)Q|w=p4fb0|Z$)}5(%(h; zdr0pNiCv0ciZoy1%8TFIZ{l~A{gHU*fp=@{_sDv?RdXTp?f1zW_5!lVewQq^-ytjP z56DXUZKU{#th1j2lyhXG{i>!%3M=yS#M@u+_8Q*ahV^Y5e6t97021C<@#X+>z9Jx@ z-zRHOT6dJd4Uq1Um6|J_xM9zRI~#}aisr%K*+Z4%9?D@wIqrjU@YRQWe&i7Fjl}X1 zU_K=4fx|}ouXuV1xZSrOr|$NjX?^=oG}V5H4zmA9x7yFqZSYm_vHdpv)P9EUwI9cr zd$nr zz_I{&7I3_P0fz=4;P*Xd0>{RvNh0!Q2c#?GL|S9td=-tl_6javKx zl>H7=u%g`SkoG&&=6(BKl&fZC`+b<&DPm%9-l=uwtKBn?MjGDg%UOI{VPa^-XQS-kd z$J@y9HgYULj)fS7x`BJ*?7wRRK>rNTwF#i_0*s^D2-_#xM0;IuM0@Rh`+RM$eLdiQ z1nxKv37rJ#910104P25AT-HDqhCxC$K|*sO4={Ed6 zcJd$lMDhgJPwnHVt9>HypA7t00RJnriG3<pPx@I3>3ZvfX*!1Frrya_yS0LL4s z&pW{Jd*F8kxa|i{KL96h?BVEc9|4Na)kYM5u1&N})MnZCfui+6(RQF{8Yub(DC$WT z+X_L^nq-yjXW*7X*4cQg*o$ni72{Od%fPA&u+oE~`+->-97}BjX1<_k2C(x0MSX#x z5g2-aqTax=87R61m{tU)&48%~$~X+zwgI+oz}5{EZAmk14?)p`^aI?5eAB$hwR=!%NAn4uT=uh=YaDAw6pin&Uypa8@%;J&Hs#=zmFEe2RPmVUKauH zB4C{boC}}~=gQl3tL9EWhJ@|KGhSPhAia_+Z=-hZU?vt~$39`mgD3hZH_-1c4Y4-0FX2(=}br{&305)qOp`C%zE5PUkFuD$m z9zk03A+0AMtsQ~YT=a#9z(3c~7k-1jkn_<|VE7pP^H?(?rw5?#L(uj&3;!?2Y|ub#=C&QTSF`Fzd?=Knlsu6-d?!dzZLy>8~ZPy(3#=(E#MDWd0 zygi6}^jDzx4dne8dECQHxi@-eJ@S8m{2w6y2gv^cMiFkBGg@#jHdgf0Ug)Pik;>8b ztFZ<~H@at^!Wj_n(-+vUJ(uqzJUuGti8lOS^$$AK>3vY)G3u1_#3R5PZT}fh9^%Pe zJh=lXqfz%`Fm8}(_}Jk$%>_?)BHejB-2;xYBJF3YoWG)+_fT+;xmHqjQa-MTQGIdVz=hrw!e zF{V02;JqvU>WQ62El`6UPy;Vx|Hwq_REh<6HNgn6ndXOij~_8Zs$&p0LC8dyj4%Ux zF9Wc*vKB%wT=zlvO7o$I5sqp;tg7b6sw31y2t+=|HBY;r=8aGtp|<@nb~9DblI-7W zDd6f>2(1y?B6LCMhR_rI+zUNbUxaB$|0=?Cgc%4k5ne;sfbTaVyp8Y#g!nMxBZ!Y8K8|m` zM)(HdTZHcr&LdnzxQuWW;X1+(2tOkHgzz)Qvz`dv2)+mv5o%+!5sXkD^3V{WF+w;( zB!USc7BZQHbSb!QjUK-Z#$#$)IREpzJ$;N*S+z+KjK&L%>?v_6A@2BJPq&RkCXyuit#;Ng0Kt$Z4Z45VGRQ6 ziK3q9M+m4J`Z>Nmh;NT0K7sga#3vDdgZLEUZxNqH{2k&mh|eNEhxk0=3y3cwzJ&NP z;wy-+B1W0%b;REz{sHj~#5V!!7D53+Ap+<@tqAuKKo9x{!k-9#A%Hg226+c<7)8(_ z7!aHgToBw4JkSbwA^0FvK=4DTgir;cn!S+KKnOsngS;jT2B_Nr@iZWw2E@~V zcp4B-1L8J7+y;o-0P!9m-UGyKfVd41PXppl>rvc?OpqvJj)0hJ`L?0Q0unOTV zgw+UZ5dJ{_9g5HZp%FqDLIgq-!cMf3?g*Yp*9!ft7qmcLXg3PcZWN;3C`7wah&H1T za$g9!FNE9|LhcJ8_l1zzLda|(WVR48TL_sggv=H~W(y&+g^<}o$ZR2Gwh%H~2$?N} z%oajUxeONKFf}j8S|Q}D5VBPW*(!wG6hdaWyc9xS3L!6rkQXi+g^-Ox$VMULq7ZUX z2;MIQ?-zpi3&HoC&kMolh2Zl-@OdHluMqrK2>vSs{}qD&3c-Jc;J-rfUm1y!t|h!qsEf+AK>#0rX7 zK@lq`Vg*I4pokR|v4SF2P{ay~SV0jhC}IUgte}V$6tRLLR#3zWidaDrD=1(hqfsl(Z z9s%P@f;`AK7+<;})Ig|>06b`21mHp&Aaq6Oj<676F#_Sx(0HrKIDGN}_0+g}P|5<7vH+zl zKq(7Q$^w+K0HrKIDGN}_0+g}P|5<7vH+zlKq(7Q$^w+K z0HrKIDGN}_0+g}P|5<7vH+zlKq(7Q$^w+K0HrKIDGN}_ z0+g}J8*m6Z>nYVb3hrmaf45Sgs}A zfZeelVc+Y1au9o5&#S$weCO&7>{*3Q2YXW=lfSSFwITL%*G4>=|Es+-fsU$3_jpycorDC^ z=|Dpgb_KU_K}8Tz2NV$n6~$2zkO9RNWFMdF8yy$a!F60v#Ec8bY&wGqZb8tv1RD%! z5N!;BPHsXZ_jVxea^J7M&e8!~@XR}B-Z}5y^Y8n0-Rj#_^?kSMUsbp6N3FaLRuG33 z#9;+-YUp+PCVwrp^g3GlxL%1|O5Zh?HeoQw(e%j1fN{u^!F7b+0B%QK1ePPe2UdY7 zSOZGII`9!#4>o{L0sVVg(KxmII%@fK)bi`7<=3%}J>+-ee(c8m*o|C9$z7D(Maf;1 z+(pSVt072i+LIA4;F#6fg{&21a82XMwZ*GQ}N5 zof(6DZiIbSz&{*Z@8S8$mg!09!yMW1DHz0vR9^aHql~%V3gaFv&9N;us8aBMfpQ z400n3aw80KBMfpQ46=fHI;Mvr-^Otczr7RrF66nKqsD+SR=^m`sKaB_;V~HFM*R#} zNZ2Bd<-{Q^+SXc?pbAuj8nBf(wH!YO+lb?GEstY8-**6NApI5i27E{O_kbFRHX&xn zlOa!r+6RVNVY)LK(39hSpf~3a0*8WroF59#0O*MJBS!lXgJo8jnS7rO=vmU9#Ar`q zv?nohH{b6C_jAoZ@% z)B*Ab8!Uqjmca(g%y(d?Uj`d2gAJC^F2!h0umUz%!J7|)j8|uZp^O}y0)~Opz&YT2Mmk1g6=T6-zW)XM75okS9Wcs=<+)g% zi{-gkUJT2NVR;^w=V5ssmgix49+u}}c^;PMVR;^w=V5ssmgix49+u}}T^`ouVqGrQ z7hvvO?qh3Lz5ob^3axtwmdZDp(z(lxoFBoQ!biv(Ugm(Tr?F! zQ!z9ZLsPLpUuH>;2K~V?U;r2lPDFQo(PAN5EJR}oG**npiqTF2?Ih4n0_`NwPBGdk zri2reaDoy}P{IjHI6(;~DB)sCH$mwZQnCq3wU|;ZrZf|jW`fd8P>RKrS}~Eg1UX8OqXaohkfQ`SN|2)jIVvVc#pI}%92JwJLUL3{jta?9Avr1} zM}_35P*|mdJv!K;5So04CWE1skgEa+4fkraCN0veA}aWh$CZvWC_RMrqP<#BQiDU(T>Q}pu5(iFh4yy zQiJYl&|M9>t3h`)=&lCc)u6l7(UBT-SBtK)&{Yd{p_x~fN4_2{aeHzJSIlI-u_xFM*sEW_G4&rF<@{0;9ladL3hEkH>PfY<>x0%aK>m^GRd2A_HWCEYJ(KzCW-m ze*ot#(?82E5tg51_B({x&mrzy&fmw8UK!&tYxPpV{3winhhB}m2Dub@9n7qpc$;Z| z;~XnN6{rR^pcZ@%T&|NKPCfDt&;Y&y-vHkJ3~MWewUxr!N-4Q2(}TI~o*eh(NY4tk zR!R@UmZS@7D`h-rEzGSH=2ptMP_pN70r8T(4_neMV?=As1X$T*em8~hGl@GJ{Eo0| zINnb99K!ELz8B2n9;Nqb9^*KlaisU+eu(I4*y!kzgA%z4tC*S6AryShu&U2HsO$hDpF8|4b))+^`xW< z8>qtu>al@p^q)Y#3H0WmGY4JSdn!Tdsz_ax8BN$2!2O4A5~Q>W-BhC+d(S1%Nj3Vg z_g(@$)S-hq%D;}Xuco~1{g|Mv9m?6Ej2+6?;W?{bjKAzpTX`@z67&WAdB$M?ILtFq7}hK`~}gO^KIN+U1n?CdMzS^^1frMShLrJAiaBo>5KdZ<0ID zA#6LdU5r{X#=&ShM@E3r!X~t^$@D^|e9VD>GBSsN;e?Ok_#1E@@@VFh$AIz3_HLQT zaT?c|4(y$BHQ%p8z5(3FZyo@Yo7@$JoLfTpQog^=u?Q>&?}1ey3f6#9unv3#)`Jb; zQ?L<~g9d*8CHNYA3+#xePg|@(00cogXall9XTKavD8~}Yv4nEQUaEO!wm-H^&D>Z| zdT7!^8ws?LKpP&~@F;nYQueTGTi1D%bV9$#?BY_6uTYcQ`t2RQujcz2zEj6hnmZ`X z9a8@c$3D*kqv82uz&OIk^WD}l)0j)Ob;>+?dXIs}fvqc+5dJ!|d!6YAbOqf(Px?XU zW51!sJF<%R?qy@MRoH9@n+;*JA#65;&4#eq5V@(sE<@O52)hiW+_APMufoPc*jI=g zR$*HqY%7Fag~)A{zKM6A-pbM5#V;buolKkm8s}H?{T(28G-0L4>zM1trz^HqjctXn zs}QANYvU?2SY@Z&)wag1GUEtK-qDrV4|g@+r-AAGj+snss2UpzVM8HvJK^)-agTw= z!4sS>JO=@CW z3)>pFiuWA$=XsieekCPqN4w&b+7|3#3-%DF)a(dXoDzy-50#WqoD$lCJycRcTd;>3 z?4c5SsHAkZU=KCe10@5C41&R=d^of0=Yi3TR*eDU2piA$$sDJF>BPI8BdiLWsKF*` zu!%}+q7s{^G|UT<>Ns{0C)IIM9cON}KeO-yNlh<*GpXH7>TJq3ld?D|+uWG4I4O&h zvdxVti<7ciQdUdK>>SNzQnr~C#Yxd-QWPgeaZ*%EisHMZC{Bvvq$o~`YMD{(&nFCr zGTTlnYDq;cWwxC%+fJEnr_8ofUfW4kEh(xc70lOx^T25Aehe57BkRogZ&%PA^yGSd z7!Pw{FD~rGrS~mb$@Q03HR_SKk8agD#*O=mGWxePMw|gZ|(cFaXew!WDQTfO~Np_trM< zrET0V+j#5dP)aX#949%q?d@^=<^}Y*>-_XD9lL2g-|W$Y@aR2wGCq@>BTkOZEW|GC zm`rjG*rWH*dQ8U7`|fEhCUqPpIiKsveC}S3!O-*jvANZj@tNe@s>k!$L7w5v1muX) zWj+uL1E+yxzr3!wU;ZR=JI%hxelQpadX9it_6jF!|H+n1kC-0Qh# zcm`}K8u=-1aVqEcu60hWOxe*Xr)EdlR?)!+lL7JLZGz{lVdK>C?= z_n2|FBXf0(#MGH8Pz|<%&w+g^)B`_09#F?9O&y~&b&Rpv@qoHLj0d!%kJ*ksW;^`0xwn_W?6d$gHfY6}tcH3T&2oOy83 zv*?$$eH-5?2U5AEwQgy5ds9BU>T)8j*>uib%`sJvR)>XzVdJg!M%)cMAYJ1m|FYQa~9=09Bwf(+ijXs_8wkB`g%SH#ZL%a60GpW(b zsL{))z00VD%czCRsD;a@h0Cag%czCRsD+6`%m!lGdfwL84a969W&<%Bh}l5Q24XfS zlYXb23Cvs&nWK8rW+-N?R{Qs;T%R_|pX2ZFU-fzNPqp!e+^qfO{r(KUtsnAVmv2L80n+{9{%y?qr%T8QO6|OsctiXvc24w<@=N_g@b1#Q zS)WsOV;=tpwmqHkKlY#EH&Vup<+_KGw58#{(YlO%JZBKP+%NI*2jNfOxs7ol<)7sz z_1OLg5}~k^5b-u7&+l$CK0UpiuldZuHC+MQ{8<|#&p)^&uaUeaV_0lS4JCiT^We(I zr-bC-Q#mVfkivci<5*$(_-rtjrq66EwQN#CO}}XjPL{X7g_#A)3HuKF8(`D9>}>v% zs-1tRJ>%E-@1qCLU+TYYr>`H#$6uvh{_|aZ%Hf71*wA_Pxy2kE$v47*Qmp=>b zDSw=O5VYJY&ALeHO@5iv@~`r}@k4AV)jCp7HpSVi+9dS?d&*z({12b8=lutH+I^SJ z#{-w$m`k*uq=^>nc`K)G{<*2&eo9WYIG(F!+lfta<#&B%)2t?%(z$z^=x=PgAN_0W zZ+>V?{SV@3J%?J|`fU!=4!8J1*nM^9?rS@T@;uM*Wj8`gL(ZeHcNRgK;b*8IqNPv-|$e5SSdFxbnLpN&2U@INpNj{`q<{pYp#2(TUkZjyDMb6EFz zA1glR@vi^mI?v})-r~Qk@eTe(yuW`1>pR~{d2fH~)tzPfW8TwWE^p|!>p8bIzK=h- zmh+daC2ybqPg~E~@}_wEj(FB}vg)Rkdm_mFkj5Gc`_6$( zm;|>;Zg>9LV*oe-R}fMhs(b zhcf4O7<(IhjU3KD^ifB!V)RJ%05cIs@qc}JPEGNwet*(&40~Ii6Qn=I`ha6e!NBC0 zC@Td*JSA{EX*mIJBnp2dLs+kNGJ6ESBtv=9{}gt`y*iAME9;{~an}yVBgzQ8lqk7> zJF!OlY&@ilVvjI(f+t$_8}d7J5diTBZV*X#(l+X{&N2P4fY7L`YVuEvMW}AzsYspVppsLFGhZw zU8#52+p{YCT~hcSdk1Qb6696v9jHCtM~wT2*Rd;B zlz&JbKVt8QKb11%_3Ry4Va_@+R+(=={)9cqYV%K#W9&hEfNVtmOjUA)Dt4nB_D=YH zvHWH$yTL1qWpkgi8~n4_cCe1!;5WcBeUIJX0minc_3Q@EFt&a8g1xQ!l3l5<*xRVD z)i=oBvS;Gu9OSSLBj@T|eK0GVex>m>s1MPHARnp^ zMLtX)hJ3g_9J!C~gM5TO0{KXNB=S-EDCEAHrxfrXb2M^4-H$Pd{<=T%F|4c!;ZJ6O z%Ezb7vB(4UKvvcrr;k%z@GrwXg^!sNkbjM*nK1SIAmqW!B`E6qQ(3WinjVRK7NbaA z@h)>Q@+3WpwSt%EODVC-^ktOB<*eHY;X`IJXQ${Xw76H{NhY0l1571knx01d>G*dI z>lu0mznY0(nE>w#n1wuB&t|3T@0h7j*2fGX*JxUIJk4B7oa?mp6nMS9o_UEISUsd@ zS8k-l{+m@oA)b)^Js~&A?8eRd56HLZTe!lltRD(lA2fu_q4n>CCz?MZ&t?28A73>0 zBHxFv*G~AOc?kJoo@vSFDceVo=kXqhJp9sd7t>xn#=5%s`WfVfdLiM9@JFNUy9&tB zKUnjk@JjO>IelLL6Pb4x@b53^7tjSBYIufsDQjXBerlGH$CvfX$gk*ESnu?zewCQ` zts$gH7g1u%^>VKBhJJ&P75K3U(iYm8nK$*DguJESB7U(hMt)nr&DGw~?-5d>ODLsP zdKKaC>-Q<8sE#sLyqYyQY52QY!+(9CKj3Vs%X>HbzAu{E8=)3I9TWp?c^qHTSjtN`Hm?wf>qo_|zeU zHl2Ujskx)IuYHxllg-@4_I(Yi2i|pPx$v%&sq*o#!#&Fz9I{n+yzGQH%RDF{-A#9u zhgY2*tPJhR(?|Ju*Vz|&Kb}I$$IH$D;v8#^W#!~RGf<`DM+c9&_|iEZ`2;hFvx8;6 z>qK*+>TLb$5OT6PS+&8t&QRo2%qhsj4EGD~hd34aG(+oShMVEYBg_co)6MCus6WHd z;_&u}->7}?ymKzAn9eijsWd$B(E7kaMl*wT0pq6mc;gv^Jl2dQe4Mc}YZsae`SPwo-DI%Q_K|NTxDhwKFe@t;i2bhL!# z^=Cfvcc%sYI?a zRmhHUkXgNhTw_=XibtZY$hD>xnYAm(+l+m40b|_Au5poh3KcnF5|m86q0f!iqV32# z%nsxR(}2FdFkhgfFU^<8Uzx9vzcybZe`CHu{?>ep{GIs@`Fry{@=mi8**Crl;OR)I zJiHxgWE@^02LjxWcst5O#^VukyFfdhlgkdkDtXsP2stM}%g9?tIx|<>g^~4q{2p~h z?#2^$`S?HTj@*MM@AC13)DwAMp1{k;AJTsOORoSeo%MXAy5jq&pX$bYN(LYw8#oqu zVBmPp!f%lW1-NsC=XRxr`(6dv(^U)8O;2IE?S<)ff?I~+Pc2NhJxq5$rC__gIAi&) z622RR?H+`DFnds#t`er(1)fW*EbKNY>{h{Ud0H3WdPfu9kDXO;?3u!J(^8mj8)3S3 zMeK1faLaT%q%hqAVY&*QI}9#(D!YQ=o`yWUnce0IyUh@Gn zx#yE}%XCc&)9ols*9g;X3)8)dnAR_5Cp_idgnTnkAB5q*O$;~)1Ac&T%XfqD-Fe85 zvIm9rrU~oKR)x*1x1gEz{+%?p@ZCJ&yBYA^SGdBfu-+_Ty+*ykuHd}f)xvti!g>pY z^@fG@76|JN3+pWq)*BSo8xhtU6xJIN)*BSo8xhtU6xJIN)~kf|M&#{DN|;>eZk5g0LT zo^aVN>PwiY_3NBQt7)025+<4_OjHRI%}ZgTL1Cg9!bF3@L^Fhm28D@cz(hO17$Q1C z+u0G`soHT1+_We)2V9C8TcCIZ$ z&C~}pv(hwSrCHjt(llYES;9)wv}L7P!b;P$Wu;ldO4EduW(g}z)0UNH2`g=r!b-EX zWu-<~X|}ekw1cqHw!%s~2rF$Xth9r$(zezEB56BGpF~cF=pp3vWPLIrL-kOue~LZ@ zc^J$!EX=jQ`bQ*WgdRcs)Ai}dXW%O_A5V#AlHZZdyw>_upUByZczPy`SHw$^Ew2p< zug$i;5ebP%CGa|2RtcBQh0D?s!(4egg7wUZZ24=@`e#J8 z%rz*?HB*>tP6~6)<^5i3iDQ{-2U7tL%nPuQx0tp;UQSuq)4c$WMX z;fI(*kPl_mV1##7(puqLvLET`Zw4V-2Apdw1MX-}GTd>(ee>YHO-wfvrpx^W$325z zooUWQ9%)7*<82aolo`eK&w&9)jAg(Ck zGR<$zZ@K0KGXa)7(M*JwTm%nR!h>`1Q#pln;;WL7X*`3b@mM*X(w<>v5Hb^foG1KP z!H;Jn|IYA?9G)z%<~o)uE8)s{!j+Y9<*;z&0^!PG;mQSYWm-mI$&nP697$ox5n;)> zc)*-PdhRfDiGR1bn}58=+=F~Cyg5&Jb5MA52E6$JO6E`IPn67qaOj|L=nU&6llYcB z=LmZ?!k%-4JsV-qIl`U|?3wWd7Kp1&g z7RdeMjjDHu7r_Cgpn&@$n68|kvjxB zAV&fb9TOvsKDgQ zFP)$|*f*c60{b3v)kDtMU)uBblSI(tJb|8fGBg9OQlw(M^>8l!NbkZg=^gkdy&XTL zxAH#3Kj63Y_joW}h#%7%@Mn4*eoe2zzvk`|omy|F*5BzSJf2qI@znY} zwO&sv16Q&;;`=n|{nYwDwH{Ed57cdVLA8ERttV6uU#Qj_YCZl?tw+=y_(Zi{QLSH8 z>lxMhMz!8it$$SOA=UawwO&$p;3z7 z+1c>zT7*_}>B-SYWbR-bqyDy6)0gr5N0@1Nj6Tb0^j8+qpIXcq{JHc-mg84^1^tLC z={Z#3DLl?d_MMDi*E90}1*6Xot8cZz+jLN8s;3w&Zm$-@ya%c0>`WOw2HJTnCj;a* z9`^}cOe#k3P1A>Kwkpz+iND&X@mu>O{%Z^IW4i!5yANRrW z6%3Rsb<(k8N6olsC1_QbO%O`AGnR_kvgFTP~#)QMM&JsanZ z6J|~td)1^_{SNE1Tb#qDT|7~Z8aDXIqx-4GKRlx856RS-<31cZBwRgk{q>hTb7c72 zmJI#M$~{^qy6Icjlz2*wKWXZWA(JPcKH>7K)D-atGU>33Cr@sQ?Dys}yJo-XP2yterizF@6 zTBY^pT&s^%22IyGmut=7YAyLaf&rvH&9MI+A^o<*W=Y(uNa^I19Q@RO9!4%Ev)k=J zsZ2(2olE5^wp6B39=233RhRJ(id#fc3idzGYz((0ZvV3>&GuWe^!DbzlX@7*HK&rI z*_7X`lwABgJ@jGlPNSF9YwTKrE#;>eV6zpkP327TJO%wuCbvDX#@40Y@*7+B|G}G= V#`LFBg9iQwr}6)j_P new AsbSaubReportPdf.ReprotGeneratorPdf(dataSource), }; + + if(begin == default || end == default) + { + var analyzeResult = dataSource.Analyze(); + begin = begin == default ? analyzeResult.MinDate : begin; + end = end == default ? begin.AddDays(1) : end; + } + generator.Begin = begin; generator.End = end; generator.Step = TimeSpan.FromSeconds(stepSeconds); diff --git a/AsbCloudWebApi/wwwroot/index.html b/AsbCloudWebApi/wwwroot/index.html index 55a0c527..4a8d1fca 100644 --- a/AsbCloudWebApi/wwwroot/index.html +++ b/AsbCloudWebApi/wwwroot/index.html @@ -1 +1 @@ -DDrilling
\ No newline at end of file +DDrill
\ No newline at end of file