using Microsoft.EntityFrameworkCore; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Text.Json.Serialization; namespace AsbCloudDb.Model { [Table("t_drill_params"), Comment("Режим бурения в секции (диапазоны параметров бурения)")] public class DrillParams : IId { [Key] [Column("id")] public int Id { get; set; } [Column("well_id"), Comment("Id скважины")] public int IdWell { get; set; } [Column("depth_start"), Comment("Стартовая глубина")] public double DepthStart { get; set; } [Column("depth_end"), Comment("Глубина окончания интервала")] public double DepthEnd { get; set; } [Column("id_wellsection_type"), Comment("Id с типом секции скважины")] public int IdWellSectionType { get; set; } [Column("axial_load_min"), Comment("Минимальная нагрузка")] public double AxialLoadMin { get; set; } [Column("axial_load_avg"), Comment("Средняя нагрузка")] public double AxialLoadAvg { get; set; } [Column("axial_load_max"), Comment("Максимальная нагрузка")] public double AxialLoadMax { get; set; } [Column("pressure_min"), Comment("Минимальное давление")] public double PressureMin { get; set; } [Column("pressure_avg"), Comment("Среднее давление")] public double PressureAvg { get; set; } [Column("pressure_max"), Comment("Максимальное давление")] public double PressureMax { get; set; } [Column("top_drive_min"), Comment("Минимальный момент на ВСП")] public double TopDriveTorqueMin { get; set; } [Column("top_drive_avg"), Comment("Средний момент на ВСП")] public double TopDriveTorqueAvg { get; set; } [Column("top_drive_max"), Comment("Максимальный момент на ВСП")] public double TopDriveTorqueMax { get; set; } [Column("top_drive_speed_min"), Comment("Минимальные обороты на ВСП")] public double TopDriveSpeedMin { get; set; } [Column("top_drive_speed_avg"), Comment("Средние обороты на ВСП")] public double TopDriveSpeedAvg { get; set; } [Column("top_drive_speed_max"), Comment("Максимальные обороты на ВСП")] public double TopDriveSpeedMax { get; set; } [Column("consumption_min"), Comment("Минимальный расход")] public double ConsumptionMin { get; set; } [Column("consumption_avg"), Comment("Средний расход")] public double ConsumptionAvg { get; set; } [Column("consumption_max"), Comment("Максимальный расход")] public double ConsumptionMax { get; set; } [JsonIgnore] [ForeignKey(nameof(IdWell))] public virtual Well Well { get; set; } [JsonIgnore] [ForeignKey(nameof(IdWellSectionType))] public virtual WellSectionType WellSectionType { get; set; } } }