< Summary

Information
Class: OzonDomains.Models.SupplierStatuses.SupplierStatus
Assembly: OzonDomains
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/SupplierStatuses/SupplierStatus.cs
Line coverage
100%
Covered lines: 9
Uncovered lines: 0
Coverable lines: 9
Total lines: 51
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_Id()100%11100%
get_ProviderKey()100%11100%
get_SupplierId()100%11100%
get_Supplier()100%11100%
get_StatusKind()100%11100%
get_ExternalCode()100%11100%
get_Name()100%11100%
get_SortOrder()100%11100%
get_CreatedAt()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonDomains/Models/SupplierStatuses/SupplierStatus.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3
 4namespace OzonDomains.Models.SupplierStatuses;
 5
 6/// <summary>
 7/// Справочник статусов API-поставщика. Держит обе стадии сразу (см. <see cref="StatusKind"/>):
 8/// статусы корзины и статусы оформленного заказа. Цвет и признак конечного статуса наследуются
 9/// от <see cref="BaseStatus"/> — так же, как у AppStatus и ClientStatus.
 10/// </summary>
 11[Table("SupplierStatuses")]
 12public class SupplierStatus : BaseStatus
 13{
 21914    public int Id { get; set; }
 15
 16    /// <summary>Ключ провайдера: Avd / Armtek / ArmtekBy / MlAuto / MlAutoRu.</summary>
 17    [Required, MaxLength(64)]
 18    [Display(Name = "Поставщик (ключ API)")]
 25419    public string ProviderKey { get; set; } = string.Empty;
 20
 21    /// <summary>
 22    /// Системный поставщик из справочника. Разрешается из ApiSupplierSettings.SupplierId
 23    /// и может остаться пустым, если связь провайдера с поставщиком ещё не настроена.
 24    /// </summary>
 25    [Display(Name = "Поставщик")]
 6126    public int? SupplierId { get; set; }
 27
 428    public virtual Supplier? Supplier { get; set; }
 29
 30    /// <summary>Стадия: <see cref="SupplierStatusKind.Cart"/> или <see cref="SupplierStatusKind.Order"/>.</summary>
 31    [Required, MaxLength(10)]
 32    [Display(Name = "Стадия")]
 23433    public string StatusKind { get; set; } = SupplierStatusKind.Order;
 34
 35    /// <summary>
 36    /// Код статуса на стороне поставщика: для корзины — Pending/Ready/…,
 37    /// для заказа — Status_id АВД, StatusCode ML-Auto, SubStatus Armtek.
 38    /// </summary>
 39    [MaxLength(64)]
 40    [Display(Name = "Код у поставщика")]
 12641    public string? ExternalCode { get; set; }
 42
 43    [Required, MaxLength(200)]
 44    [Display(Name = "Статус поставщика")]
 34145    public string Name { get; set; } = string.Empty;
 46
 47    [Display(Name = "Порядок")]
 1848    public int? SortOrder { get; set; }
 49
 15950    public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
 51}