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_slide"), Comment("РТК план бурение слайд")] public class ProcessMapPlanSlide : ProcessMapPlanBase { [Column("rop_limit_max"), Comment("Максимально допустимая скорость, м/ч")] [Range(0, 800.0)] [Required] public double RopLimitMax { get; set; } [Column("pressure_limit_max"), Comment("Максимально допустимое давление, атм")] [Range(0, 400.0)] [Required] public double PressureLimitMax { get; set; } [Column("differential_pressure"), Comment("Перепад давления, атм. Уставка")] [Range(0, 60.0)] [Required] public double DifferentialPressure { get; set; } [Column("differential_pressure_limit_max"), Comment("Перепад давления, атм. Ограничение")] [Range(0, 60.0)] [Required] public double DifferentialPressureLimitMax { get; set; } [Column("weight_on_bit"), Comment("Нагрузка, т. Уставка")] [Range(0, 50.0)] [Required] public double WeightOnBit { get; set; } [Column("weight_on_bit_limit_max"), Comment("Нагрузка, т. Ограничение")] [Range(0, 50.0)] [Required] public double WeightOnBitLimitMax { get; set; } [Column("flow_rate"), Comment("Расход л/с. Уставка")] [Range(0, 100.0)] [Required] public double FlowRate { get; set; } [Column("flow_rate_limit_max"), Comment("Расход л/с. Ограничение")] [Range(0, 100.0)] [Required] public double FlowRateLimitMax { get; set; } [Column("spring"), Comment("Расчётная пружина, градус")] [Range(0, 9999.9)] [Required] public double Spring { get; set; } [Column("tool_buckling"), Comment("Складывание инструмента, м")] [Range(0, 9999.9)] [Required] public double ToolBuckling { get; set; } [Column("note"), Comment("Примечание"), StringLength(1024)] public string Note { get; set; } = string.Empty; [ForeignKey(nameof(IdPrevious))] public virtual ProcessMapPlanSlide? Previous { get; set; } }