paramétrage articles CGI, nom et fonction responsable

FossilOrigin-Name: be718016fdbe18eb51c7245ea996fffc6a1cce1ce4eb694a38042acd8356f782
This commit is contained in:
engel 2022-02-25 14:51:48 +00:00
parent b819562bc6
commit c6515e18e4
9 changed files with 102 additions and 41 deletions

View file

@ -9,6 +9,9 @@ class RecusHTML
private $nomAsso;
private $adresseAsso;
private $objetAsso;
private $nomResponsable;
private $fonctionResponsable;
private $articlesCGI;
private $signature;
/**
@ -17,18 +20,23 @@ class RecusHTML
function __construct($nomAsso,
$adresseAsso,
$objetAsso,
$nomResponsable,
$fonctionResponsable,
$articlesCGI,
$signature)
{
$this->nomAsso = $nomAsso;
$this->adresseAsso = $adresseAsso;
$this->objetAsso = $objetAsso;
$this->nomResponsable = $nomResponsable;
$this->fonctionResponsable = $fonctionResponsable;
$this->signature = $signature;
$this->articlesCGI = $articlesCGI;
$this->html = $this->entete();
}
function get()
{
//echo $this->html;
return $this->html;
}
@ -69,24 +77,37 @@ FDD;
foreach ($lesMontants as $taux => $montant)
{
$this->imprimer_montant("la somme de ",
$montant,
$this->imprimer_montant($montant,
Utils::getLigneReduction($taux));
}
echo "</ul>\n";
$this->imprimer_description("Date des versements :",
"année {$annee_recu}");
echo <<<FDD
<p>Le bénéficiaire certifie sur lhonneur que les dons et versements quil reçoit ouvrent droit à la réduction d'impôt prévue à larticle 200 du CGI</p>
FDD;
$this->imprimer_description("Forme du don : ",
"Autre");
$this->imprimer_description("Nature du don : ",
"Numéraire");
$this->imprimer_description("Mode de versement : ",
"chèque et/ou virement");
// articles du CGI
$nbArticles = count($this->articlesCGI);
if ($nbArticles == 1)
{
echo "Le bénéficiaire certifie sur lhonneur que les dons et versements quil reçoit ouvrent droit à la réduction d'impôt prévue à larticle $this->articlesCGI[0] du CGI</p>\n";
}
else if ($nbArticles > 1)
{
echo "<p>Le bénéficiaire certifie sur lhonneur que les dons et versements quil reçoit ouvrent droit à la réduction d'impôt prévue aux articles ";
for ($i = 0; $i < $nbArticles; ++$i) {
printf("%s", $this->articlesCGI[$i]);
if ($i < $nbArticles - 2) {
echo ", ";
}
else if ($i == $nbArticles - 2) {
echo " et ";
}
}
echo " du code général des impôts</p>";
}
echo "</div>\n";
// cartouche final
@ -95,7 +116,8 @@ echo <<<FDD
<div class="cartouche" id="final">
<p>Rennes le {$date}</p>
<img id="signature" src="$this->signature" />
<p id="fonction">Président</p>
<p id="nom">$this->nomResponsable</p>
<p id="fonction">$this->fonctionResponsable</p>
</div>
</body>
</html>
@ -112,13 +134,13 @@ FDD;
FDD;
}
// imprimer le montant de la réduction et un libellé
function imprimer_montant($texte, $montant, $libelle = "")
// imprimer le montant du versement et un libellé
function imprimer_montant($montant, $libelle = "")
{
$valeur = number_format($montant, 2, ',', '');
echo "<li>{$texte} {$valeur} euros";
echo "<li>la somme de <b>{$valeur} euros</b>";
if ($libelle != "") {
echo " : {$libelle}";
echo " ({$libelle})";
}
echo "</li>\n";
}
@ -143,7 +165,7 @@ echo <<<FDD
<span> 11580*4</span>
</div>
<p id="titre">Reçu au titre des dons à certains organismes d'intérêt général</p>
<p id="articles">Article 200, 238 bis et 885-0 V bis A du code général des impôts</p>
<p id="articles">Articles 200, 238 bis et 978 du code général des impôts</p>
FDD;
return ob_get_clean();

View file

@ -141,11 +141,14 @@ class Utils
{
foreach ($lesTaux as $elem)
{
/*
$ligne = "taux " . $elem->taux . ", ligne " . $elem->ligne;
if ($elem->remarque != "") {
$ligne .= ", " . $elem->remarque;
}
$lignes[$elem->taux] = $ligne;
*/
$lignes[$elem->taux] = $elem->remarque;
}
return $lignes;
}

View file

@ -24,7 +24,6 @@ body
#entete
{
grid-area: entete;
width: 100%;
}
#logoCerfa
@ -70,31 +69,26 @@ body
#numRecu
{
text-align : right;
/* display : inline;*/
}
#beneficiaire
{
grid-area: beneficiaire;
width: 100%;
}
#donateur
{
grid-area: donateur;
width: 100%;
}
#versements
{
grid-area: versements;
width: 100%;
}
#final
{
grid-area: signature;
width: 100%;
}
.rubrique
@ -106,7 +100,7 @@ body
.cartouche
{
margin : 2mm auto;
padding : 0 1mm;
padding : 0 2mm;
border : 1px solid rgb(0, 0, 128);
border-radius : 8px;
}
@ -124,8 +118,7 @@ body
padding-bottom : 2mm;
}
#fonction
#fonction, #nom
{
text-align : center;
padding-bottom : 0.5cm;
}