fix add thanato
This commit is contained in:
parent
5855be2655
commit
f0356cea10
@ -46,6 +46,8 @@ class DevisDataProcessor
|
||||
'devis_date' => $devis['devis_date'],
|
||||
'lieu_nom' => $devis['lieu_nom'],
|
||||
'lieu_adresse' => $devis['lieu_adresse'],
|
||||
'thanato_nom' => $devis['thanato_nom'],
|
||||
'thanato_prenom' => $devis['thanato_prenom'],
|
||||
'defunt_nom' => $devis['defunt_nom'],
|
||||
'defunt_sexe' => $devis['defunt_sexe'],
|
||||
'client_nom' => $devis['client_nom'],
|
||||
|
||||
@ -37,12 +37,11 @@ class DevisPdfTableRenderer
|
||||
$endY = ($numPage == $nbPage && !$sansMontant) ? 225 : 235;
|
||||
|
||||
if (!$sansMontant) {
|
||||
// Ajustement final des positions des lignes verticales
|
||||
// Article et Défunt de même taille, TTC réduit
|
||||
$verticalLines = [22, 39, 56, 75, 105, 135, 155, 170, 185];
|
||||
// Ajout de la colonne Thanatopracteur entre Défunt et H.T.
|
||||
$verticalLines = [24, 41, 58, 77, 102, 127, 147, 167, 178, 189];
|
||||
} else {
|
||||
// Pour sans montant: Article et Défunt de même taille
|
||||
$verticalLines = [27, 47, 67, 85, 115, 145];
|
||||
// Pour sans montant: ajout de Thanatopracteur à la fin
|
||||
$verticalLines = [27, 47, 67, 85, 110, 135, 160];
|
||||
}
|
||||
|
||||
foreach ($verticalLines as $x) {
|
||||
@ -56,16 +55,17 @@ class DevisPdfTableRenderer
|
||||
|
||||
if (!$sansMontant) {
|
||||
$headers = [
|
||||
[5, 17, "N° Devis"],
|
||||
[22, 17, "N° Dossier"],
|
||||
[39, 17, "N° Commande"],
|
||||
[56, 19, "Date"],
|
||||
[75, 30, "Article"], // Taille augmentée
|
||||
[105, 30, "Lieu du soin"],
|
||||
[135, 20, "Défunt"], // Taille réduite pour équilibrer
|
||||
[155, 15, "H.T."],
|
||||
[170, 15, "TVA"],
|
||||
[185, 15, "T.T.C"] // Taille réduite
|
||||
[5, 19, "N° Devis"],
|
||||
[24, 17, "N° Dossier"],
|
||||
[41, 17, "N° Commande"],
|
||||
[58, 19, "Date"],
|
||||
[77, 25, "Article"],
|
||||
[102, 25, "Lieu du soin"],
|
||||
[127, 20, "Défunt"],
|
||||
[147, 20, "Thanato"],
|
||||
[167, 11, "H.T."],
|
||||
[178, 11, "TVA"],
|
||||
[189, 16, "T.T.C"]
|
||||
];
|
||||
} else {
|
||||
$headers = [
|
||||
@ -73,9 +73,10 @@ class DevisPdfTableRenderer
|
||||
[27, 20, "N° Dossier"],
|
||||
[47, 20, "N° Commande"],
|
||||
[67, 18, "Date"],
|
||||
[85, 30, "Article"], // Même taille que Défunt
|
||||
[115, 30, "Lieu du soin"],
|
||||
[145, 30, "Défunt"] // Même taille que Article
|
||||
[85, 25, "Article"],
|
||||
[110, 25, "Lieu du soin"],
|
||||
[135, 25, "Défunt"],
|
||||
[160, 45, "Thanato"]
|
||||
];
|
||||
}
|
||||
|
||||
@ -126,28 +127,33 @@ class DevisPdfTableRenderer
|
||||
}
|
||||
};
|
||||
|
||||
if (!$sansMontant) {
|
||||
// LARGEURS ÉQUILIBRÉES avec Article et Défunt de même taille
|
||||
$addSmartCell($pdf, 6, $yDevis, 16, $devis['devis_full_number']);
|
||||
$addSmartCell($pdf, 23, $yDevis, 16, $devis['case_number'] ?? '');
|
||||
$addSmartCell($pdf, 40, $yDevis, 16, $devis['order_number'] ?? '');
|
||||
// Préparer le nom complet du thanatopracteur
|
||||
$thanatoNom = trim(($devis['thanato_prenom'] ?? '') . ' ' . ($devis['thanato_nom'] ?? ''));
|
||||
$thanatoNom = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($thanatoNom);
|
||||
|
||||
$addSmartCell($pdf, 57, $yDevis, 18, mb_convert_encoding($formatterDate->format($dateSoin), 'ISO-8859-1', 'UTF-8'));
|
||||
if (!$sansMontant) {
|
||||
$addSmartCell($pdf, 6, $yDevis, 18, $devis['devis_full_number']);
|
||||
$addSmartCell($pdf, 25, $yDevis, 16, $devis['case_number'] ?? '');
|
||||
$addSmartCell($pdf, 42, $yDevis, 16, $devis['order_number'] ?? '');
|
||||
|
||||
$addSmartCell($pdf, 59, $yDevis, 18, mb_convert_encoding($formatterDate->format($dateSoin), 'ISO-8859-1', 'UTF-8'));
|
||||
|
||||
$articleText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['article'] ?? 'SOINS');
|
||||
$addSmartCell($pdf, 76, $yDevis, 29, $articleText); // Article agrandi
|
||||
$addSmartCell($pdf, 78, $yDevis, 24, $articleText);
|
||||
|
||||
$lieuText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['lieu_nom'] ?? '');
|
||||
$addSmartCell($pdf, 106, $yDevis, 29, $lieuText);
|
||||
$addSmartCell($pdf, 103, $yDevis, 24, $lieuText);
|
||||
|
||||
$defuntText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['defunt_nom'] ?? '');
|
||||
$addSmartCell($pdf, 136, $yDevis, 19, $defuntText); // Défunt réduit
|
||||
$addSmartCell($pdf, 128, $yDevis, 19, $defuntText);
|
||||
|
||||
$addSmartCell($pdf, 156, $yDevis, 14, number_format($devis['montant_htc'], 2, '.', '') . chr(128), 'R');
|
||||
$addSmartCell($pdf, 171, $yDevis, 14, number_format($devis['montant_tva'], 2, '.', '') . chr(128), 'R');
|
||||
$addSmartCell($pdf, 186, $yDevis, 14, number_format($devis['montant_ttc'], 2, '.', '') . chr(128), 'R'); // TTC réduit
|
||||
// NOUVELLE COLONNE : Thanatopracteur
|
||||
$addSmartCell($pdf, 148, $yDevis, 19, $thanatoNom);
|
||||
|
||||
$addSmartCell($pdf, 168, $yDevis, 10, number_format($devis['montant_htc'], 2, '.', '') . chr(128), 'R');
|
||||
$addSmartCell($pdf, 179, $yDevis, 10, number_format($devis['montant_tva'], 2, '.', '') . chr(128), 'R');
|
||||
$addSmartCell($pdf, 190, $yDevis, 15, number_format($devis['montant_ttc'], 2, '.', '') . chr(128), 'R');
|
||||
} else {
|
||||
// Pour sans montant: Article et Défunt de même taille
|
||||
$addSmartCell($pdf, 6, $yDevis, 21, $devis['devis_full_number']);
|
||||
$addSmartCell($pdf, 28, $yDevis, 19, $devis['case_number'] ?? '');
|
||||
$addSmartCell($pdf, 48, $yDevis, 19, $devis['order_number'] ?? '');
|
||||
@ -155,13 +161,16 @@ class DevisPdfTableRenderer
|
||||
$addSmartCell($pdf, 68, $yDevis, 17, mb_convert_encoding($formatterDate->format($dateSoin), 'ISO-8859-1', 'UTF-8'));
|
||||
|
||||
$articleText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['article'] ?? 'SOINS');
|
||||
$addSmartCell($pdf, 86, $yDevis, 29, $articleText); // Article agrandi
|
||||
$addSmartCell($pdf, 86, $yDevis, 24, $articleText);
|
||||
|
||||
$lieuText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['lieu_nom'] ?? '');
|
||||
$addSmartCell($pdf, 116, $yDevis, 29, $lieuText);
|
||||
$addSmartCell($pdf, 111, $yDevis, 24, $lieuText);
|
||||
|
||||
$defuntText = \OCA\Gestion\Helpers\FileExportHelpers::FormatTextForExport($devis['defunt_nom'] ?? '');
|
||||
$addSmartCell($pdf, 146, $yDevis, 29, $defuntText); // Défunt réduit
|
||||
$addSmartCell($pdf, 136, $yDevis, 24, $defuntText);
|
||||
|
||||
// NOUVELLE COLONNE : Thanatopracteur
|
||||
$addSmartCell($pdf, 161, $yDevis, 44, $thanatoNom);
|
||||
}
|
||||
}
|
||||
|
||||
@ -170,33 +179,34 @@ class DevisPdfTableRenderer
|
||||
$pdf->Line(5, 225, 205, 225);
|
||||
$pdf->SetFont('Arial', 'B', 8);
|
||||
|
||||
// Alignement des totaux avec les colonnes HT, TVA, TTC
|
||||
// Alignement des totaux avec les colonnes HT, TVA, TTC avec espaces entre les valeurs
|
||||
$pdf->SetXY(5, 225);
|
||||
$pdf->Cell(130, 8, 'TOTAL', 0, 0, 'C');
|
||||
$pdf->Cell(162, 8, 'TOTAL', 0, 0, 'C');
|
||||
|
||||
// POSITIONS alignées avec les colonnes du tableau
|
||||
$pdf->SetXY(155, 225);
|
||||
$pdf->Cell(15, 8, number_format($totals['ht'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
$pdf->SetXY(170, 225);
|
||||
$pdf->Cell(15, 8, number_format($totals['tva'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
$pdf->SetXY(185, 225);
|
||||
$pdf->Cell(15, 8, number_format($totals['ttc'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
// POSITIONS avec espaces entre les valeurs - plus d'espace entre HT et TVA
|
||||
$pdf->SetXY(167, 225);
|
||||
$pdf->Cell(9, 8, number_format($totals['ht'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
|
||||
// CADRE TOTAL TTC - Texte à l'intérieur du cadre aligné à droite
|
||||
$pdf->SetXY(155, 240);
|
||||
$pdf->Cell(30, 8, 'TOTAL TTC', 0, 0, 'C');
|
||||
$pdf->SetXY(181, 225);
|
||||
$pdf->Cell(9, 8, number_format($totals['tva'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
|
||||
// Valeur alignée avec la fin du tableau tout à droite
|
||||
$pdf->SetXY(185, 240);
|
||||
$pdf->Cell(15, 8, number_format($totals['ttc'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
$pdf->SetXY(189, 225);
|
||||
$pdf->Cell(16, 8, number_format($totals['ttc'], 2, '.', '') . chr(128), 0, 0, 'R');
|
||||
|
||||
// CADRE TOTAL TTC - Cadre encore plus agrandi
|
||||
$pdf->SetXY(170, 241);
|
||||
$pdf->Cell(19, 6, 'TOTAL TTC', 0, 0, 'C');
|
||||
|
||||
$pdf->SetXY(189, 241);
|
||||
$pdf->Cell(16, 6, number_format($totals['ttc'], 2, '.', '') . chr(128), 0, 0, 'C');
|
||||
|
||||
// Cadre TOTAL TTC aligné avec la fin du tableau (205)
|
||||
$lines = [
|
||||
[155, 240, 155, 248], // Ligne verticale gauche
|
||||
[185, 240, 185, 248], // Ligne de séparation
|
||||
[170, 240, 170, 248], // Ligne verticale gauche (déplacée de 173 à 170 pour agrandir)
|
||||
[189, 240, 189, 248], // Ligne de séparation (alignée avec colonne T.T.C)
|
||||
[205, 240, 205, 248], // Ligne verticale droite (alignée avec fin du tableau)
|
||||
[155, 240, 205, 240], // Ligne horizontale haute
|
||||
[155, 248, 205, 248] // Ligne horizontale basse
|
||||
[170, 240, 205, 240], // Ligne horizontale haute
|
||||
[170, 248, 205, 248] // Ligne horizontale basse
|
||||
];
|
||||
|
||||
foreach ($lines as $line) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user