< Summary

Information
Class: OzonOrdersWeb.Areas.Admin.OrderList.OrderListColumnCatalog
Assembly: OzonOrdersWeb
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Admin/OrderList/OrderListColumnCatalog.cs
Line coverage
92%
Covered lines: 37
Uncovered lines: 3
Coverable lines: 40
Total lines: 55
Line coverage: 92.5%
Branch coverage
0%
Covered branches: 0
Total branches: 2
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
get_SortOrder()100%210%
get_FieldName()100%11100%
get_DisplayName()100%210%
get_LegacyAccessKey()100%11100%
get_All()100%11100%
.cctor()100%11100%
IsCatalogFieldName(...)0%620%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/Areas/Admin/OrderList/OrderListColumnCatalog.cs

#LineLine coverage
 1namespace OzonOrdersWeb.Areas.Admin.OrderList;
 2
 3/// <summary>
 4/// Колонки списка заказов (главная и иные экраны в том же формате), в том же порядке, что и на UI.
 5/// Соответствуют флагам AccessProfile.<c>AvailableOrderColumns</c> (ключ «фильтр в представлении»).
 6/// </summary>
 7public static class OrderListColumnCatalog
 8{
 9    public const string EntityName = "OrderList";
 10
 3011    public sealed record OrderListColumn(
 012        int SortOrder,
 15313        string FieldName,
 014        string DisplayName,
 3015        /// <summary>Строка из AvailableOrderColumns.Contains, если колонка подчиняется одному гейту; иначе null.</summa
 12016        string? LegacyAccessKey);
 17
 18    /// <summary>Все заранее заданные колонки (код поля + подпись как на главной).</summary>
 519    public static IReadOnlyList<OrderListColumn> All { get; } = new OrderListColumn[]
 120    {
 121        new(1, "ShipmentNumber", "Номер заказа", "Номер заказа"),
 122        new(2, "Delivery", "Доставка", "Номер заказа"),
 123        new(3, "DeliveryType", "Тип доставки", "Номер заказа"),
 124        new(4, "OzonClient", "Клиент", "Клиент"),
 125        new(5, "DeliveryCity", "Город доставки", "Город доставки"),
 126        new(6, "TrackingNumber", "Трек-номер", "Номер заказа"),
 127        new(7, "ProcessingDate", "Принят (в обработку)", "Принят в обработку"),
 128        new(8, "ShippingDate", "Дата отгрузки", "Дата отгрузки"),
 129        new(9, "DeliveryPeriod", "Срок доставки / осталось", "Срок доставки"),
 130        new(10, "ProductKey", "Key", "Key"),
 131        new(11, "Manufacturer", "Производитель", "Производитель"),
 132        new(12, "Article", "Артикул (код товара)", "Артикул"),
 133        new(13, "ProductName", "Наименование товара", "Наименование товара"),
 134        new(14, "ClientStatus", "Статус клиента", "Статус клиента"),
 135        new(15, "AppStatus", "Статус (в отчёте)", "Статус"),
 136        new(16, "ShipmentWarehouse", "Склад отгрузки", "Склад отгрузки"),
 137        new(17, "LastStatusChangeDate", "Дата изм. статуса", "Срок доставки"),
 138        new(18, "Supplier", "Поставщик", "Поставщик"),
 139        new(19, "SupplierOrderNumber", "Номер заказа поставщику", "Номер заказа поставщику"),
 140        new(20, "Category", "Категория", "Категория"),
 141        new(21, "VolumeWeight", "Объемный вес (Вес V)", "Объемный вес"),
 142        new(22, "SitePrice", "Цена сайта", "Цена сайта"),
 143        new(23, "Quantity", "Количество", "Количество"),
 144        new(24, "Price", "Цена", "Цена"),
 145        new(25, "ShipmentTotal", "Сумма отправления", "Сумма отправления"),
 146        new(26, "PurchasePrice", "Цена закупки", "Цена закупки"),
 147        new(27, "Cost", "Себестоимость", "Себестоимость"),
 148        new(28, "OzonCommission", "Комиссия ОЗОН", "Комиссия ОЗОН"),
 149        new(29, "Profit", "Прибыль (min / max в таблице)", "Прибыль"),
 150        new(30, "MarkupPercent", "Наценка % (min / max в таблице)", "Наценка %"),
 151    };
 52
 53    public static bool IsCatalogFieldName(string? fieldName) =>
 054        !string.IsNullOrEmpty(fieldName) && All.Any(c => c.FieldName.Equals(fieldName, StringComparison.OrdinalIgnoreCas
 55}