< Summary

Information
Class: Services.BitrixStockServices.OzonCatalogStockRow
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/BitrixStockServices/OzonCatalogStockRow.cs
Line coverage
100%
Covered lines: 10
Uncovered lines: 0
Coverable lines: 10
Total lines: 25
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_WarehouseId()100%11100%
get_WarehouseName()100%11100%
get_OfferId()100%11100%
get_OriginalOfferId()100%11100%
get_BrandCode()100%11100%
get_ProductName()100%11100%
get_AvailableQty()100%11100%
get_ReservedQty()100%11100%
get_FreeQty()100%11100%
get_ProductId()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/BitrixStockServices/OzonCatalogStockRow.cs

#LineLine coverage
 1namespace Services.BitrixStockServices;
 2
 3/// <summary>Строка остатка Ozon по складу (этап 5), независимо от источника каталога.</summary>
 4public sealed class OzonCatalogStockRow
 5{
 226    public string WarehouseId { get; init; } = string.Empty;
 227    public string WarehouseName { get; init; } = string.Empty;
 8    /// <summary>Чистый артикул (до знака =).</summary>
 219    public string OfferId { get; init; } = string.Empty;
 10    /// <summary>Полный offer_id как в Ozon (может содержать =BRAND[N]).</summary>
 2511    public string OriginalOfferId { get; init; } = string.Empty;
 512    public string? BrandCode { get; init; }
 513    public string? ProductName { get; init; }
 14    /// <summary>Всё, что лежит на складе Ozon (<c>present</c>), включая зарезервированное под заказы.</summary>
 1415    public int AvailableQty { get; init; }
 16    /// <summary>Зарезервировано под уже оформленные заказы Ozon (<c>reserved</c>).</summary>
 1317    public int ReservedQty { get; init; }
 18    /// <summary>
 19    /// Свободный остаток — то, что покупатель реально может заказать (<c>free_stock</c>).
 20    /// Именно по нему решается, сирота ли строка: при <c>present = reserved</c> товар уже не продаётся,
 21    /// а Ozon не даёт опустить остаток ниже резерва — обнуление такой строки уходило бы в пустоту каждый прогон.
 22    /// </summary>
 2023    public int FreeQty { get; init; }
 524    public long? ProductId { get; init; }
 25}