using System.ComponentModel.DataAnnotations;

namespace AsbCloudApp.Data.DetectedOperation
{
    /// <summary>
    /// Статистика по операциям например за период.
    /// </summary>
    public class DetectedOperationStatDto
    {
        /// <summary>
        /// Id названия/описания операции
        /// </summary>
        [Required]
        public int IdCategory { get; set; }

        /// <summary>
        /// Название операции
        /// </summary>
        public string Category { get; set; } = string.Empty;

        /// <summary>
        /// Количество операций
        /// </summary>
        [Required]
        public int Count { get; set; }

        /// <summary>
        /// Среднее по ключевому показателю
        /// </summary>
        [Required]
        public double ValueAverage { get; set; }

        /// <summary>
        /// Мин по ключевому показателю
        /// </summary>
        [Required]
        public double ValueMin { get; set; }

        /// <summary>
        /// Макс по ключевому показателю
        /// </summary>
        [Required]
        public double ValueMax { get; set; }

        /// <summary>
        /// Суммарное время операций, мин
        /// </summary>
        [Required]
        public double MinutesTotal { get; set; }

        /// <summary>
        /// Мин продолжительность операции, мин
        /// </summary>
        [Required]
        public double MinutesMin { get; set; }

        /// <summary>
        /// Макс продолжительность операции, мин
        /// </summary>
        [Required]
        public double MinutesMax { get; set; }

        /// <summary>
        /// Средняя продолжительность операции, мин
        /// </summary>
        [Required]
        public double MinutesAverage { get; set; }
    }
}