DD.WellWorkover.Cloud/AsbCloudDb/Model/DataSaubStat.cs

90 lines
3.9 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

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

using Microsoft.EntityFrameworkCore;
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
namespace AsbCloudDb.Model
{
[Table("t_data_saub_stat"), Comment("Кеш-таблица для хранения данных для РТК-отчета")]
public class DataSaubStat : IId
{
[Key]
[Column("id")]
public int Id { get; set; }
[Column("date_start", TypeName = "timestamp with time zone"), Comment("Дата и время начала")]
public DateTimeOffset DateStart { get; set; }
[Column("date_end", TypeName = "timestamp with time zone"), Comment("Дата и время окончания")]
public DateTimeOffset DateEnd { get; set; }
[Column("depth_start"), Comment("Глубина забоя по стволу начальная")]
public double DepthStart { get; set; }
[Column("depth_end"), Comment("Глубина забоя по стволу конечная")]
public double DepthEnd { get; set; }
[Column("speed"), Comment("Скорость бурения")]
public double Speed { get; set; }
[Column("block_speed_sp"), Comment("Ограничение скорости блока")]
public double? BlockSpeedSp { get; set; }
[Column("pressure"), Comment("Давление")]
public double Pressure { get; set; }
[Column("pressure_idle"), Comment("Давление холостого хода")]
public double? PressureIdle { get; set; }
[Column("pressure_sp"), Comment("Ограничение фактического давления")]
public double? PressureSp { get; set; }
[Column("axial_load"), Comment("Фактическая нагрузка")]
public double AxialLoad { get; set; }
[Column("axial_load_sp"), Comment("Ограничение факт. нагрузки")]
public double? AxialLoadSp { get; set; }
[Column("axial_load_limit_max"), Comment("Максимально допустимая нагрузка")]
public double? AxialLoadLimitMax { get; set; }
[Column("rotor_torque"), Comment("Фактический момент")]
public double RotorTorque { get; set; }
[Column("rotor_torque_sp"), Comment("Ограничение факт. момента")]
public double? RotorTorqueSp { get; set; }
[Column("rotor_torque_limit_max"), Comment("Максимально допустимый момент")]
public double? RotorTorqueLimitMax { get; set; }
[Column("id_feed_regulator"), Comment("Работа при достижении ограничения")]
public short? IdFeedRegulator { get; set; }
[Column("rotor_speed"), Comment("Фактическая скорость оборотов ВСП")]
public double RotorSpeed { get; set; }
[Column("id_category"), Comment("Название автоопределённой операции")]
public int IdCategory { get; set; }
[Column("enabled_subsystems"), Comment("Флаги подсистем")]
public int EnabledSubsystems { get; set; }
[Column("has_oscillation"), Comment("Наличие или отсутствие осцилляции")]
public bool HasOscillation { get; set; }
[Column("flow"), Comment("Фактический расход")]
public double Flow { get; set; }
[Column("id_telemetry"), Comment("Ключ телеметрии")]
public int IdTelemetry { get; set; }
[ForeignKey(nameof(IdTelemetry))]
public virtual Telemetry Telemetry { get; set; } = null!;
[JsonIgnore]
[ForeignKey(nameof(IdCategory))]
public virtual WellOperationCategory OperationCategory { get; set; } = null!;
}
}