using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data.ProcessMaps;
///
/// РТК план бурение скважины
///
public class ProcessMapPlanDrillingDto : ProcessMapPlanBaseDto
{
///
/// Id режима 1-ротор, 2 - слайд
///
[Range(1, 2, ErrorMessage = "Id режима должен быть либо 1-ротор либо 2-слайд")]
public int IdMode { get; set; }
///
/// Название режима бурения
///
public string? Mode { get; set; }
///
/// Осевая нагрузка, т план
///
[Range(0, 99999.9, ErrorMessage = "Осевая нагрузка, т должна быть в пределах от 0 до 99999.9")]
public double AxialLoadPlan { get; set; }
///
/// Осевая нагрузка, т ограничение
///
[Range(0, 99999.9, ErrorMessage = "Осевая нагрузка, т должна быть в пределах от 0 до 99999.9")]
public double AxialLoadLimitMax { get; set; }
///
/// Перепад давления, атм план
///
[Range(0, 99999.9, ErrorMessage = "Перепад давления, атм должна быть в пределах от 0 до 99999.9")]
public double DeltaPressurePlan { get; set; }
///
/// Перепад давления, атм ограничение
///
[Range(0, 99999.9, ErrorMessage = "Перепад давления, атм должна быть в пределах от 0 до 99999.9")]
public double DeltaPressureLimitMax { get; set; }
///
/// Момент на ВСП, кН*м план
///
[Range(0, 99999.9, ErrorMessage = "Момент на ВСП, кН*м должна быть в пределах от 0 до 99999.9")]
public double TopDriveTorquePlan { get; set; }
///
/// Момент на ВСП, кН*м ограничение
///
[Range(0, 99999.9, ErrorMessage = "Момент на ВСП, кН*м должна быть в пределах от 0 до 99999.9")]
public double TopDriveTorqueLimitMax { get; set; }
///
/// Обороты на ВСП, об/мин план
///
[Range(0, 99999.9, ErrorMessage = "Обороты на ВСП, об/мин должна быть в пределах от 0 до 99999.9")]
public double TopDriveSpeedPlan { get; set; }
///
/// Обороты на ВСП, об/мин ограничение
///
[Range(0, 99999.9, ErrorMessage = "Обороты на ВСП, об/мин должна быть в пределах от 0 до 99999.9")]
public double TopDriveSpeedLimitMax { get; set; }
///
/// Расход, л/с план
///
[Range(0, 99999.9, ErrorMessage = "Расход, л/с должна быть в пределах от 0 до 99999.9")]
public double FlowPlan { get; set; }
///
/// Расход, л/с ограничение
///
[Range(0, 99999.9, ErrorMessage = "Расход, л/с должна быть в пределах от 0 до 99999.9")]
public double FlowLimitMax { get; set; }
///
/// Плановая механическая скорость, м/ч
///
[Range(0, 99999.9, ErrorMessage = "Плановая механическая скорость, м/ч должно быть в пределах от 0 до 99999.9")]
public double RopPlan { get; set; }
///
/// Плановый процент использования АКБ
///
[Range(0, 100, ErrorMessage = "Процент использования АКБ должен быть в пределах от 0 до 100")]
public double UsageSaub { get; set; }
///
/// Плановый процент использования spin master
///
[Range(0, 100, ErrorMessage = "Процент использования spin master должен быть в пределах от 0 до 100")]
public double UsageSpin { get; set; }
///
/// Комментарий
///
public string Comment { get; set; } = string.Empty;
}