Потребление топлива по виду топлива

Доменная сущность Версия: 0.1 draft

Строка сводной статистики: агрегаты нормативного расхода топлива ТС выбранной выборки с данным видом топлива; фактический расход — зарезервированное поле.

⟨/⟩ Исходник

Связи

classDiagram
    direction LR
    class VehicleFuelConsumptionSummary {
        +FuelKind fuel_kind_id
        +Int32 vehicle_count
        +Decimal norm_consumption_sum
        +Decimal norm_consumption_max
        +Decimal norm_consumption_min
        +Decimal norm_consumption_avg
        +Decimal actual_consumption
    }
    class FuelKind
    VehicleFuelConsumptionSummary "1" --> "1" FuelKind : fuel_kind_id

Структура

НаименованиеАтрибутТипОбязательно для созданияВычисляемый, методикаЕИДиапазон / форматОписание
Вид топливаfuel_kind_idFuelKindДаVehicle.FuelKindPrimary — основной вид топлива ТС
Количество ТС с успешным расчётомvehicle_countInt32НетДа, количество ТС этого вида топлива с CalculationStatus = «Успешно выполнен»целое, ≥ 0
Нормативный расход — сумма, лnorm_consumption_sumDecimalНетДа, сумма VehicleCalc.NormConsumption по ТС этого вида топлива с успешным расчётомлвещественное, ≥ 0
Нормативный расход — максимум, лnorm_consumption_maxDecimalНетДа, максимум VehicleCalc.NormConsumption по той же выборкелвещественное, ≥ 0
Нормативный расход — минимум, лnorm_consumption_minDecimalНетДа, минимум VehicleCalc.NormConsumption по той же выборкелвещественное, ≥ 0
Нормативный расход — среднее, лnorm_consumption_avgDecimalНетДа, среднее VehicleCalc.NormConsumption по той же выборкелвещественное, ≥ 0
Фактический расход, л — зарезервированоactual_consumptionDecimalНетлЗарезервировано на будущее: источник фактических данных по топливу ТС в домене ЭНТС не определён; поле не вычисляется

Исходник

    public class VehicleFuelConsumptionSummary
    {
        /// <summary>Вид топлива</summary>
        [Relation]
        [DomainField(Alias = "fuel_kind_id", RequiredOnCreate = true,
            Description = "Vehicle.FuelKindPrimary — основной вид топлива ТС")]
        public FuelKind? FuelKind { get; set; }

        /// <summary>Количество ТС с успешным расчётом</summary>
        [DomainField(Alias = "vehicle_count", Range = "целое, ≥ 0",
            Calculated = "Да, количество ТС этого вида топлива с CalculationStatus = «Успешно выполнен»")]
        public int VehicleCount { get; set; }

        /// <summary>Нормативный расход — сумма, л</summary>
        [DomainField(Alias = "norm_consumption_sum", Unit = "л", Range = "вещественное, ≥ 0",
            Calculated = "Да, сумма VehicleCalc.NormConsumption по ТС этого вида топлива с успешным расчётом")]
        public decimal NormConsumptionSum { get; set; }

        /// <summary>Нормативный расход — максимум, л</summary>
        [DomainField(Alias = "norm_consumption_max", Unit = "л", Range = "вещественное, ≥ 0",
            Calculated = "Да, максимум VehicleCalc.NormConsumption по той же выборке")]
        public decimal NormConsumptionMax { get; set; }

        /// <summary>Нормативный расход — минимум, л</summary>
        [DomainField(Alias = "norm_consumption_min", Unit = "л", Range = "вещественное, ≥ 0",
            Calculated = "Да, минимум VehicleCalc.NormConsumption по той же выборке")]
        public decimal NormConsumptionMin { get; set; }

        /// <summary>Нормативный расход — среднее, л</summary>
        [DomainField(Alias = "norm_consumption_avg", Unit = "л", Range = "вещественное, ≥ 0",
            Calculated = "Да, среднее VehicleCalc.NormConsumption по той же выборке")]
        public decimal NormConsumptionAvg { get; set; }

        /// <summary>Фактический расход, л — зарезервировано</summary>
        [DomainField(Alias = "actual_consumption", Unit = "л",
            Description = "Зарезервировано на будущее: источник фактических данных по топливу ТС в домене ЭНТС не определён; поле не вычисляется")]
        public decimal? ActualConsumption { get; set; }
    }