< Summary

Information
Class: OzonOrdersWeb.Areas.Studio2.ViewModels.ApiSupplierSettings.ApiSupplierSettingsViewModelBase
Assembly: OzonOrdersWeb
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Studio2/ViewModels/ApiSupplierSettings/ApiSupplierSettingsViewModelBase.cs
Line coverage
100%
Covered lines: 11
Uncovered lines: 0
Coverable lines: 11
Total lines: 46
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_DisplayName()100%11100%
get_SupplierId()100%11100%
get_Suppliers()100%11100%
get_CurrencyCode()100%11100%
get_IsQuotationEnabled()100%11100%
get_DeliveryAddress()100%11100%
get_ExtraDeliveryHours()100%11100%
get_PriceMultiplier()100%11100%
get_WarehouseIds()100%11100%
get_Warehouses()100%11100%
get_CurrentRateToRub()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Studio2/ViewModels/ApiSupplierSettings/ApiSupplierSettingsViewModelBase.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using OzonDomains;
 3using OzonDomains.Models;
 4
 5namespace OzonOrdersWeb.Areas.Studio2.ViewModels.ApiSupplierSettings;
 6
 7/// <summary>Общие поля настроек каждого API-поставщика.</summary>
 8public abstract class ApiSupplierSettingsViewModelBase
 9{
 10    [Required, StringLength(120)]
 11    [Display(Name = "Название в интерфейсе")]
 1912    public string DisplayName { get; set; } = string.Empty;
 13
 14    [Display(Name = "Системный поставщик")]
 915    public int? SupplierId { get; set; }
 16
 1917    public List<Supplier> Suppliers { get; set; } = new();
 18
 19    [Required]
 20    [Display(Name = "Валюта цен")]
 1421    public CurrencyCode CurrencyCode { get; set; }
 22
 23    [Display(Name = "Загружать предложения в проценке")]
 1424    public bool IsQuotationEnabled { get; set; } = true;
 25
 26    [StringLength(300)]
 27    [Display(Name = "Адрес доставки")]
 428    public string? DeliveryAddress { get; set; }
 29
 30    [Range(0, 720, ErrorMessage = "Доп. срок задаётся в часах, от 0 до 720 (30 суток).")]
 31    [Display(Name = "Доп. срок поставки, ч")]
 932    public int ExtraDeliveryHours { get; set; }
 33
 34    [Range(typeof(decimal), "0.0001", "100", ParseLimitsInInvariantCulture = true,
 35        ErrorMessage = "Коэффициент цены задаётся в диапазоне от 0,0001 до 100.")]
 36    [Display(Name = "Коэффициент цены")]
 1937    public decimal PriceMultiplier { get; set; } = 1m;
 38
 39    /// <summary>Склады Studio2, с которыми работает поставщик. Пусто — ограничения нет.</summary>
 40    [Display(Name = "Склады поставщика")]
 1641    public List<int> WarehouseIds { get; set; } = new();
 42
 1643    public List<OzonDomains.Models.Warehouse> Warehouses { get; set; } = new();
 44
 945    public decimal? CurrentRateToRub { get; set; }
 46}