FruitBankHybridApp/FruitBank.Common/Services/Ekaer/EkaerSettings.cs

30 lines
1.8 KiB
C#

using AyCode.Services.Nav.Ekaer;
namespace FruitBank.Common.Services.Ekaer;
/// <summary>
/// A teljes EKÁER konfiguráció egy helyen (configból, <c>appsettings.json</c> „Ekaer" szekció): a bejelentő
/// cégadata + a küszöbök + az árfolyam. A küszöbök és az árfolyam évente / jogszabály szerint változhatnak,
/// ezért configban élnek — nem a kódban beégetve.
/// </summary>
public sealed class EkaerSettings : IEkaerSettings
{
/// <summary>A bejelentő saját cégadatai (címzett a bejövő relációban) + a lerakodási hely.</summary>
public EkaerCompanyInfo Company { get; set; } = new();
/// <summary>EUR→HUF átváltási árfolyam a tétel-érték HUF-ra számításához. Forrás: MNB napi középárfolyam
/// (a NAV nem közöl külön EKÁER-árfolyamot). SZÁNDÉKOSAN nincs default: ha a config nem töltődik be, 0 marad,
/// és a külföldi érték-átváltás hibát dob (<see cref="EkaerValueCalculator.ResolveRateToHuf"/>) — így elavult /
/// beégetett árfolyammal soha nem számolunk.</summary>
public double EurHufRate { get; set; }
/// <summary>Tömeg-küszöb kg-ban: e felett (vagy az érték-küszöb felett) kell EKÁER. Kockázatos élelmiszer: 200 kg.
/// Default nélkül: be nem töltött config → 0 → minden szállítmány „átlépi" (mindent jelentünk, a biztonság felé).</summary>
public double ThresholdWeightKg { get; set; }
/// <summary>Érték-küszöb HUF-ban (nettó): e felett (vagy a tömeg-küszöb felett) kell EKÁER. Kockázatos élelmiszer: 250 000 Ft.
/// Default nélkül: be nem töltött config → 0 → minden szállítmány „átlépi" (mindent jelentünk, a biztonság felé).
/// <c>int</c>: a legmagasabb küszöb 5 millió Ft, bőven belefér.</summary>
public int ThresholdValueHuf { get; set; }
}