Суммарная солнечная радиация на вертикальную поверхность по сторонам света

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

Алиасы: Суммарная солнечная радиация на вертикальную поверхность по сторонам света. parents: [consumption-model].

⟨/⟩ Исходник

Связи

classDiagram
    direction LR
    class SolarRadiaionByDirection {
        +Guid id
        +Guid ais_id
        +String name
        +String code
        +String direction
        +String month
        +Int32 month_number
        +Int32 grad
        +Int32 ssr
    }

Структура

НаименованиеАтрибутТипОбязательно для созданияДиапазон / форматНеизменяемостьОписание
Идентификатор записиidGuidДаДа
ИД объекта в АИСais_idGuidНетДа
НаименованиеnameStringДа
КодcodeStringДаУникальный строковый код записи справочника
Сторона светаdirectionStringДа
МесяцmonthStringДа
Номер меяцаmonth_numberInt32Да[1..12]
Широта в градусахgradInt32Нет[-90..90]
Удельная солнечная радиация, МДж/м²ssrInt32Нет

Исходник

    public class SolarRadiaionByDirection
    {
        /// <summary>Идентификатор записи</summary>
        [DomainField(Alias = "id", RequiredOnCreate = true, Immutable = true)]
        public Guid Id { get; set; }

        /// <summary>ИД объекта в АИС</summary>
        [DomainField(Alias = "ais_id", Immutable = true)]
        public Guid AisId { get; set; }

        /// <summary>Наименование</summary>
        [DomainField(Alias = "name", RequiredOnCreate = true)]
        public string? Name { get; set; }

        /// <summary>Код</summary>
        [DomainField(Alias = "code", RequiredOnCreate = true, Description = "Уникальный строковый код записи справочника")]
        public string? Code { get; set; }

        /// <summary>Сторона света</summary>
        [DomainField(Alias = "direction", RequiredOnCreate = true)]
        public string? Direction { get; set; }

        /// <summary>Месяц</summary>
        [DomainField(Alias = "month", RequiredOnCreate = true)]
        public string? Month { get; set; }

        /// <summary>Номер меяца</summary>
        [DomainField(Alias = "month_number", RequiredOnCreate = true, Range = "[1..12]")]
        public int MonthNumber { get; set; }

        /// <summary>Широта в градусах</summary>
        [DomainField(Alias = "grad", Range = "[-90..90]")]
        public int Grad { get; set; }

        /// <summary>Удельная солнечная радиация, МДж/м²</summary>
        [DomainField(Alias = "ssr")]
        public int Ssr { get; set; }
    }