amortization/_calcul_dates.html

29 lines
900 B
HTML
Raw Permalink Normal View History

2024-02-23 09:24:47 +01:00
{{* -*- brindille -*- *}}
2024-02-15 14:23:03 +01:00
{{*
Calcule le nombre de jours entre deux dates
paramètres :
- date_debut
- date_fin
résultat : nbjours
*}}
{{* pour simplifier : 30 jours par mois et 360 jours par an *}}
{{:assign jour_debut=$date_debut|date:"d"}}
{{:assign jour_debut="min(%d, 30)"|math:$jour_debut}}
{{:assign mois_debut=$date_debut|date:"m"}}
{{:assign annee_debut=$date_debut|date:"Y"}}
{{:assign jour_fin=$date_fin|date:"d"}}
{{:assign jour_fin="min(%d, 30)"|math:$jour_fin}}
{{:assign mois_fin=$date_fin|date:"m"}}
{{:assign annee_fin=$date_fin|date:"Y"}}
{{:assign nbjours="%d-%d"|math:$jour_fin:$jour_debut}}
{{:assign nbjours="%d+(%d-%d)*30"|math:$nbjours:$mois_fin:$mois_debut}}
{{:assign nbjours="%d+(%d-%d)*360"|math:$nbjours:$annee_fin:$annee_debut}}
{{* au cas où les deux dates seraient inversées ... *}}
{{if $nbjours < 0}}
{{:assign nbjours="-1*%d"|math:$nbjours}}
{{/if}}