using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data.ProcessMaps;
///
/// РТК план осцилляция
///
public class ProcessMapPlanOscillationDto : ProcessMapPlanBaseDto
{
///
/// Оптимальный угол осцилляции, градусы
///
[Range(0.0, 6000.0, ErrorMessage = "Оптимальный угол осцилляции, градусы, должно быть в пределах от 0 до 6000")]
public double OptimalOscillationAngle { get; set; }
///
/// Скорость вправо, об/мин
///
[Range(0.0, 270.0, ErrorMessage = "Скорость вправо, об/мин, должно быть в пределах от 0 до 270")]
public double RpmRight { get; set; }
///
/// Скорость влево, об/мин
///
[Range(0.0, 270.0, ErrorMessage = "Скорость влево, об/мин, должно быть в пределах от 0 до 270")]
public double RpmLeft { get; set; }
///
/// Ограничение момента вправо, кН*м
///
[Range(0.0, 35.0, ErrorMessage = "Ограничение момента вправо, кН*м., должно быть в пределах от 0 до 35")]
public double TorqueMaxRight { get; set; }
///
/// Ограничение момента влево, кН*м
///
[Range(0.0, 35.0, ErrorMessage = "Ограничение момента влево, кН*м., должно быть в пределах от 0 до 35")]
public double TorqueMaxLeft { get; set; }
///
/// Режим Авто/Руч
///
[Range(0, 1, ErrorMessage = "Режим Авто/Руч, должен быть либо 0, либо 1")]
public int Mode { get; set; }
///
/// Примечание
///
[StringLength(1024, ErrorMessage = "Примечание, должно быть не более 1024 символов")]
public string Note { get; set; } = string.Empty;
}