diff --git a/AsbCloudApp/Data/ProcessMaps/ProcessMapPlanPositioningOffTheBottomDto.cs b/AsbCloudApp/Data/ProcessMaps/ProcessMapPlanPositioningOffTheBottomDto.cs
new file mode 100644
index 00000000..85b821f6
--- /dev/null
+++ b/AsbCloudApp/Data/ProcessMaps/ProcessMapPlanPositioningOffTheBottomDto.cs
@@ -0,0 +1,88 @@
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace AsbCloudApp.Data.ProcessMaps;
+
+///
+/// РТК план позиционирования над забоем
+///
+public class ProcessMapPlanPositioningOffTheBottomDto : ProcessMapPlanBaseDto
+{
+ ///
+ /// Остановка над забоем, м.
+ ///
+ [Range(0.0, 30.0, ErrorMessage = "Остановка над забоем, м., должно быть в пределах от 0 до 30")]
+ public double StopOffTheBottom { get; set; }
+
+ ///
+ /// Максимально допустимое давление, атм.
+ ///
+ [Range(0.0, 400.0, ErrorMessage = "Максимально допустимое давление, атм., должно быть в пределах от 0 до 400")]
+ public double PressureMax { get; set; }
+
+ ///
+ /// Перепад давления уставка, атм.
+ ///
+ [Range(0.0, 60.0, ErrorMessage = "Перепад давления уставка, атм., должно быть в пределах от 0 до 60")]
+ public double DifferentialPressure { get; set; }
+
+ ///
+ /// Затяжка, т.
+ ///
+ [Range(0.0, 20.0, ErrorMessage = "Затяжка, т., должно быть в пределах от 0 до 20")]
+ public double Tight { get; set; }
+
+ ///
+ /// Посадка, т.
+ ///
+ [Range(0.0, 20.0, ErrorMessage = "Посадка, т., должно быть в пределах от 0 до 20")]
+ public double SlackingOff { get; set; }
+
+ ///
+ /// Максимально допустимый момент, кН*м.
+ ///
+ [Range(0.0, 35.0, ErrorMessage = "Максимально допустимый момент, кН*м., должно быть в пределах от 0 до 35")]
+ public double TorqueMax { get; set; }
+
+ ///
+ /// Скорость вверх, м/ч.
+ ///
+ [Range(0.0, 999.0, ErrorMessage = "Скорость вверх, м/ч., должно быть в пределах от 0 до 999")]
+ public double RopUp { get; set; }
+
+ ///
+ /// Скорость вниз, м/ч.
+ ///
+ [Range(0.0, 999.0, ErrorMessage = "Скорость вниз, м/ч., должно быть в пределах от 0 до 999")]
+ public double RopDown { get; set; }
+
+ ///
+ /// Обороты вверх, об/мин.
+ ///
+ [Range(0.0, 270.0, ErrorMessage = "Обороты вверх, об/мин., должно быть в пределах от 0 до 270")]
+ public double RpmUp { get; set; }
+
+ ///
+ /// Обороты вниз, об/мин.
+ ///
+ [Range(0.0, 270.0, ErrorMessage = "Обороты вниз, об/мин., должно быть в пределах от 0 до 270")]
+ public double RpmDown { get; set; }
+
+ ///
+ /// Расход вверх, л/с.
+ ///
+ [Range(0.0, 100.0, ErrorMessage = "Расход вверх, л/с., должно быть в пределах от 0 до 100")]
+ public double FlowRateUp { get; set; }
+
+ ///
+ /// Расход вниз, л/с.
+ ///
+ [Range(0.0, 100.0, ErrorMessage = "Расход вниз, л/с., должно быть в пределах от 0 до 100")]
+ public double FlowRateDown { get; set; }
+
+ ///
+ /// Примечание
+ ///
+ [StringLength(1024, ErrorMessage = "Примечание, должно быть не более 1024 символов")]
+ public string Note { get; set; } = string.Empty;
+}
\ No newline at end of file
diff --git a/AsbCloudDb/Model/ProcessMapPlan/ProcessMapPlanPositioningOffTheBottom.cs b/AsbCloudDb/Model/ProcessMapPlan/ProcessMapPlanPositioningOffTheBottom.cs
index 2adcaef7..0d1cecf3 100644
--- a/AsbCloudDb/Model/ProcessMapPlan/ProcessMapPlanPositioningOffTheBottom.cs
+++ b/AsbCloudDb/Model/ProcessMapPlan/ProcessMapPlanPositioningOffTheBottom.cs
@@ -8,11 +8,70 @@ namespace AsbCloudDb.Model.ProcessMaps;
[Table("t_process_map_plan_positioning_off_the_bottom"), Comment("Позиционирование над забоем")]
public class ProcessMapPlanPositioningOffTheBottom : ProcessMapPlanBase
{
- [Column("stop_off_the_bottom"), Comment("Остановка над забоем, м")]
+ [Column("stop_off_the_bottom"), Comment("Остановка над забоем, м.")]
[Range(0.0, 30.0)]
[Required]
public double StopOffTheBottom { get; set; }
+ [Column("pressure_max"), Comment("Максимально допустимое давление, атм.")]
+ [Range(0.0, 400.0)]
+ [Required]
+ public double PressureMax { get; set; }
+
+ [Column("differential_pressure"), Comment("Перепад давления уставка, атм.")]
+ [Range(0.0, 60.0)]
+ [Required]
+ public double DifferentialPressure { get; set; }
+
+ [Column("tight"), Comment("Затяжка, т.")]
+ [Range(0.0, 20.0)]
+ [Required]
+ public double Tight { get; set; }
+
+ [Column("slacking_off"), Comment("Посадка, т.")]
+ [Range(0.0, 20.0)]
+ [Required]
+ public double SlackingOff { get; set; }
+
+ [Column("torque_max"), Comment("Максимально допустимый момент, кН*м.")]
+ [Range(0.0, 35.0)]
+ [Required]
+ public double TorqueMax { get; set; }
+
+ [Column("rop_up"), Comment("Скорость вверх, м/ч.")]
+ [Range(0.0, 999.0)]
+ [Required]
+ public double RopUp { get; set; }
+
+ [Column("rop_down"), Comment("Скорость вниз, м/ч.")]
+ [Range(0.0, 999.0)]
+ [Required]
+ public double RopDown { get; set; }
+
+ [Column("rpm_up"), Comment("Обороты вверх, об/мин.")]
+ [Range(0.0, 270.0)]
+ [Required]
+ public double RpmUp { get; set; }
+
+ [Column("rpm_down"), Comment("Обороты вниз, об/мин.")]
+ [Range(0.0, 270.0)]
+ [Required]
+ public double RpmDown { get; set; }
+
+ [Column("flow_rate_up"), Comment("Расход вверх, л/с.")]
+ [Range(0.0, 100.0)]
+ [Required]
+ public double FlowRateUp { get; set; }
+
+ [Column("flow_rate_down"), Comment("Расход вниз, л/с.")]
+ [Range(0.0, 100.0)]
+ [Required]
+ public double FlowRateDown { get; set; }
+
+ [Column("note"), Comment("Примечание"), StringLength(1024)]
+ [Required]
+ public string Note { get; set; } = string.Empty;
+
[ForeignKey(nameof(IdPrevious))]
public virtual ProcessMapPlanPositioningOffTheBottom? Previous { get; set; }
}
\ No newline at end of file