/[openfoncier]/branches/3.14.x/app/workflows.php
ViewVC logotype

Contents of /branches/3.14.x/app/workflows.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3343 - (show annotations)
Thu Mar 19 17:34:18 2015 UTC (9 years, 10 months ago) by vpihour
File size: 13856 byte(s)
Ajout de la branche

1 <?php
2 /**
3 * Ce script permet d'afficher une vue gloable des workflows en fonction d'un
4 * type de dossier d'instrcution.
5 *
6 * @package openfoncier
7 * @version SVN : $Id: affichage_reglementaire_attestation.php 1468 2013-03-17 19:59:02Z fmichon $
8 */
9
10 //
11 require_once "../obj/utils.class.php";
12 $f = new utils(NULL, "workflows",
13 _("parametrage")." -> "._("workflows"));
14
15
16 /**
17 *
18 */
19 // Ouverture de la balise - Conteneur d'onglets
20 echo "<div id=\"formulaire\">\n\n";
21 // Affichage de la liste des onglets
22 $f->layout->display_tab_lien_onglet_un(_("par type de dossier d'instruction"));
23 // Ouverture de la balise - Onglet 1
24 echo "\t<div id=\"tabs-1\">\n\n";
25 /**
26 * Affichage du formulaire de sélection du type de dossier d'instruction
27 */
28 // Inclusion de la classe de gestion des formulaires
29 require_once "../obj/om_formulaire.class.php";
30 // Ouverture du formulaire
31 echo "\t<form";
32 echo " method=\"post\"";
33 echo " id=\"workflows_form\"";
34 echo " action=\"../app/workflows.php\"";
35 echo ">\n";
36 // Paramétrage des champs du formulaire
37 $champs = array("di_type");
38 // Création d'un nouvel objet de type formulaire
39 $form = new formulaire(NULL, 0, 0, $champs);
40 // Paramétrage des champs du formulaire
41 $form->setLib("di_type", _("Type de dossier d'instruction"));
42 $form->setType("di_type", "select");
43 $form->setTaille("di_type", 25);
44 $form->setOnChange("di_type", "submit()");
45 $form->setMax("di_type", 25);
46 $form->setVal("di_type", ($f->get_submitted_post_value("di_type") != null) ? $f->get_submitted_post_value("di_type") : "");
47 //
48 $sql = "
49 SELECT
50 dossier_instruction_type.dossier_instruction_type,
51 concat(dossier_autorisation_type_detaille.code, ' - ', dossier_instruction_type.code,' - ',dossier_instruction_type.libelle) as lib
52 FROM ".DB_PREFIXE."dossier_instruction_type
53 LEFT JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille
54 ON dossier_instruction_type.dossier_autorisation_type_detaille=dossier_autorisation_type_detaille.dossier_autorisation_type_detaille
55 ORDER BY lib";
56 $res = $f->db->query($sql);
57 $f->addToLog("app/workflows.php: db->query(\"".$sql."\");", VERBOSE_MODE);
58 $f->isDatabaseError($res);
59 //
60 $contenu = array(array(""), array(_("choisir le type de dossier d'instruction")));
61 while ($row =& $res->fetchrow()) {
62 $contenu[0][] = $row[0];
63 $contenu[1][] = $row[1];
64 }
65 $form->setSelect("di_type", $contenu);
66 // Affichage du formulaire
67 $form->entete();
68 $form->afficher($champs, 0, false, false);
69 $form->enpied();
70 //// Affichage du bouton
71 //echo "\t<div class=\"formControls\">\n";
72 //$f->layout->display_form_button(array("value" => _("Valider")));
73 //echo "\t</div>\n";
74 // Fermeture du fomulaire
75 echo "\t</form>\n";
76 /**
77 *
78 */
79 if ($f->get_submitted_post_value("di_type") == null || $f->get_submitted_post_value("di_type") == "") {
80 // Fermeture de la balise - Onglet 1
81 echo "\n\t</div>\n";
82 // Fermeture de la balise - Conteneur d'onglets
83 echo "</div>\n";
84 //
85 die();
86 }
87
88 /**
89 *
90 */
91 //
92 $sql = "
93 SELECT
94 concat(dossier_autorisation_type_detaille.code, ' - ', dossier_instruction_type.code,' - ',dossier_instruction_type.libelle) as lib
95 FROM ".DB_PREFIXE."dossier_instruction_type
96 LEFT JOIN ".DB_PREFIXE."dossier_autorisation_type_detaille
97 ON dossier_instruction_type.dossier_autorisation_type_detaille=dossier_autorisation_type_detaille.dossier_autorisation_type_detaille
98 WHERE dossier_instruction_type.dossier_instruction_type=".$f->get_submitted_post_value("di_type");
99 $res = $f->db->getone($sql);
100 $f->addToLog("app/workflows.php: db->getone(\"".$sql."\");", VERBOSE_MODE);
101 $f->isDatabaseError($res);
102 //
103 echo "<h1>";
104 echo $res;
105 echo "</h1>";
106 echo "<br/>";
107 //
108
109 //
110 $sql = "
111 SELECT
112 etat1.etat as etat,
113 etat1.statut as etat_statut,
114 etat1.libelle as etat_libelle,
115 evenement.evenement as evenement,
116 evenement.libelle as evenement_libelle,
117 evenement.retour as evenement_retour,
118 evenement.action as evenement_action,
119 evenement.etat as evenement_action_parametrage_etat,
120 evenement.restriction as evenement_restriction,
121 evenement.delai as delai,
122 evenement.accord_tacite as accord_tacite,
123 evenement.delai_notification as delai_notification,
124 evt_ret_rar.evenement as evenement_evenement_retour_ar,
125 evt_ret_rar.libelle as evenement_evenement_retour_ar_lib,
126 evt_suiv_tacite.evenement as evenement_evenement_suivant_tacite,
127 evt_suiv_tacite.libelle as evenement_evenement_suivant_tacite_lib,
128 evt_ret_sign.evenement as evenement_evenement_retour_signature,
129 evt_ret_sign.libelle as evenement_evenement_retour_signature_lib,
130 etat2.statut as evenement_action_parametrage_etat_statut,
131 action.regle_etat as action_regle_etat,
132 action.regle_delai as action_regle_delai,
133 action.regle_accord_tacite as action_regle_accord_tacite,
134 action.regle_avis as action_regle_avis,
135 action.regle_date_limite as action_regle_date_limite,
136 action.regle_date_notification_delai as action_regle_date_notification_delai,
137 action.regle_date_complet as action_regle_date_complet,
138 action.regle_date_validite as action_regle_date_validite,
139 action.regle_date_decision as action_regle_date_decision,
140 action.regle_date_chantier as action_regle_date_chantier,
141 action.regle_date_achevement as action_regle_date_achevement,
142 action.regle_date_conformite as action_regle_date_conformite,
143 action.regle_date_rejet as action_regle_date_rejet,
144 action.regle_date_dernier_depot as action_regle_date_dernier_depot,
145 action.regle_date_limite_incompletude as action_regle_date_limite_incompletude,
146 action.regle_delai_incompletude as action_regle_delai_incompletude
147 FROM ".DB_PREFIXE."transition
148 LEFT JOIN ".DB_PREFIXE."etat as etat1
149 ON etat1.etat=transition.etat
150 LEFT JOIN ".DB_PREFIXE."evenement
151 ON transition.evenement=evenement.evenement
152 LEFT JOIN ".DB_PREFIXE."lien_dossier_instruction_type_evenement
153 ON lien_dossier_instruction_type_evenement.evenement=transition.evenement
154 LEFT JOIN ".DB_PREFIXE."action
155 ON evenement.action=action.action
156 LEFT JOIN ".DB_PREFIXE."etat as etat2
157 ON etat2.etat=evenement.etat
158 LEFT JOIN ".DB_PREFIXE."evenement as evt_ret_rar
159 ON evenement.evenement_retour_ar=evt_ret_rar.evenement
160 LEFT JOIN ".DB_PREFIXE."evenement as evt_suiv_tacite
161 ON evenement.evenement_suivant_tacite=evt_suiv_tacite.evenement
162 LEFT JOIN ".DB_PREFIXE."evenement as evt_ret_sign
163 ON evenement.evenement_retour_signature=evt_ret_sign.evenement
164 WHERE lien_dossier_instruction_type_evenement.dossier_instruction_type=".$f->get_submitted_post_value("di_type")."
165 ORDER BY etat1.statut DESC, etat1.etat, evenement_action, etat2.statut DESC, evenement.libelle";
166 $res = $f->db->query($sql);
167 $f->addToLog("app/workflows.php: db->query(\"".$sql."\");", VERBOSE_MODE);
168 $f->isDatabaseError($res);
169 //
170 $transitions = array();
171 while ($row =& $res->fetchrow(DB_FETCHMODE_ASSOC)) {
172 $transitions[] = $row;
173 }
174
175 //
176 $etat = "";
177 $champsRegle = array("action_regle_delai"=>_("delai"),
178 "action_regle_accord_tacite"=>_("accord_tacite"),
179 "action_regle_avis"=>_("avis"),
180 "action_regle_date_limite"=>_("date_limite"),
181 "action_regle_date_notification_delai"=>_("date_notification_delai"),
182 "action_regle_date_complet"=>_("date_complet"),
183 "action_regle_date_validite"=>_("date_validite"),
184 "action_regle_date_decision"=>_("date_decision"),
185 "action_regle_date_chantier"=>_("date_chantier"),
186 "action_regle_date_achevement"=>_("date_achevement"),
187 "action_regle_date_conformite"=>_("date_conformite"),
188 "action_regle_date_rejet"=>_("date_rejet"),
189 "action_regle_date_dernier_depot"=>_("date_dernier_depot"),
190 "action_regle_date_limite_incompletude"=>_("date_limite_incompletude"),
191 "action_regle_delai_incompletude"=>_("delai_incompletude"));
192 //compter le nombre d'actions
193 $i = 0;
194 foreach($transitions as $key => $transition) {
195 //
196 if ($transition["etat"] != $etat) {
197 if ($etat != "") {
198 echo "</ul>";
199 echo "<br/>";
200 }
201 //
202 echo "<h1>";
203 echo "<a name=\"".$transition["etat"]."\" href=\"../scr/form.php?obj=etat&amp;idx=".$transition["etat"]."&amp;action=3\">";
204 echo "<span class=\"wf_etat_statut label";
205 if ($transition["etat_statut"] == "encours") {
206 echo " label-info";
207 }
208 echo "\">";
209 echo $transition["etat"]." - ".$transition["etat_libelle"];
210 echo "</span>";
211 echo "</h1>";
212 echo "</a>";
213 //
214 echo "<ul>";
215 //
216 $etat = $transition["etat"];
217
218 echo "<h3>";
219 echo _("Evenements suivants possibles : ");
220 echo "</h3>";
221 }
222 //
223
224 echo "<li>";
225 //Lien pour afficher les informations de l'événement
226 echo "<span class=\"wf_evenement\">";
227 echo "<a href=\"../scr/form.php?obj=evenement&amp;idx=".$transition["evenement"]."&amp;action=3\">";
228 echo mb_strtoupper($transition["evenement_libelle"], 'UTF-8');
229 // Si c'est un événement "retour"
230 if ($transition["evenement_retour"] == 't') {
231 //
232 echo " <span class=\"backgroundEvenementRetour\">"._("[RETOUR]")."</span>";
233 }
234 echo "</a>";
235 echo "</span> ";
236
237 if ($transition["evenement_action_parametrage_etat"] != NULL
238 && $transition["action_regle_etat"] != NULL) {
239 echo "<br/> &rArr; ";
240 echo _("etat du dossier : ");
241
242 //Pas besoin de mettre d'ancre si l'état est l'état final
243 if ($transition["evenement_action_parametrage_etat"]!="cloturer"){
244 echo "<a href=\"#".$transition["evenement_action_parametrage_etat"]."\">";
245 }
246 echo "<span class=\"label";
247 if ($transition["evenement_action_parametrage_etat_statut"] == "encours") {
248 echo " label-info";
249 }
250 echo "\">";
251 echo $transition["evenement_action_parametrage_etat"];
252 echo "</span>";
253
254 if ($transition["evenement_action_parametrage_etat"]!="cloturer"){
255 echo "</a>";
256 }
257
258 echo "<br/>";
259 echo "<span class=\"wf_evenement_action\" id=\"".$i."\"> &rArr; ";
260 echo _("action sur le dossier : ");
261 echo "<a href=\"../scr/form.php?obj=action&amp;idx=".$transition["evenement_action"]."&amp;action=3\">";
262 echo $transition["evenement_action"];
263 echo "</a>";
264 echo "</span>";
265 echo "<br/>";
266
267 //Liste des règles de calcul de l'action
268 $action = false;
269 foreach ($champsRegle as $key => $value) {
270
271
272
273 //Si le champ n'est pas null
274 if ( !empty($transition[$key]) && $transition[$key] != "null" ){
275
276 //On ouvre la balise de la pop-up
277 if ( $action === false){
278 echo "<div class=\"regle_action\" title=\""._("Regle(s) de calcul")."\" id=\"regle_action".$i."\">";
279 $action = true;
280 }
281
282 $temp = explode("+", $transition[$key]);
283 $res = "";
284 foreach ($temp as $val){
285 $res .= (( isset($transition[$val]) &&
286 !empty($transition[$val]) &&
287 $transition[$val] != "null" )?
288 $transition[$val].(is_numeric($transition[$val])?" mois":""):
289 $val.(is_numeric($val)?" mois":""))
290 ." + ";
291 }
292 $res = substr($res, 0, -3);
293
294 echo "&nbsp;&nbsp;&rsaquo; ";
295 printf (_('%s = %s'), ucfirst($value), $res);
296 echo "</br>";
297 }
298 }
299 //On ferme la balise de la pop-up
300 if ( $action === true ){
301 echo "</div>";
302 }
303 //Incrément du numéro d'identifiant du combo action/règles
304 $i++;
305
306 //Affichage des champs d'événements suivant s'ils sont non nuls
307 if ( !empty($transition["evenement_evenement_retour_ar"]) && $transition["evenement_evenement_retour_ar"] != "null"){
308 echo " &rArr; ";
309 echo _("evenement_retour_ar")." : ";
310 echo "<a href=\"../scr/form.php?obj=evenement&amp;idx=".$transition["evenement_evenement_retour_ar_lib"]."&amp;action=3\">";
311 echo mb_strtoupper($transition["evenement_evenement_retour_ar_lib"], 'UTF-8');
312 echo "</a>";
313 echo "<br/>";
314 }
315
316 if ( !empty($transition["evenement_evenement_suivant_tacite"]) && $transition["evenement_evenement_suivant_tacite"] != "null"){
317 echo " &rArr; ";
318 echo _("evenement_suivant_tacite")." : ";
319 echo "<a href=\"../scr/form.php?obj=evenement&amp;idx=".$transition["evenement_evenement_suivant_tacite_lib"]."&amp;action=3\">";
320 echo mb_strtoupper($transition["evenement_evenement_suivant_tacite_lib"], 'UTF-8');
321 echo "</a>";
322 echo "<br/>";
323 }
324
325 if ( !empty($transition["evenement_evenement_retour_signature"]) && $transition["evenement_evenement_retour_signature"] != "null"){
326 echo " &rArr; ";
327 echo _("evenement_retour_signature")." : ";
328 echo "<a href=\"../scr/form.php?obj=evenement&amp;idx=".$transition["evenement_evenement_retour_signature_lib"]."&amp;action=3\">";
329 echo mb_strtoupper($transition["evenement_evenement_retour_signature_lib"], 'UTF-8');
330 echo "</a>";
331 echo "<br/>";
332 }
333
334 //Si une restriction existe, on l'affiche
335 if ( !empty($transition["evenement_restriction"]) && $transition["evenement_restriction"] != "null"){
336 echo " &rArr; ";
337 echo _("restriction")." : ".$transition["evenement_restriction"];
338 echo "<br/>";
339 }
340 }
341 echo "</li>";
342 }
343
344 // Fermeture de la balise - Onglet 1
345 echo "\n\t</div>\n";
346 // Fermeture de la balise - Conteneur d'onglets
347 echo "</div>\n";
348
349 ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26