DD.WellWorkover.Cloud/AsbCloudApp/Data/ProcessMaps/ProcessMapPlanWellReamDto.cs
2023-10-17 10:20:27 +05:00

73 lines
3.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
namespace AsbCloudApp.Data.ProcessMaps;
/// <summary>
/// РТК план проработка скважины
/// </summary>
public class ProcessMapPlanWellReamDto : ProcessMapPlanBaseDto, IValidatableObject
{
/// <summary>
/// Количество повторений
/// </summary>
[Range(0, 100, ErrorMessage = "Количество повторений должно быть в пределах от 0 до 100")]
public double Repeats { get; set; }
/// <summary>
/// Вращение при движении вверх, об/мин
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Количество вращений вверх должно быть в пределах от 0 до 99999.9")]
public double SpinUpward { get; set; }
/// <summary>
/// Вращение при движении вниз, об/мин
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Количество вращений вниз должно быть в пределах от 0 до 99999.9")]
public double SpinDownward { get; set; }
/// <summary>
/// Скорость подъёма, м/ч
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Скорость подъёма должна быть в пределах от 0 до 99999.9")]
public double SpeedUpward { get; set; }
/// <summary>
/// Скорость спуска, м/ч
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Скорость спуска должна быть в пределах от 0 до 99999.9")]
public double SpeedDownward { get; set; }
/// <summary>
/// Уставка зятяжки, т
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Значение затяжек уставки должно быть в пределах от 0 до 99999.9")]
public double SetpointDrag { get; set; }
/// <summary>
/// Уставка посадки, т
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Значение посадки уставки должно быть в пределах от 0 до 99999.9")]
public double SetpointTight { get; set; }
/// <summary>
/// Давление, атм
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Давление должно быть в пределах от 0 до 99999.9")]
public double Pressure { get; set; }
/// <summary>
/// Момент, кН*м
/// </summary>
[Range(0, 99999.9, ErrorMessage = "Крутящий момент должен быть в пределах от 0 до 99999.9")]
public double Torque { get; set; }
/// <inheritdoc/>
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (DepthEnd < DepthStart)
yield return new ValidationResult(
$"{nameof(DepthEnd)}:{DepthEnd:#0.0} меньше {nameof(DepthStart)}:{DepthStart:#0.0}",
new[] { nameof(DepthEnd), nameof(DepthStart) });
}
}