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_functions_oscillation"), Comment("Осцилляция")] public class ProcessMapPlanFunctionsOscillation : ProcessMapPlanBase { [Column("optimal_oscillation_angle"), Comment("Оптимальный угол осцилляции, градусы")] [Range(0.0, 6000.0)] [Required] public double OptimalOscillationAngle { get; set; } [Column("RPM​_right"), Comment("Скорость вправо, об/мин")] [Range(0.0, 270.0)] [Required] public double RPM​Right { get; set; } [Column("RPM​_left"), Comment("Скорость влево, об/мин")] [Range(0.0, 270.0)] [Required] public double RPM​Left { get; set; } [Column("torque_limit_right"), Comment("Ограничение момента вправо, кН*м")] [Range(0.0, 35.0)] [Required] public double TorqueLimitRight { get; set; } [Column("torque_limit_left"), Comment("Ограничение момента влево, кН*м")] [Range(0.0, 35.0)] [Required] public double TorqueLimitLeft { get; set; } [Column("id_mode"), Comment("Режим Авто/Руч")] [Required] public double Mode { get; set; } [Column("note"), Comment("Примечание"), StringLength(1024)] public string Note { get; set; } = string.Empty; [ForeignKey(nameof(IdPrevious))] public virtual ProcessMapPlanFunctionsOscillation? Previous { get; set; } }