forked from ddrilling/AsbCloudServer
Enable nullable on Telemetry*
This commit is contained in:
parent
02a8db1a58
commit
09d0d42688
@ -1,5 +1,6 @@
|
|||||||
namespace AsbCloudApp.Data.SAUB
|
namespace AsbCloudApp.Data.SAUB
|
||||||
{
|
{
|
||||||
|
#nullable enable
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Описание шаблона события панели оператора
|
/// Описание шаблона события панели оператора
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -13,7 +14,7 @@
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// шаблон текста сообщения
|
/// шаблон текста сообщения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Message { get; set; }
|
public string Message { get; set; } = string.Empty;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// id категории события
|
/// id категории события
|
||||||
@ -23,7 +24,7 @@
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// переменная сервера обмена информацией с полевым оборудованием
|
/// переменная сервера обмена информацией с полевым оборудованием
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Tag { get; set; }
|
public string Tag { get; set; } = string.Empty;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// тип определения наступления события
|
/// тип определения наступления события
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
|
#nullable enable
|
||||||
namespace AsbCloudApp.Data.SAUB
|
namespace AsbCloudApp.Data.SAUB
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -42,7 +42,7 @@ namespace AsbCloudApp.Data.SAUB
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// telemetry user
|
/// telemetry user
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string User { get; set; }
|
public string? User { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Глубина забоя
|
/// Глубина забоя
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace AsbCloudApp.Data.SAUB
|
namespace AsbCloudApp.Data.SAUB
|
||||||
{
|
{
|
||||||
|
#nullable enable
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// общая информация о панели оператора
|
/// общая информация о панели оператора
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -15,7 +16,7 @@ namespace AsbCloudApp.Data.SAUB
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// идентификатор временной зоны
|
/// идентификатор временной зоны
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string TimeZoneId { get; set; }
|
public string? TimeZoneId { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// смещение в часах относительно UTC
|
/// смещение в часах относительно UTC
|
||||||
@ -25,41 +26,41 @@ namespace AsbCloudApp.Data.SAUB
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// название скважины
|
/// название скважины
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Well { get; set; }
|
public string Well { get; set; } = string.Empty;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// название куста
|
/// название куста
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Cluster { get; set; }
|
public string Cluster { get; set; } = string.Empty;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// название заказчика
|
|
||||||
/// </summary>
|
|
||||||
public string Customer { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// название месторождения
|
/// название месторождения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Deposit { get; set; }
|
public string Deposit { get; set; } = string.Empty;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// название заказчика
|
||||||
|
/// </summary>
|
||||||
|
public string? Customer { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// версия ПО панели оператора
|
/// версия ПО панели оператора
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string HmiVersion { get; set; }
|
public string? HmiVersion { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// версия ПО ПЛК САУБ
|
/// версия ПО ПЛК САУБ
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string SaubPlcVersion { get; set; }
|
public string? SaubPlcVersion { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// версия ПО ПЛК Спин мастер
|
/// версия ПО ПЛК Спин мастер
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string SpinPlcVersion { get; set; }
|
public string? SpinPlcVersion { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// комментарий
|
/// комментарий
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Comment { get; set; }
|
public string? Comment { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace AsbCloudApp.Data.SAUB
|
namespace AsbCloudApp.Data.SAUB
|
||||||
{
|
{
|
||||||
|
#nullable enable
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Сообщение получаемое от телеметрии с буровой
|
/// Сообщение получаемое от телеметрии с буровой
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -35,21 +36,21 @@ namespace AsbCloudApp.Data.SAUB
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// аргумент №0 для подстановки в шаблон сообщения
|
/// аргумент №0 для подстановки в шаблон сообщения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Arg0 { get; set; }
|
public string? Arg0 { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// аргумент №1 для подстановки в шаблон сообщения
|
/// аргумент №1 для подстановки в шаблон сообщения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Arg1 { get; set; }
|
public string? Arg1 { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// аргумент №2 для подстановки в шаблон сообщения
|
/// аргумент №2 для подстановки в шаблон сообщения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Arg2 { get; set; }
|
public string? Arg2 { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// аргумент №3 для подстановки в шаблон сообщения
|
/// аргумент №3 для подстановки в шаблон сообщения
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Arg3 { get; set; }
|
public string? Arg3 { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
namespace AsbCloudApp.Data.SAUB
|
namespace AsbCloudApp.Data.SAUB
|
||||||
{
|
{
|
||||||
|
#nullable enable
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Пользователь панели оператора
|
/// Пользователь панели оператора
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -11,22 +12,22 @@
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Имя
|
/// Имя
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Name { get; set; }
|
public string? Name { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Фамилия
|
/// Фамилия
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Surname { get; set; }
|
public string Surname { get; set; } = null!;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Отчество
|
/// Отчество
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Patronymic { get; set; }
|
public string? Patronymic { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Уровень доступа
|
/// Уровень доступа
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int Level { get; set; }
|
public int? Level { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Собрать отображаемое имя пользователя
|
/// Собрать отображаемое имя пользователя
|
||||||
|
7027
AsbCloudDb/Migrations/20230220095933_Enable_nullable_on_telemetry_.Designer.cs
generated
Normal file
7027
AsbCloudDb/Migrations/20230220095933_Enable_nullable_on_telemetry_.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,124 @@
|
|||||||
|
using Microsoft.EntityFrameworkCore.Migrations;
|
||||||
|
|
||||||
|
#nullable disable
|
||||||
|
|
||||||
|
namespace AsbCloudDb.Migrations
|
||||||
|
{
|
||||||
|
public partial class Enable_nullable_on_telemetry_ : Migration
|
||||||
|
{
|
||||||
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.Sql("update t_telemetry set timezone = '{\"Hours\": 5}' where timezone is null;");
|
||||||
|
migrationBuilder.Sql("update t_telemetry set info = '{}' where info is null;");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "surname",
|
||||||
|
table: "t_telemetry_user",
|
||||||
|
type: "character varying(255)",
|
||||||
|
maxLength: 255,
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "character varying(255)",
|
||||||
|
oldMaxLength: 255,
|
||||||
|
oldNullable: true);
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "message_template",
|
||||||
|
table: "t_telemetry_event",
|
||||||
|
type: "text",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text",
|
||||||
|
oldNullable: true);
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "timezone",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "jsonb",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "{\"Hours\": 5}",
|
||||||
|
comment: "Смещение часового пояса от UTC",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "jsonb",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "Смещение часового пояса от UTC");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "remote_uid",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "text",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "",
|
||||||
|
comment: "Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "info",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "jsonb",
|
||||||
|
nullable: false,
|
||||||
|
defaultValue: "{}",
|
||||||
|
comment: "Информация с панели о скважине",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "jsonb",
|
||||||
|
oldNullable: true,
|
||||||
|
oldComment: "Информация с панели о скважине");
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void Down(MigrationBuilder migrationBuilder)
|
||||||
|
{
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "surname",
|
||||||
|
table: "t_telemetry_user",
|
||||||
|
type: "character varying(255)",
|
||||||
|
maxLength: 255,
|
||||||
|
nullable: true,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "character varying(255)",
|
||||||
|
oldMaxLength: 255);
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "message_template",
|
||||||
|
table: "t_telemetry_event",
|
||||||
|
type: "text",
|
||||||
|
nullable: true,
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "timezone",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "jsonb",
|
||||||
|
nullable: true,
|
||||||
|
comment: "Смещение часового пояса от UTC",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "jsonb",
|
||||||
|
oldComment: "Смещение часового пояса от UTC");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "remote_uid",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "text",
|
||||||
|
nullable: true,
|
||||||
|
comment: "Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "text",
|
||||||
|
oldComment: "Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
|
||||||
|
|
||||||
|
migrationBuilder.AlterColumn<string>(
|
||||||
|
name: "info",
|
||||||
|
table: "t_telemetry",
|
||||||
|
type: "jsonb",
|
||||||
|
nullable: true,
|
||||||
|
comment: "Информация с панели о скважине",
|
||||||
|
oldClrType: typeof(string),
|
||||||
|
oldType: "jsonb",
|
||||||
|
oldComment: "Информация с панели о скважине");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -3300,16 +3300,19 @@ namespace AsbCloudDb.Migrations
|
|||||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||||
|
|
||||||
b.Property<string>("Info")
|
b.Property<string>("Info")
|
||||||
|
.IsRequired()
|
||||||
.HasColumnType("jsonb")
|
.HasColumnType("jsonb")
|
||||||
.HasColumnName("info")
|
.HasColumnName("info")
|
||||||
.HasComment("Информация с панели о скважине");
|
.HasComment("Информация с панели о скважине");
|
||||||
|
|
||||||
b.Property<string>("RemoteUid")
|
b.Property<string>("RemoteUid")
|
||||||
|
.IsRequired()
|
||||||
.HasColumnType("text")
|
.HasColumnType("text")
|
||||||
.HasColumnName("remote_uid")
|
.HasColumnName("remote_uid")
|
||||||
.HasComment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
|
.HasComment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.");
|
||||||
|
|
||||||
b.Property<string>("TimeZone")
|
b.Property<string>("TimeZone")
|
||||||
|
.IsRequired()
|
||||||
.HasColumnType("jsonb")
|
.HasColumnType("jsonb")
|
||||||
.HasColumnName("timezone")
|
.HasColumnName("timezone")
|
||||||
.HasComment("Смещение часового пояса от UTC");
|
.HasComment("Смещение часового пояса от UTC");
|
||||||
@ -3638,6 +3641,7 @@ namespace AsbCloudDb.Migrations
|
|||||||
.HasColumnName("id_category");
|
.HasColumnName("id_category");
|
||||||
|
|
||||||
b.Property<string>("MessageTemplate")
|
b.Property<string>("MessageTemplate")
|
||||||
|
.IsRequired()
|
||||||
.HasColumnType("text")
|
.HasColumnType("text")
|
||||||
.HasColumnName("message_template");
|
.HasColumnName("message_template");
|
||||||
|
|
||||||
@ -3733,6 +3737,7 @@ namespace AsbCloudDb.Migrations
|
|||||||
.HasColumnName("patronymic");
|
.HasColumnName("patronymic");
|
||||||
|
|
||||||
b.Property<string>("Surname")
|
b.Property<string>("Surname")
|
||||||
|
.IsRequired()
|
||||||
.HasMaxLength(255)
|
.HasMaxLength(255)
|
||||||
.HasColumnType("character varying(255)")
|
.HasColumnType("character varying(255)")
|
||||||
.HasColumnName("surname");
|
.HasColumnName("surname");
|
||||||
|
@ -3,50 +3,41 @@ using System.Collections.Generic;
|
|||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
[Table("t_telemetry"), Comment("таблица привязки телеметрии от комплектов к конкретной скважине.")]
|
[Table("t_telemetry"), Comment("таблица привязки телеметрии от комплектов к конкретной скважине.")]
|
||||||
[Index(nameof(RemoteUid), Name = "t_telemetry_remote_uid_index")]
|
[Index(nameof(RemoteUid), Name = "t_telemetry_remote_uid_index")]
|
||||||
public partial class Telemetry : IId
|
public partial class Telemetry : IId
|
||||||
{
|
{
|
||||||
public Telemetry()
|
|
||||||
{
|
|
||||||
DataSaub = new HashSet<TelemetryDataSaub>();
|
|
||||||
Messages = new HashSet<TelemetryMessage>();
|
|
||||||
}
|
|
||||||
|
|
||||||
[Key]
|
[Key]
|
||||||
[Column("id")]
|
[Column("id")]
|
||||||
public int Id { get; set; }
|
public int Id { get; set; }
|
||||||
|
|
||||||
[Column("remote_uid"), Comment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.")]
|
[Column("remote_uid"), Comment("Идентификатор передающего устройства. Может повторяться в списке, так как комплекты оборудования переезжают от скв. к скв.")]
|
||||||
public string RemoteUid { get; set; }
|
public string RemoteUid { get; set; } = null!;
|
||||||
|
|
||||||
[Column("info", TypeName = "jsonb"), Comment("Информация с панели о скважине")]
|
[Column("info", TypeName = "jsonb"), Comment("Информация с панели о скважине")]
|
||||||
public TelemetryInfo Info { get; set; }
|
public TelemetryInfo Info { get; set; } = new();
|
||||||
|
|
||||||
[Column("timezone", TypeName = "jsonb"), Comment("Смещение часового пояса от UTC")]
|
[Column("timezone", TypeName = "jsonb"), Comment("Смещение часового пояса от UTC")]
|
||||||
public SimpleTimezone TimeZone { get; set; }
|
public SimpleTimezone TimeZone { get; set; } = null!;
|
||||||
|
|
||||||
[InverseProperty(nameof(Model.Well.Telemetry))]
|
[InverseProperty(nameof(Model.Well.Telemetry))]
|
||||||
public virtual Well Well { get; set; }
|
public virtual Well? Well { get; set; }
|
||||||
|
|
||||||
[InverseProperty(nameof(TelemetryDataSaub.Telemetry))]
|
[InverseProperty(nameof(TelemetryDataSaub.Telemetry))]
|
||||||
public virtual ICollection<TelemetryDataSaub> DataSaub { get; set; }
|
public virtual ICollection<TelemetryDataSaub> DataSaub { get; set; } = null!;
|
||||||
|
|
||||||
[InverseProperty(nameof(TelemetryDataSpin.Telemetry))]
|
[InverseProperty(nameof(TelemetryDataSpin.Telemetry))]
|
||||||
public virtual ICollection<TelemetryDataSpin> DataSpin { get; set; }
|
public virtual ICollection<TelemetryDataSpin> DataSpin { get; set; } = null!;
|
||||||
|
|
||||||
[InverseProperty(nameof(TelemetryMessage.Telemetry))]
|
[InverseProperty(nameof(TelemetryMessage.Telemetry))]
|
||||||
public virtual ICollection<TelemetryMessage> Messages { get; set; }
|
public virtual ICollection<TelemetryMessage> Messages { get; set; } = null!;
|
||||||
|
|
||||||
[InverseProperty(nameof(TelemetryUser.Telemetry))]
|
[InverseProperty(nameof(TelemetryUser.Telemetry))]
|
||||||
public virtual ICollection<TelemetryUser> Users { get; set; }
|
public virtual ICollection<TelemetryUser> Users { get; set; } = null!;
|
||||||
|
|
||||||
[InverseProperty(nameof(TelemetryEvent.Telemetry))]
|
[InverseProperty(nameof(TelemetryEvent.Telemetry))]
|
||||||
public virtual ICollection<TelemetryEvent> Events { get; set; }
|
public virtual ICollection<TelemetryEvent> Events { get; set; } = null!;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,8 +3,6 @@ using System;
|
|||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
[Table("t_telemetry_data_saub"), Comment("набор основных данных по SAUB")]
|
[Table("t_telemetry_data_saub"), Comment("набор основных данных по SAUB")]
|
||||||
@ -130,9 +128,6 @@ namespace AsbCloudDb.Model
|
|||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
[ForeignKey(nameof(IdTelemetry))]
|
[ForeignKey(nameof(IdTelemetry))]
|
||||||
[InverseProperty(nameof(Model.Telemetry.DataSaub))]
|
[InverseProperty(nameof(Model.Telemetry.DataSaub))]
|
||||||
public virtual Telemetry Telemetry { get; set; }
|
public virtual Telemetry Telemetry { get; set; } = null!;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,7 +5,6 @@ using System.Text.Json.Serialization;
|
|||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
#nullable disable
|
|
||||||
[Table("t_telemetry_data_spin"), Comment("набор основных данных по SpinMaster")]
|
[Table("t_telemetry_data_spin"), Comment("набор основных данных по SpinMaster")]
|
||||||
public class TelemetryDataSpin : ITelemetryData
|
public class TelemetryDataSpin : ITelemetryData
|
||||||
{
|
{
|
||||||
@ -48,7 +47,6 @@ namespace AsbCloudDb.Model
|
|||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
[ForeignKey(nameof(IdTelemetry))]
|
[ForeignKey(nameof(IdTelemetry))]
|
||||||
[InverseProperty(nameof(Model.Telemetry.DataSpin))]
|
[InverseProperty(nameof(Model.Telemetry.DataSpin))]
|
||||||
public virtual Telemetry Telemetry { get; set; }
|
public virtual Telemetry Telemetry { get; set; } = null!;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
[Table("t_telemetry_event"), Comment("Справочник событий. События формируют сообщения. Разделено по версиям посылок от телеметрии.")]
|
[Table("t_telemetry_event"), Comment("Справочник событий. События формируют сообщения. Разделено по версиям посылок от телеметрии.")]
|
||||||
@ -18,17 +16,17 @@ namespace AsbCloudDb.Model
|
|||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
[ForeignKey(nameof(IdTelemetry))]
|
[ForeignKey(nameof(IdTelemetry))]
|
||||||
[InverseProperty(nameof(Model.Telemetry.Events))]
|
[InverseProperty(nameof(Model.Telemetry.Events))]
|
||||||
public virtual Telemetry Telemetry { get; set; }
|
public virtual Telemetry Telemetry { get; set; } = null!;
|
||||||
|
|
||||||
[Column("id_category")]
|
[Column("id_category")]
|
||||||
public int IdCategory { get; set; }
|
public int IdCategory { get; set; }
|
||||||
|
|
||||||
[Column("message_template")]
|
[Column("message_template")]
|
||||||
public string MessageTemplate { get; set; }
|
public string MessageTemplate { get; set; } = string.Empty;
|
||||||
|
|
||||||
public string MakeMessageText(TelemetryMessage message)
|
public string MakeMessageText(TelemetryMessage message)
|
||||||
{
|
{
|
||||||
var args = new string[] { message.Arg0, message.Arg1, message.Arg2, message.Arg3 };
|
var args = new string?[] { message.Arg0, message.Arg1, message.Arg2, message.Arg3 };
|
||||||
return string.Format(MessageTemplate, args);
|
return string.Format(MessageTemplate, args);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,20 +2,18 @@
|
|||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
#nullable disable
|
|
||||||
public class TelemetryInfo
|
public class TelemetryInfo
|
||||||
{
|
{
|
||||||
public DateTimeOffset DrillingStartDate { get; set; }
|
public DateTimeOffset DrillingStartDate { get; set; }
|
||||||
public string TimeZoneId { get; set; }
|
public string? TimeZoneId { get; set; }
|
||||||
public double TimeZoneOffsetTotalHours { get; set; }
|
public double TimeZoneOffsetTotalHours { get; set; }
|
||||||
public string Well { get; set; }
|
public string Well { get; set; } = string.Empty;
|
||||||
public string Cluster { get; set; }
|
public string Cluster { get; set; } = string.Empty;
|
||||||
public string Customer { get; set; }
|
public string Deposit { get; set; } = string.Empty;
|
||||||
public string Deposit { get; set; }
|
public string? Customer { get; set; }
|
||||||
public string HmiVersion { get; set; }
|
public string? HmiVersion { get; set; }
|
||||||
public string SaubPlcVersion { get; set; }
|
public string? SaubPlcVersion { get; set; }
|
||||||
public string SpinPlcVersion { get; set; }
|
public string? SpinPlcVersion { get; set; }
|
||||||
public string Comment { get; set; }
|
public string? Comment { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -3,8 +3,6 @@ using System;
|
|||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
[Table("t_telemetry_message"), Comment("Сообщения на буровых")]
|
[Table("t_telemetry_message"), Comment("Сообщения на буровых")]
|
||||||
@ -31,22 +29,22 @@ namespace AsbCloudDb.Model
|
|||||||
|
|
||||||
[Column("arg0"), Comment("Аргумент №0 для вставки в шаблон сообщения")]
|
[Column("arg0"), Comment("Аргумент №0 для вставки в шаблон сообщения")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Arg0 { get; set; }
|
public string? Arg0 { get; set; }
|
||||||
|
|
||||||
[Column("arg1")]
|
[Column("arg1")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Arg1 { get; set; }
|
public string? Arg1 { get; set; }
|
||||||
|
|
||||||
[Column("arg2")]
|
[Column("arg2")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Arg2 { get; set; }
|
public string? Arg2 { get; set; }
|
||||||
|
|
||||||
[Column("arg3")]
|
[Column("arg3")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Arg3 { get; set; }
|
public string? Arg3 { get; set; }
|
||||||
|
|
||||||
[ForeignKey(nameof(IdTelemetry))]
|
[ForeignKey(nameof(IdTelemetry))]
|
||||||
[InverseProperty(nameof(Model.Telemetry.Messages))]
|
[InverseProperty(nameof(Model.Telemetry.Messages))]
|
||||||
public virtual Telemetry Telemetry { get; set; }
|
public virtual Telemetry Telemetry { get; set; } = null!;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,8 +3,6 @@ using System.ComponentModel.DataAnnotations;
|
|||||||
using System.ComponentModel.DataAnnotations.Schema;
|
using System.ComponentModel.DataAnnotations.Schema;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace AsbCloudDb.Model
|
namespace AsbCloudDb.Model
|
||||||
{
|
{
|
||||||
[Table("t_telemetry_user"), Comment("Пользователи панели САУБ. Для сообщений.")]
|
[Table("t_telemetry_user"), Comment("Пользователи панели САУБ. Для сообщений.")]
|
||||||
@ -19,19 +17,19 @@ namespace AsbCloudDb.Model
|
|||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
[ForeignKey(nameof(IdTelemetry))]
|
[ForeignKey(nameof(IdTelemetry))]
|
||||||
[InverseProperty(nameof(Model.Telemetry.Users))]
|
[InverseProperty(nameof(Model.Telemetry.Users))]
|
||||||
public virtual Telemetry Telemetry { get; set; }
|
public virtual Telemetry Telemetry { get; set; } = null!;
|
||||||
|
|
||||||
[Column("name")]
|
[Column("name")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Name { get; set; }
|
public string? Name { get; set; }
|
||||||
|
|
||||||
[Column("surname")]
|
[Column("surname")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Surname { get; set; }
|
public string Surname { get; set; } = null!;
|
||||||
|
|
||||||
[Column("patronymic")]
|
[Column("patronymic")]
|
||||||
[StringLength(255)]
|
[StringLength(255)]
|
||||||
public string Patronymic { get; set; }
|
public string? Patronymic { get; set; }
|
||||||
|
|
||||||
[Column("level")]
|
[Column("level")]
|
||||||
public int? Level { get; set; }
|
public int? Level { get; set; }
|
||||||
|
Loading…
Reference in New Issue
Block a user