1 |
<?php |
2 |
|
3 |
// |
4 |
require_once "dossier.class.php"; |
5 |
|
6 |
// |
7 |
class dossier_instruction extends dossier { |
8 |
|
9 |
function dossier_instruction($id, &$db, $DEBUG) { |
10 |
// |
11 |
$this->constructeur($id, $db, $DEBUG); |
12 |
} |
13 |
|
14 |
|
15 |
/** |
16 |
* Envoi du message au ERP en cas de: |
17 |
* Depot d'un dossier DAT |
18 |
* Demande d'ouverture ERP DAT |
19 |
**/ |
20 |
function triggerAjouterApres($id, &$db, $val, $DEBUG){ |
21 |
|
22 |
// envoi du message en cas d'un depot du dossier dat |
23 |
if ($this->valF['nature'] == |
24 |
$this->f->getParameter('erp_depot_dossier_dat')) { |
25 |
$msgenque = new MessageEnqueuer(); |
26 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
27 |
$msgenque->enqueueMessage($msgenque::$ERP_DEPOT_DOSSIER_DAT); |
28 |
} |
29 |
|
30 |
// envoi du message en cas d'une demande d'ouverture DAT |
31 |
if ($this->valF['nature'] == |
32 |
$this->f->getParameter('erp_demande_ouverture_dat')) { |
33 |
$msgenque = new MessageEnqueuer(); |
34 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
35 |
$msgenque->enqueueMessage($msgenque::$ERP_DEMANDE_OUVERTURE_DAT); |
36 |
} |
37 |
|
38 |
} |
39 |
|
40 |
|
41 |
/** |
42 |
* Envoi du message au ERP en cas de qualification d'un dossier |
43 |
* gere par ERP, comme un dossier URBA |
44 |
*/ |
45 |
function triggermodifierapres($id, &$db, $val, $DEBUG) { |
46 |
// envoi du message ERP Qualifie si la qualification d'un dossier DAT |
47 |
// etait faite par URBA |
48 |
// BOGUE: le test pour la nature doit etre change parce que |
49 |
// 'erp_depot_dossier_dat' n'a pas la connexion directe avec |
50 |
// qualification d'un dossier, mais c'est necessaire pour les tests |
51 |
$dossier_nature_dat = array( |
52 |
$this->f->getParameter('erp_depot_dossier_dat'), |
53 |
$this->f->getParameter('erp_demande_ouverture_dat')); |
54 |
|
55 |
if (in_array($this->valF['nature'], $dossier_nature_dat) |
56 |
&& ( |
57 |
!isset($this->val['a_qualifier']) |
58 |
|| $this->val['a_qualifier'] != $this->valF['a_qualifier']) |
59 |
&& $this->valF['a_qualifier'] == true) { |
60 |
$msgenque = new MessageEnqueuer(); |
61 |
$msgenque->setDossierInstructionIdentifier($this->valF['dossier']); |
62 |
$msgenque->setCompetence($this->valF['autorite_competente']); |
63 |
$msgenque->setContraintePlu($this->valF['servitude']); |
64 |
$msgenque->setReferenceCadastrale( |
65 |
$this->getReferenceCadastrale($this->valF['dossier'])); |
66 |
$msgenque->enqueueMessage($msgenque::$ERP_QUALIFIE); |
67 |
} |
68 |
} |
69 |
|
70 |
|
71 |
/** |
72 |
* Retourne la reference cadastrale de la demande attache a un dossier ERP |
73 |
* specifique |
74 |
* @param string $dossier L'identifiant du dossier |
75 |
* @return string|null La reference cadastrale si elle est trouve, |
76 |
* sinon NULL. En cas d'erreur de la BD, l'execution s'arrete. |
77 |
*/ |
78 |
function getReferenceCadastrale($dossier) { |
79 |
$sql = "SELECT terrain_references_cadastrales FROM demande WHERE dossier_instruction = '" . $dossier . "'"; |
80 |
$res = $this->db->limitquery($sql, 0, 1); |
81 |
$this->addToLog("getReferenceCadastrale(): db->limitquery(\"". |
82 |
str_replace(",",", ",$sql)."\", 0, 1);", VERBOSE_MODE); |
83 |
// Si une erreur survient on die |
84 |
if (database::isError($res, true)) { |
85 |
// Appel de la methode de recuperation des erreurs |
86 |
$this->erreur_db($res->getDebugInfo(), $res->getMessage(), 'demande'); |
87 |
} |
88 |
// retourne la nature du dossier |
89 |
while ($row =& $res->fetchRow()) { |
90 |
return $row[0]; |
91 |
} |
92 |
// la nature n'etait pas trouve, ce qui ne devrait pas se passer |
93 |
return NULL; |
94 |
} |
95 |
|
96 |
} |
97 |
|
98 |
?> |