< Summary

Information
Class: OzonOrdersWeb.WebServices.Orders.Grid.OrdersGridDataResult
Assembly: OzonOrdersWeb
File(s): /home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/WebServices/Orders/Grid/OrderGridRowDto.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 5
Coverable lines: 5
Total lines: 253
Line coverage: 0%
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_Rows()100%210%
get_TotalCount()100%210%
get_LastRow()100%210%
get_AllowedColumns()100%210%
get_BlockSize()100%210%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/OzonOrdersWeb/WebServices/Orders/Grid/OrderGridRowDto.cs

#LineLine coverage
 1namespace OzonOrdersWeb.WebServices.Orders.Grid;
 2
 3/// <summary>
 4/// Плоская строка списка заказов для AG Grid. Поля, закрытые гейтом колонок
 5/// (<see cref="OrdersGridColumnAccess"/>), остаются null и на клиент не попадают в осмысленном виде.
 6/// </summary>
 7public sealed class OrderGridRowDto
 8{
 9    // ---- всегда ----
 10    public int Id { get; set; }
 11
 12    public long? ShipmentId { get; set; }
 13
 14    public int? CartItemId { get; set; }
 15
 16    public bool IsArchived { get; set; }
 17
 18    public bool IsReturned { get; set; }
 19
 20    public bool IsReturnable { get; set; }
 21
 22    public bool IsCancelled { get; set; }
 23
 24    /// <summary>danger | returnable | success | info | warning | secondary | null — тон строки как в старой таблице.</s
 25    public string? RowTone { get; set; }
 26
 27    /// <summary>first | continuation | null — позиция в группе отправления внутри блока.</summary>
 28    public string? ShipmentGroupPosition { get; set; }
 29
 30    /// <summary>Группировка по колонке: first | continuation (внутри блока), ключ группы — <see cref="GroupKey"/>.</sum
 31    public string? GroupPosition { get; set; }
 32
 33    public string? GroupKey { get; set; }
 34
 35    public int ShipmentGroupSize { get; set; }
 36
 37    public bool LabelExists { get; set; }
 38
 39    /// <summary>ozon | yandex | other — определяет, какой пайплайн печати этикетки использовать.</summary>
 40    public string? ClientKind { get; set; }
 41
 42    public string? MarketStatus { get; set; }
 43
 44    public bool FromFile { get; set; }
 45
 46    public bool HasOzonPromotion { get; set; }
 47
 48    public bool HasTransactionDocument { get; set; }
 49
 50    /// <summary>Проблемы заказа для значка и строки в ячейке: алерты, непроведённый 1С, упавшая транзакция. null — проб
 51    public List<OrderGridProblemDto>? Problems { get; set; }
 52
 53    // ---- гейт ShipmentNumber ----
 54    public string? ShipmentNumber { get; set; }
 55
 56    /// <summary>ScanIt с новой этикетки Ozon; отдаётся вместе с номером заказа (тот же гейт), в ПКМ-меню строки — пункт
 57    public string? Scanit { get; set; }
 58
 59    // ---- гейт Delivery / DeliveryType ----
 60    public string? DeliveryProvider { get; set; }
 61
 62    public string? DeliveryName { get; set; }
 63
 64    // ---- гейт TrackingNumber ----
 65    public string? TrackingNumber { get; set; }
 66
 67    // ---- гейт OzonClient ----
 68    public string? OzonClient { get; set; }
 69
 70    public string? OzonClientType { get; set; }
 71
 72    // ---- гейт DeliveryCity ----
 73    public string? DeliveryCity { get; set; }
 74
 75    // ---- гейт ProcessingDate ----
 76    public DateTime? ProcessingDate { get; set; }
 77
 78    public string? ProcessingDateText { get; set; }
 79
 80    public string? ProcessingDateFull { get; set; }
 81
 82    // ---- гейт ShippingDate ----
 83    public DateTime? ShippingDate { get; set; }
 84
 85    public string? ShippingDateText { get; set; }
 86
 87    public string? ShippingDateFull { get; set; }
 88
 89    // ---- гейт DeliveryPeriod ----
 90    public string? DeliveryPeriodText { get; set; }
 91
 92    public string? DeliveryPeriodHoursText { get; set; }
 93
 94    public string? TimeLeftText { get; set; }
 95
 96    public int? TimeLeftDays { get; set; }
 97
 98    public bool DeliveryOverdue { get; set; }
 99
 100    // ---- гейт ProductKey ----
 101    public string? ProductKey { get; set; }
 102
 103    public string? ImageUrl { get; set; }
 104
 105    public string? Barcode { get; set; }
 106
 107    // ---- гейт Manufacturer ----
 108    public string? Manufacturer { get; set; }
 109
 110    public int? EtProducerId { get; set; }
 111
 112    // ---- гейт Article ----
 113    public string? Article { get; set; }
 114
 115    public string? ReplacementArticle { get; set; }
 116
 117    // ---- гейт ProductName ----
 118    public string? ProductName { get; set; }
 119
 120    // ---- гейт ClientStatus ----
 121    public string? ClientStatus { get; set; }
 122
 123    public string? ClientStatusColor { get; set; }
 124
 125    public string? CancellationReason { get; set; }
 126
 127    // ---- гейт AppStatus ----
 128    public string? AppStatus { get; set; }
 129
 130    public string? AppStatusColor { get; set; }
 131
 132    public bool AppStatusIsFinal { get; set; }
 133
 134    public string? CartItemStatus { get; set; }
 135
 136    public string? CartItemStatusColor { get; set; }
 137
 138    public int? CartItemStatusId { get; set; }
 139
 140    public string? SupplierStatus { get; set; }
 141
 142    public string? SupplierStatusColor { get; set; }
 143
 144    public string? SupplierStatusProviderKey { get; set; }
 145
 146    public string? SupplierStatusTooltip { get; set; }
 147
 148    public string? SupplierExpectedDeliveryText { get; set; }
 149
 150    public string? SupplierExpectedDeliveryDaysLeft { get; set; }
 151
 152    public string? ReturnStatusText { get; set; }
 153
 154    // ---- гейт ShipmentWarehouse ----
 155    public string? ShipmentWarehouse { get; set; }
 156
 157    public string? ZasylWarehouse { get; set; }
 158
 159    public string? ReturnWarehouseName { get; set; }
 160
 161    // ---- гейт LastStatusChangeDate ----
 162    public DateTime? LastStatusChangeDate { get; set; }
 163
 164    public string? LastStatusChangeDateText { get; set; }
 165
 166    public string? LastStatusChangeDateFull { get; set; }
 167
 168    // ---- гейт Supplier ----
 169    public string? Supplier { get; set; }
 170
 171    public string? SupplierDirection { get; set; }
 172
 173    // ---- гейт SupplierOrderNumber ----
 174    public string? OrderNumberToSupplier { get; set; }
 175
 176    // ---- гейт Category ----
 177    public string? Category { get; set; }
 178
 179    // ---- гейт VolumeWeight ----
 180    public double? VolumetricWeight { get; set; }
 181
 182    public decimal? Weight { get; set; }
 183
 184    // ---- гейт SitePrice ----
 185    public decimal? SitePrice { get; set; }
 186
 187    // ---- гейт Quantity ----
 188    public int? Quantity { get; set; }
 189
 190    // ---- гейт Price ----
 191    public decimal? Price { get; set; }
 192
 193    public string? Currency { get; set; }
 194
 195    public string? PriceIndexColor { get; set; }
 196
 197    // ---- гейт ShipmentTotal ----
 198    public decimal? ShipmentAmount { get; set; }
 199
 200    // ---- гейт PurchasePrice ----
 201    public decimal? PurchasePrice { get; set; }
 202
 203    // ---- гейт Cost ----
 204    public decimal? CostPrice { get; set; }
 205
 206    public decimal? ExtraExpenses { get; set; }
 207
 208    public List<OrderGridExtraExpenseDto> ExtraExpensesItems { get; set; } = [];
 209
 210    // ---- гейт OzonCommission ----
 211    public decimal? OzonCommissionMin { get; set; }
 212
 213    public decimal? OzonCommissionMax { get; set; }
 214
 215    // ---- гейт Profit ----
 216    public decimal? ProfitMin { get; set; }
 217
 218    public decimal? ProfitMax { get; set; }
 219
 220    public decimal? TargetProfit135 { get; set; }
 221
 222    // ---- гейт MarkupPercent ----
 223    public decimal? DiscountMin { get; set; }
 224
 225    public decimal? DiscountMax { get; set; }
 226}
 227
 228public sealed class OrderGridExtraExpenseDto
 229{
 230    public string Type { get; set; } = string.Empty;
 231
 232    public decimal Amount { get; set; }
 233
 234    public string? Comment { get; set; }
 235}
 236
 237/// <summary>Ответ на запрос блока строк.</summary>
 238public sealed class OrdersGridDataResult
 239{
 0240    public List<OrderGridRowDto> Rows { get; set; } = [];
 241
 0242    public int TotalCount { get; set; }
 243
 244    /// <summary>Последний индекс для Infinite Row Model (равен TotalCount — общее число известно всегда).</summary>
 0245    public int LastRow { get; set; }
 246
 0247    public IReadOnlyCollection<string> AllowedColumns { get; set; } = [];
 248
 0249    public int BlockSize { get; set; }
 250}
 251
 252/// <summary>severity: danger | warning; kind: alert | onec | transaction.</summary>
 253public sealed record OrderGridProblemDto(string Severity, string Kind, string Text);