using Microsoft.EntityFrameworkCore; using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace AsbCloudDb.Model { [Table("t_process_map_drilling_cache"), Comment("Кеш-таблица для хранения данных для РТК-отчета")] public class ProcessMapDrillingCache : IId { [Key] [Column("id")] public int Id { get; set; } [Column("date_from", TypeName = "timestamp with time zone"), Comment("Дата начала")] public DateTimeOffset DateFrom { get; set; } [Column("date_to", TypeName = "timestamp with time zone"), Comment("Дата окончания")] public DateTimeOffset DateTo { get; set; } /// /// Дата и время начала бурения /// [Column("date_drilling_start", TypeName = "timestamp with time zone"), Comment("Дата и время начала бурения")] public DateTimeOffset DateDrillingStart { get; set; } /// /// Дата и время окончания бурения /// [Column("date_drilling_end", TypeName = "timestamp with time zone"), Comment("Дата и время окончания бурения")] public DateTimeOffset DateDrillingEnd { 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 float? BlockSpeedSp { get; set; } /// /// Давление /// [Column("pressure"), Comment("Давление")] public double Pressure { get; set; } /// /// Давление холостого хода /// [Column("pressure_idle"), Comment("Давление холостого хода")] public float? PressureIdle { get; set; } /// /// Ограничение фактического давления /// [Column("pressure_sp"), Comment("Ограничение фактического давления")] public float? PressureSp { get; set; } /// /// Фактическая нагрузка /// [Column("axial_load"), Comment("Фактическая нагрузка")] public double AxialLoad { get; set; } /// /// Ограничение факт. нагрузки /// [Column("axial_load_sp"), Comment("Ограничение факт. нагрузки")] public float? AxialLoadSp { get; set; } /// /// Максимально допустимая нагрузка /// [Column("axial_load_limit_max"), Comment("Максимально допустимая нагрузка")] public float? AxialLoadLimitMax { get; set; } /// /// Фактический момент /// [Column("rotor_torque"), Comment("Фактический момент")] public double RotorTorque { get; set; } /// /// Ограничение факт. момента /// [Column("rotor_torque_sp"), Comment("Ограничение факт. момента")] public float? RotorTorqueSp { get; set; } /// /// Максимально допустимый момент /// [Column("rotor_torque_limit_max"), Comment("Максимально допустимый момент")] public float? RotorTorqueLimitMax { get; set; } /// /// Работа при достижении ограничения /// [Column("id_feed_regulator"), Comment("Работа при достижении ограничения")] public short? IdFeedRegulator { get; set; } /// /// Фактическая скорость оборотов ВСП /// [Column("rotor_speed"), Comment("Фактическая скорость оборотов ВСП")] public double RotorSpeed { get; set; } /// /// Название автоопределённой операции /// [Column("detected_operation_category_id"), Comment("Название автоопределённой операции")] public int DetectedOperationCategoryId { get; set; } /// /// Флаги подсистем /// [Column("enabled_subsystems"), Comment("Флаги подсистем")] public int EnabledSubsystems { get; set; } /// /// Наличие или отсутствие осцилляции /// [Column("has_oscillation"), Comment("Наличие или отсутствие осцилляции")] public bool HasOscillation { get; set; } } }