using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using AsbCloudDb.Model.ProcessMapPlan; using Microsoft.EntityFrameworkCore; namespace AsbCloudDb.Model.ProcessMaps; [Table("t_process_map_plan_rotor"), Comment("РТК план бурение ротор")] public class ProcessMapPlanRotor : ProcessMapPlanBase { [Column("rop_limit_max"), Comment("Максимально допустимая скорость, м/ч")] [Range(0, 800.0)] [Required] public double RopLimitMax { get; set; } [Column("pressure_limit_max"), Comment("Максимально допустимое давление, атм")] [Range(0.0, 400.0)] [Required] public double PressureLimitMax { get; set; } [Column("differential_pressure"), Comment("Перепад давления, атм. Уставка")] [Range(0.0, 60.0)] [Required] public double DifferentialPressure { get; set; } [Column("differential_pressure_limit_max"), Comment("Перепад давления, атм. Ограничение")] [Range(0.0, 60.0)] [Required] public double DifferentialPressureLimitMax { get; set; } [Column("weight_on_bit"), Comment("Нагрузка, т. Уставка")] [Range(0.0, 99.0)] [Required] public double WeightOnBit { get; set; } [Column("weight_on_bit_limit_max"), Comment("Нагрузка, т. Ограничение")] [Range(0.0, 99.0)] [Required] public double WeightOnBitLimitMax { get; set; } [Column("top_drive_torque"), Comment("Момент на ВСП, кН*м. Уставка")] [Range(0.0, 35.0)] [Required] public double TopDriveTorque { get; set; } [Column("top_drive_torque_limit_max"), Comment("Момент на ВСП, кН*м. Ограничение")] [Range(0.0, 35.0)] [Required] public double TopDriveTorqueLimit { get; set; } [Column("revolution_per_minute"), Comment("Обороты на ВСП, об/мин. Уставка")] [Range(0.0, 270.0)] [Required] public double RevolutionsPerMinute { get; set; } [Column("revolutions_per_minute_limit_max"), Comment("Обороты на ВСП, об/мин. Ограничение")] [Range(0.0, 270.0)] [Required] public double RevolutionsPerMinuteLimitMax { get; set; } [Column("flow_rate"), Comment("Расход л/с. Уставка")] [Range(0.0, 100.0)] [Required] public double FlowRate { get; set; } [Column("flow_rate_limit_max"), Comment("Расход л/с. Ограничение")] [Range(0.0, 100.0)] [Required] public double FlowRateLimitMax { get; set; } [Column("note"), Comment("Примечание"), StringLength(1024)] public string Note { get; set; } = string.Empty; [ForeignKey(nameof(IdPrevious))] public virtual ProcessMapPlanRotor? Previous { get; set; } }