| | | 1 | | namespace OzonOrdersWeb.WebServices.OrderHistory; |
| | | 2 | | |
| | | 3 | | /// <summary>Поставщик в истории проценок: подпись и логотип для грида и фильтра.</summary> |
| | 0 | 4 | | public sealed record SupplierQuotationProviderInfo(string Key, string Label, string? LogoUrl, string? Mark); |
| | | 5 | | |
| | | 6 | | /// <summary>Названия и логотипы API-поставщиков в истории проценок заказа.</summary> |
| | | 7 | | public static class SupplierQuotationProviders |
| | | 8 | | { |
| | | 9 | | public static string Label(string key) => key switch |
| | | 10 | | { |
| | | 11 | | "Armtek" => "Армтек RU", "ArmtekBy" => "Армтек BY", "ShateM" => "Шате‑М", "Avd" => "АВД", |
| | | 12 | | "Berg" => "Berg", "Motex" => "МоТехС", "MlAuto" => "ML-Auto BY", "MlAutoRu" => "ML-Auto RU", |
| | | 13 | | "ForumAuto" => "Форум-Авто (Союз)", "ForumAutoInterparts" => "Форум-Авто (Интерпартс)", |
| | | 14 | | "ForumAutoPiter" => "Форум-Авто (Питер)", "ForumAutoRostov" => "Форум-Авто (Ростов)", "ForumAutoIstra" => "Форум |
| | | 15 | | "FavoritParts" => "Фаворит Союз", "FavoritPartsIstra" => "Фаворит Истра", "FavoritPartsRostov" => "Фаворит Росто |
| | | 16 | | "MoskvorechieIstra" => "Москворечье (Истра)", "ProfitLiga" => "Профит-Лига", "Nikei" => "Nikei", |
| | | 17 | | "MikadoMskHod20" => "Микадо МскХод20", "Japarts" => "Japarts", "ZZapMoscow" => "ZZap Москва", |
| | | 18 | | _ => key |
| | | 19 | | }; |
| | | 20 | | |
| | | 21 | | public static string? LogoUrl(string key) => key switch |
| | | 22 | | { |
| | | 23 | | "Armtek" or "ArmtekBy" => "/images/armtek-logo.svg", |
| | | 24 | | "ShateM" => "/images/shate-m-logo.svg", |
| | | 25 | | "Avd" => "/images/avd-logo.svg", |
| | | 26 | | "Berg" => "/images/berg-logo-2026.png", |
| | | 27 | | "Motex" => "/images/motex-logo.png", |
| | | 28 | | "MlAuto" or "MlAutoRu" => "https://www.ml-auto.by/media/files/settings/inside-placeholder-logo-mobile.png", |
| | | 29 | | "ForumAuto" or "ForumAutoInterparts" or "ForumAutoPiter" or "ForumAutoRostov" or "ForumAutoIstra" => "/images/fo |
| | | 30 | | "FavoritParts" or "FavoritPartsIstra" or "FavoritPartsRostov" => "/images/favorit-parts-logo.png", |
| | | 31 | | "MoskvorechieIstra" => "/images/moskvorechie-logo.gif", |
| | | 32 | | "ProfitLiga" => "/images/profit-liga-logo.svg", |
| | | 33 | | "Nikei" => "/images/nikei-logo.svg", |
| | | 34 | | "MikadoMskHod20" => "https://mikado-parts.ru/img/MikadoLogo.svg", |
| | | 35 | | "ZZapMoscow" => "/images/zzap-logo.svg", |
| | | 36 | | "Japarts" => "/images/japarts-logo.jpg", |
| | | 37 | | _ => null |
| | | 38 | | }; |
| | | 39 | | |
| | | 40 | | /// <summary>У части провайдеров в строке показывается имя провайдера, а не связанного поставщика Studio2.</summary> |
| | | 41 | | public static string DisplayName(string key, string? supplierName) => |
| | | 42 | | key is "FavoritPartsIstra" or "FavoritPartsRostov" or "ProfitLiga" or "Nikei" or "MikadoMskHod20" or "ZZapMoscow |
| | | 43 | | ? Label(key) |
| | | 44 | | : supplierName ?? Label(key); |
| | | 45 | | |
| | | 46 | | public static SupplierQuotationProviderInfo Info(string key) => new(key, Label(key), LogoUrl(key), key == "ArmtekBy" |
| | | 47 | | } |