< Summary

Information
Class: Services.PartnerServices.PartnerOrderFilters
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerOrderDtos.cs
Line coverage
100%
Covered lines: 6
Uncovered lines: 0
Coverable lines: 6
Total lines: 76
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
.ctor(...)100%11100%
get_Statuses()100%11100%
get_Warehouses()100%11100%
get_Clients()100%11100%
get_OzonStatuses()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/PartnerServices/PartnerOrderDtos.cs

#LineLine coverage
 1namespace Services.PartnerServices;
 2
 3/// <summary>
 4/// Что партнёр видит о заказе. Намеренно без закупочных цен, поставщика, себестоимости, прибыли,
 5/// комиссий и прочих внутренних полей Studio2.
 6/// </summary>
 7public sealed record PartnerOrderListItemDto(
 8    int Id,
 9    string? ShipmentNumber,
 10    string? ProductName,
 11    string? Article,
 12    string? Brand,
 13    int? Quantity,
 14    decimal? Price,
 15    string? ImageUrl,
 16    int? StatusId,
 17    string? Status,
 18    string? OzonStatus,
 19    int? WarehouseId,
 20    string? Warehouse,
 21    int? ClientId,
 22    string? Client,
 23    string? Marketplace,
 24    DateTime? ProcessingDate,
 25    DateTime? ShippingDate,
 26    string? TrackingNumber,
 27    bool HasLabel,
 28    /// <summary>Штрихкод ScanIt новой этикетки FBS Ozon (из модели заказа). Пусто, пока Ozon его не отдал.</summary>
 29    string? Scanit = null);
 30
 31public sealed record PartnerOrderDetailsDto(
 32    PartnerOrderListItemDto Order,
 33    string? DeliveryCity,
 34    string? Barcode,
 35    string? Comment,
 36    DateTime? LastStatusChangeDate,
 37    /// <summary>Штрихкод ScanIt с новой этикетки FBS Ozon (из модели заказа), по нему этикетка связывается с заказом. П
 38    string? Scanit = null);
 39
 40public sealed record PartnerOrderQuery(
 41    string? Search = null,
 42    int? StatusId = null,
 43    int? WarehouseId = null,
 44    int? ClientId = null,
 45    DateTime? From = null,
 46    DateTime? To = null,
 47    int Page = 1,
 48    int PageSize = 50,
 49    /// <summary>Точный отображаемый статус Ozon (например, «Ожидает сборки»).</summary>
 50    string? OzonStatus = null);
 51
 52public sealed record PartnerPage<T>(IReadOnlyList<T> Items, int Total, int Page, int PageSize);
 53
 54public sealed record PartnerFilterOption(int Id, string Name);
 55
 156public sealed record PartnerOrderFilters(
 157    IReadOnlyList<PartnerFilterOption> Statuses,
 158    IReadOnlyList<PartnerFilterOption> Warehouses,
 159    IReadOnlyList<PartnerFilterOption> Clients,
 160    /// <summary>Статусы Ozon, которые реально видит партнёр в списке заказов.</summary>
 261    IReadOnlyList<string> OzonStatuses);
 62
 63/// <summary>Короткая безопасная строка для подсказки поиска; внутренних цен и поставщика здесь нет.</summary>
 64public sealed record PartnerOrderSuggestion(
 65    int Id,
 66    string? ShipmentNumber,
 67    string? ProductName,
 68    string? Article,
 69    string? TrackingNumber,
 70    string? Scanit,
 71    string? OzonStatus);
 72
 73public sealed record PartnerLabelFile(byte[] Content, string FileName);
 74
 75/// <summary>Результат предпросмотра правил: всего подходит <see cref="Count"/>, в <see cref="Ids"/> первые <see cref="L
 76public sealed record PartnerRulesPreview(int Count, IReadOnlyList<int> Ids, bool Truncated, int Limit);