using System;
using System.ComponentModel.DataAnnotations;

namespace AsbCloudApp.Data;

/// <summary>
/// Параметры секции определяемые по операциям из ГГД
/// </summary>
public class SectionByOperationsDto
{
    /// <summary>
    /// Id скважины
    /// </summary>
    [Required]
    public int IdWell { get; set; }

    /// <summary>
    /// 0 = план или 1 = факт или прогноз = 2
    /// </summary>
    [Required]
    public int IdType { get; set; }

    /// <summary>
    /// id секции скважины
    /// </summary>
    [Required]
    public int IdWellSectionType { get; set; }

    /// <summary>
    /// Глубина начала первой операции в секции, м
    /// </summary>
    [Required]
    [Range(0, 50_000)]
    public double DepthStart { get; set; }

    /// <summary>
    /// Дата начала первой операции в секции
    /// </summary>
    [Required]
    public DateTimeOffset DateStart { get; set; }

    /// <summary>
    /// Глубина после завершения последней операции в секции, м
    /// </summary>
    [Required]
    [Range(0, 50_000)]
    public double DepthEnd { get; set; }

    /// <summary>
    /// Дата после завершения последней операции в секции
    /// </summary>
    [Required]
    public DateTimeOffset DateEnd { get; set; }

    /// <summary>
    /// Название
    /// </summary>
    [Required]
    public string Caption { get; set; } = string.Empty;
}