| | | 1 | | using System.ComponentModel.DataAnnotations; |
| | | 2 | | |
| | | 3 | | namespace OzonDomains.Models; |
| | | 4 | | |
| | | 5 | | /// <summary>Настройки внешнего API-поставщика и его связь со справочником Supplier.</summary> |
| | | 6 | | public class ApiSupplierSettings |
| | | 7 | | { |
| | | 8 | | public const string ArmtekProviderKey = "Armtek"; |
| | | 9 | | public const string ArmtekByProviderKey = "ArmtekBy"; |
| | | 10 | | public const string ShateMProviderKey = "ShateM"; |
| | | 11 | | public const string AvdProviderKey = "Avd"; |
| | | 12 | | public const string BergProviderKey = "Berg"; |
| | | 13 | | public const string MotexProviderKey = "Motex"; |
| | | 14 | | public const string MlAutoProviderKey = "MlAuto"; |
| | | 15 | | public const string MlAutoRuProviderKey = "MlAutoRu"; |
| | | 16 | | public const string ForumAutoProviderKey = "ForumAuto"; |
| | | 17 | | public const string ForumAutoInterpartsProviderKey = "ForumAutoInterparts"; |
| | | 18 | | public const string ForumAutoPiterProviderKey = "ForumAutoPiter"; |
| | | 19 | | public const string ForumAutoRostovProviderKey = "ForumAutoRostov"; |
| | | 20 | | public const string ForumAutoIstraProviderKey = "ForumAutoIstra"; |
| | | 21 | | public const string FavoritPartsProviderKey = "FavoritParts"; |
| | | 22 | | public const string FavoritPartsIstraProviderKey = "FavoritPartsIstra"; |
| | | 23 | | public const string FavoritPartsRostovProviderKey = "FavoritPartsRostov"; |
| | | 24 | | public const string MoskvorechieIstraProviderKey = "MoskvorechieIstra"; |
| | | 25 | | public const string ProfitLigaProviderKey = "ProfitLiga"; |
| | | 26 | | public const string NikeiProviderKey = "Nikei"; |
| | | 27 | | public const string MikadoMskHod20ProviderKey = "MikadoMskHod20"; |
| | | 28 | | public const string JapartsProviderKey = "Japarts"; |
| | | 29 | | public const string ZZapMoscowProviderKey = "ZZapMoscow"; |
| | | 30 | | |
| | 1 | 31 | | public int Id { get; set; } |
| | | 32 | | |
| | | 33 | | [Required, MaxLength(64)] |
| | 180 | 34 | | public string ProviderKey { get; set; } = string.Empty; |
| | | 35 | | |
| | | 36 | | /// <summary>Отображаемое название поставщика в интерфейсе Studio2.</summary> |
| | | 37 | | [MaxLength(120)] |
| | 3 | 38 | | public string? DisplayName { get; set; } |
| | | 39 | | |
| | | 40 | | /// <summary>Валюта выбранного системного Supplier; синхронизируется при сохранении.</summary> |
| | 143 | 41 | | public CurrencyCode CurrencyCode { get; set; } = CurrencyCode.RUB; |
| | | 42 | | |
| | | 43 | | /// <summary>Системный Supplier для автоподстановки в транзакции.</summary> |
| | 118 | 44 | | public int? SupplierId { get; set; } |
| | 130 | 45 | | public Supplier? Supplier { get; set; } |
| | | 46 | | |
| | | 47 | | /// <summary>Нужно ли запрашивать предложения этого поставщика в проценке.</summary> |
| | 169 | 48 | | public bool IsQuotationEnabled { get; set; } = true; |
| | | 49 | | |
| | | 50 | | /// <summary>Точка доставки, заданная вручную для API без адресов в проценке.</summary> |
| | | 51 | | [MaxLength(300)] |
| | 12 | 52 | | public string? DeliveryAddress { get; set; } |
| | | 53 | | |
| | | 54 | | /// <summary>Надбавка к сроку поставки этого поставщика, часы. Прибавляется к срокам всех его |
| | | 55 | | /// предложений в проценке; 0 — отдаём срок API как есть.</summary> |
| | 14 | 56 | | public int ExtraDeliveryHours { get; set; } |
| | | 57 | | |
| | | 58 | | /// <summary>Коэффициент, применяемый к цене и себестоимости предложений этого API-поставщика.</summary> |
| | 118 | 59 | | public decimal PriceMultiplier { get; set; } = 1m; |
| | | 60 | | } |