using System.ComponentModel.DataAnnotations; namespace TrajetKmTracker.Api.Models.Entities; /// /// Tranche du barème kilométrique URSSAF pour une année et une puissance fiscale. /// Trois tranches par (année, puissance fiscale) : ≤5000 km, 5001–20000 km, >20000 km. /// public class TrancheBareme { public int Id { get; set; } [Required] public int Annee { get; set; } [Required] public int PuissanceFiscale { get; set; } /// Borne minimale de kilométrage annuel (incluse). [Required] public decimal KmMin { get; set; } /// /// Borne maximale de kilométrage annuel, EXCLUSIVE : la tranche couvre [KmMin, KmMax[. /// null signifie « illimité » (dernière tranche, sans borne supérieure). /// public decimal? KmMax { get; set; } /// Coefficient en euros par kilomètre. [Required] public decimal Coefficient { get; set; } /// Base fixe en euros ajoutée au montant (nulle pour les tranches 1 et 3). Formule : km × Coefficient + Base. public decimal Base { get; set; } = 0m; }