using System;

namespace AsbCloudApp.Requests;

/// <summary>
/// Запрос для получения РТК план
/// </summary>
public class ProcessMapPlanBaseRequest
{
    /// <summary>
    /// Вернуть данные, которые поменялись с указанной даты
    /// </summary>
    public DateTimeOffset? UpdateFrom { get; set; }

    /// <summary>
    /// Конструктор
    /// </summary>
    public ProcessMapPlanBaseRequest()
    {

    }

    /// <summary>
    /// Копирующий конструктор
    /// </summary>
    /// <param name="request">Параметры запроса</param>
    public ProcessMapPlanBaseRequest(ProcessMapPlanBaseRequest request)
    {
        UpdateFrom = request.UpdateFrom;
    }
}

/// <summary>
/// Запрос для получения РТК план по скважине
/// </summary>
public class ProcessMapPlanBaseRequestWithWell : ProcessMapPlanBaseRequest
{
    /// <summary>
    /// Запрос для получения РТК план по скважине
    /// </summary>
    /// <param name="idWell"></param>
    public ProcessMapPlanBaseRequestWithWell(int idWell)
    {
        IdWell = idWell;
    }

    /// <summary>
    /// Запрос для получения РТК план по скважине
    /// </summary>
    /// <param name="request"></param>
    /// <param name="idWell"></param>
    public ProcessMapPlanBaseRequestWithWell(ProcessMapPlanBaseRequest request, int idWell)
        : base(request)
    {
        IdWell = idWell;
    }

    /// <summary>
    /// Id скважины
    /// </summary>
    public int IdWell { get; set; }
}