using System;
using System.ComponentModel.DataAnnotations;

namespace AsbCloudApp.Data;

/// <summary>
/// DTO статистики операций
/// </summary>
public class StatOperationsDto
{
    /// <summary>
    /// Дата и время начала
    /// </summary>
    public DateTimeOffset? Start { get; set; }

    /// <summary>
    /// Дата и время окончания
    /// </summary>
    public DateTimeOffset? End { get; set; }

    /// <summary>
    /// Глубина, м
    /// </summary>
    [Required]
    public double WellDepthStart { get; set; }

    /// <summary>
    /// Глубина, м
    /// </summary>
    [Required]
    public double WellDepthEnd { get; set; }

    /// <summary>
    /// Рейсовая скорость, м/час
    /// </summary>
    [Required]
    public double RouteSpeed { get; set; }

    /// <summary>
    /// Механическая скорость проходки, м/час
    /// </summary>
    [Required]
    public double Rop { get; set; }

    /// <summary>
    /// Скорость подъема КНБК
    /// </summary>
    [Required]
    public double BhaUpSpeed { get; set; }

    /// <summary>
    /// Скорость спуска КНБК
    /// </summary>
    [Required]
    public double BhaDownSpeed { get; set; }

    /// <summary>
    /// Скорость спуска обсадной колонны
    /// </summary>
    [Required]
    public double CasingDownSpeed { get; set; }

    /// <summary>
    /// Непроизводительное время
    /// </summary>
    [Required]
    public double NonProductiveHours { get; set; }
}