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_plan"), Comment("Максимально допустимая скорость, м/ч")] [Range(0, 800.0)] [Required] public double RopPlan { get; set; } [Column("max_allowable_pressure"), Comment("Максимально допустимое давление, атм")] [Range(0.0, 400.0)] [Required] public double MaxAllowablePressure { get; set; } [Column("differential_pressure_plan"), Comment("Перепад давления, атм. Уставка")] [Range(0.0, 60.0)] [Required] public double DifferentialPressurePlan { get; set; } [Column("differential_pressure_limit_max"), Comment("Перепад давления, атм. Ограничение")] [Range(0.0, 60.0)] [Required] public double DifferentialPressureLimitMax { get; set; } [Column("weight_on_bit_plan"), Comment("Нагрузка, т. Уставка")] [Range(0.0, 99.0)] [Required] public double WeightOnBitPlan { get; set; } [Column("weight_on_bit_limit_max"), Comment("Нагрузка, т. Ограничение")] [Range(0.0, 99.0)] [Required] public double WeightOnBitLimitMax { get; set; } [Column("top_drive_torque_plan"), Comment("Момент на ВСП, кН*м. Уставка")] [Range(0.0, 35.0)] [Required] public double TopDriveTorquePlan { get; set; } [Column("top_drive_torque_limit_max"), Comment("Момент на ВСП, кН*м. Ограничение")] [Range(0.0, 35.0)] [Required] public double TopDriveTorquetLimit { get; set; } [Column("revolution_per_minute_plan"), Comment("Обороты на ВСП, об/мин. Уставка")] [Range(0.0, 270.0)] [Required] public double RevolutionsPerMinutePlan { get; set; } [Column("revolutions_per_minute_limit_max"), Comment("Обороты на ВСП, об/мин. Ограничение")] [Range(0.0, 270.0)] [Required] public double RevolutionsPerMinuteLimitMax { get; set; } [Column("flow_rate_plan"), Comment("Расход л/с. Уставка")] [Range(0.0, 100.0)] [Required] public double FlowRatePlan { 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; } }