< Summary

Information
Class: OzonDomains.Models.TransactionTypeSetting
Assembly: OzonDomains
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/TransactionTypeSetting.cs
Line coverage
100%
Covered lines: 13
Uncovered lines: 0
Coverable lines: 13
Total lines: 59
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_TransactionType()100%11100%
get_Title()100%11100%
get_ShortName()100%11100%
get_Icon()100%11100%
get_Color()100%11100%
get_Group()100%11100%
get_Hint()100%11100%
get_UseGrid()100%11100%
get_IsEnabled()100%11100%
get_DisplayOrder()100%11100%
get_DefaultsJson()100%11100%
get_UpdatedAt()100%11100%
get_UpdatedBy()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/TransactionTypeSetting.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3
 4namespace OzonDomains.Models;
 5
 6/// <summary>
 7/// Пользовательская настройка типа транзакции: как он называется и выглядит в меню проведения,
 8/// включён ли для него новый грид (/Studio2/TransactionsGrid) вместо классической страницы.
 9/// Строка на тип создаётся при первом сохранении из админки; отсутствие строки = дефолты каталога.
 10/// </summary>
 11public class TransactionTypeSetting
 12{
 13    /// <summary>Тип транзакции (<see cref="OzonDomains.TransactionType"/>) — первичный ключ.</summary>
 14    [Key]
 15    [DatabaseGenerated(DatabaseGeneratedOption.None)]
 8016    public TransactionType TransactionType { get; set; }
 17
 18    /// <summary>Заголовок в меню и на странице проведения.</summary>
 19    [MaxLength(100)]
 6320    public string? Title { get; set; }
 21
 22    /// <summary>Короткое имя для чипсов/узких кнопок.</summary>
 23    [MaxLength(40)]
 4224    public string? ShortName { get; set; }
 25
 26    /// <summary>CSS-класс иконки (Font Awesome), например <c>fas fa-truck</c>.</summary>
 27    [MaxLength(80)]
 4228    public string? Icon { get; set; }
 29
 30    /// <summary>Цвет транзакции (#rrggbb).</summary>
 31    [MaxLength(16)]
 4332    public string? Color { get; set; }
 33
 34    /// <summary>Группа в меню проведения: Закупка / Отгрузка / Возвраты / Склад / Отмена / Цены.</summary>
 35    [MaxLength(60)]
 4236    public string? Group { get; set; }
 37
 38    /// <summary>Подсказка пользователю (что делает транзакция).</summary>
 39    [MaxLength(1000)]
 4240    public string? Hint { get; set; }
 41
 42    /// <summary>Кнопки OrdersGrid ведут на новый грид (/Studio2/TransactionsGrid/{slug}) вместо старой страницы.</summa
 4643    public bool UseGrid { get; set; }
 44
 45    /// <summary>Выключенная транзакция не показывается в меню проведения.</summary>
 9046    public bool IsEnabled { get; set; } = true;
 47
 48    /// <summary>Порядок внутри группы.</summary>
 4149    public int? DisplayOrder { get; set; }
 50
 51    /// <summary>Значения по умолчанию для страницы грида (JSON: processIn1C, requirePurchasePrice, showOffers …).</summ
 52    [Column(TypeName = "text")]
 4253    public string? DefaultsJson { get; set; }
 54
 6755    public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
 56
 57    [MaxLength(255)]
 2358    public string? UpdatedBy { get; set; }
 59}