1 |
<?php |
2 |
/** |
3 |
* Script qui génére une édition pdf à imprimer sur bordereaux de lettres RAR |
4 |
* |
5 |
* @package openfoncier |
6 |
* @version SVN : $Id$ |
7 |
*/ |
8 |
|
9 |
require_once "../obj/utils.class.php"; |
10 |
$f = new utils("nohtml", "suivi_envoi_lettre_rar"); |
11 |
$f->disableLog(); |
12 |
|
13 |
if(isset($_GET['liste'])) { |
14 |
$listeCodeBarres = explode(',',$_GET['liste']); |
15 |
|
16 |
// Classe permettant la mise en page de l'édition pdf |
17 |
require_once "../obj/pdf_lettre_rar.class.php"; |
18 |
$pdf_lettre_rar = new pdf_lettre_rar('P', 'mm', 'A4'); |
19 |
// Initialisation de la mise en page |
20 |
$pdf_lettre_rar->init($f); |
21 |
|
22 |
foreach ($listeCodeBarres as $code_barres) { |
23 |
|
24 |
// Test si l'evenement est de type arrete et si un délégataire a été nommé |
25 |
$sql = "SELECT |
26 |
dossier.dossier_libelle, |
27 |
evenement.type, |
28 |
count(lien_dossier_demandeur) as nbdemandeur |
29 |
FROM ".DB_PREFIXE."instruction |
30 |
LEFT JOIN ".DB_PREFIXE."dossier |
31 |
ON instruction.dossier = dossier.dossier |
32 |
INNER JOIN ".DB_PREFIXE."evenement ON |
33 |
instruction.evenement=evenement.evenement |
34 |
inner JOIN ".DB_PREFIXE."lien_dossier_demandeur ON |
35 |
instruction.dossier=lien_dossier_demandeur.dossier |
36 |
inner join ".DB_PREFIXE."demandeur on |
37 |
demandeur.demandeur=lien_dossier_demandeur.demandeur |
38 |
WHERE code_barres='".$code_barres."' |
39 |
AND ((lien_dossier_demandeur.petitionnaire_principal IS TRUE AND demandeur.type_demandeur='petitionnaire') |
40 |
OR demandeur.type_demandeur='delegataire') |
41 |
GROUP BY dossier.dossier_libelle, evenement.type"; |
42 |
|
43 |
$res = $f->db->query($sql); |
44 |
$f->addToLog("app/pdf_lettre_rar.php : db->query(\"".$sql."\")", VERBOSE_MODE); |
45 |
$f->isDatabaseError($res); |
46 |
$testDemandeur = $res->fetchrow(DB_FETCHMODE_ASSOC); |
47 |
|
48 |
|
49 |
// Recuperation de l'adresse de destination |
50 |
$sqlAdresse = "SELECT |
51 |
trim(concat(pc.libelle,' ',demandeur.particulier_nom,' ',demandeur.particulier_prenom, |
52 |
pmc.libelle,' ',demandeur.personne_morale_denomination)) as ligne1, |
53 |
trim(concat(demandeur.numero,' ',demandeur.voie)) as ligne2, |
54 |
trim(concat(demandeur.complement,' ',demandeur.lieu_dit)) as ligne3, |
55 |
trim(concat(demandeur.code_postal,' ',demandeur.localite,' ',demandeur.bp,' ',demandeur.cedex)) as ligne4, |
56 |
code_barres as code_barres |
57 |
FROM ".DB_PREFIXE."instruction |
58 |
INNER JOIN ".DB_PREFIXE."dossier ON dossier.dossier = instruction.dossier |
59 |
INNER JOIN ".DB_PREFIXE."lien_dossier_demandeur ON dossier.dossier = lien_dossier_demandeur.dossier |
60 |
INNER JOIN ".DB_PREFIXE."demandeur ON lien_dossier_demandeur.demandeur = demandeur.demandeur |
61 |
LEFT OUTER JOIN ".DB_PREFIXE."civilite as pc ON demandeur.particulier_civilite = pc.civilite |
62 |
LEFT OUTER JOIN ".DB_PREFIXE."civilite as pmc ON demandeur.personne_morale_civilite = pmc.civilite |
63 |
WHERE instruction.code_barres ='".$code_barres."'"; |
64 |
|
65 |
// Envoi pour delegataire ou petitionnaire principal selon le type d'evenement |
66 |
if($testDemandeur['type'] != 'arrete' AND $testDemandeur['nbdemandeur'] > 1) { |
67 |
$sqlAdresse .= " AND demandeur.type_demandeur='delegataire'"; |
68 |
} else { |
69 |
$sqlAdresse .= " AND lien_dossier_demandeur.petitionnaire_principal IS TRUE AND demandeur.type_demandeur='petitionnaire'"; |
70 |
} |
71 |
|
72 |
$resAdresse = $f->db->query($sqlAdresse); |
73 |
$adresse_dest = $resAdresse->fetchrow(DB_FETCHMODE_ASSOC); |
74 |
$f->addToLog("app/pdf_lettre_rar.php : db->query(\"".$sqlAdresse."\")", VERBOSE_MODE); |
75 |
$f->isDatabaseError($resAdresse); |
76 |
|
77 |
// Création du champ specifique |
78 |
$specifique_content = array(); |
79 |
$specifique_content[] = $adresse_dest['ligne1']; |
80 |
$specifique_content[] = $testDemandeur['dossier_libelle']; |
81 |
$specifique_content[] = "|||||".$adresse_dest['code_barres']."|||||"; |
82 |
unset($adresse_dest['code_barres']); |
83 |
|
84 |
// Ajout d'une page aux pdf |
85 |
$pdf_lettre_rar->addLetter($adresse_dest, $specifique_content); |
86 |
|
87 |
} |
88 |
$pdf_lettre_rar->output("lettre_rar".date("dmYHis").".pdf","D"); |
89 |
} |
90 |
?> |