< Summary

Information
Class: Services.ApiServices.FidApi.Models.FidSuppliers
Assembly: Services
File(s): /home/runner/work/Studio2Prod/Studio2Prod/AppRepository/ApiServices/FidApi/Models/FidSuppliers.cs
Line coverage
100%
Covered lines: 3
Uncovered lines: 0
Coverable lines: 3
Total lines: 51
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_GeneratedAt()100%11100%
get_Total()100%11100%
get_Suppliers()100%11100%

File(s)

/home/runner/work/Studio2Prod/Studio2Prod/AppRepository/ApiServices/FidApi/Models/FidSuppliers.cs

#LineLine coverage
 1using Newtonsoft.Json;
 2
 3namespace Services.ApiServices.FidApi.Models;
 4
 5/// <summary>
 6/// Ответ <c>/api/suppliers</c>: поставщики фида со складами, объёмом строк и датой
 7/// последней выгрузки. Единственный эндпоинт фида без конверта <c>{success, data}</c>.
 8/// </summary>
 9public sealed class FidSuppliers
 10{
 11    /// <summary>Момент формирования ответа, UTC.</summary>
 3512    [JsonProperty("generatedAt")] public DateTime GeneratedAt { get; set; }
 13
 2814    [JsonProperty("total")] public int Total { get; set; }
 11415    [JsonProperty("suppliers")] public List<FidSupplier> Suppliers { get; set; } = new();
 16}
 17
 18/// <summary>Поставщик фида: как он назван в прайсах и на каких складах присутствует.</summary>
 19public sealed class FidSupplier
 20{
 21    /// <summary>Название поставщика из поля SUPP прайса, например «Фаворит МЦС».</summary>
 22    [JsonProperty("name")] public string Name { get; set; } = string.Empty;
 23
 24    /// <summary>Сколько строк прайсов пришло от поставщика по всем складам.</summary>
 25    [JsonProperty("rows")] public long Rows { get; set; }
 26
 27    [JsonProperty("warehouses")] public List<FidSupplierWarehouse> Warehouses { get; set; } = new();
 28}
 29
 30/// <summary>Склад, на котором фид видит поставщика.</summary>
 31public sealed class FidSupplierWarehouse
 32{
 33    [JsonProperty("id")] public int Id { get; set; }
 34
 35    /// <summary>Название склада в фиде: «V11», «СПБ_Гатчина», «BY03».</summary>
 36    [JsonProperty("name")] public string Name { get; set; } = string.Empty;
 37
 38    /// <summary>Участвует ли склад в расчёте цены.</summary>
 39    [JsonProperty("isEnabled")] public bool IsEnabled { get; set; }
 40
 41    [JsonProperty("rows")] public long Rows { get; set; }
 42
 43    /// <summary>Сколько файлов выгрузки поставщика лежит на складе.</summary>
 44    [JsonProperty("sourceFiles")] public int SourceFiles { get; set; }
 45
 46    /// <summary>
 47    /// Когда поставщика последний раз видели на этом складе. По отставанию этой даты
 48    /// заметно, что выгрузка перестала приходить.
 49    /// </summary>
 50    [JsonProperty("lastImportedAt")] public DateTime? LastImportedAt { get; set; }
 51}