|
<?php |
|
|
/** |
|
|
* Widget - |
|
|
* |
|
|
* @package openfoncier |
|
|
* @version SVN : $Id$ |
|
|
*/ |
|
|
|
|
|
require_once "../obj/utils.class.php"; |
|
|
if (!isset($f)) { |
|
|
$f = new utils(NULL, "dossiers_limites", _("Widget - Dossiers limites 15 / 20 jours")); |
|
|
} |
|
|
|
|
|
// Données |
|
|
// Nombre de jours à afficher |
|
|
$nbJours = explode("=", $content); |
|
|
$nbJours = $nbJours[1]; |
|
|
|
|
|
// Création de la requête de récupération des dossiers |
|
|
$sql = |
|
|
"SELECT |
|
|
dossier.dossier, |
|
|
dossier.dossier_libelle, |
|
|
dossier.date_limite, |
|
|
dossier.date_limite_incompletude, |
|
|
COALESCE(demandeur.particulier_nom, demandeur.personne_morale_denomination) |
|
|
AS nom_petitionnaire |
|
|
FROM |
|
|
".DB_PREFIXE."dossier |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."lien_dossier_demandeur |
|
|
ON |
|
|
dossier.dossier = lien_dossier_demandeur.dossier |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."demandeur |
|
|
ON |
|
|
lien_dossier_demandeur.demandeur = demandeur.demandeur |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."dossier_autorisation |
|
|
ON |
|
|
dossier.dossier_autorisation = dossier_autorisation.dossier_autorisation |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."dossier_autorisation_type_detaille |
|
|
ON |
|
|
dossier_autorisation.dossier_autorisation_type_detaille = |
|
|
dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."dossier_autorisation_type |
|
|
ON |
|
|
dossier_autorisation_type_detaille.dossier_autorisation_type= |
|
|
dossier_autorisation_type.dossier_autorisation_type |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."instructeur |
|
|
ON |
|
|
dossier.instructeur=instructeur.instructeur |
|
|
LEFT JOIN |
|
|
".DB_PREFIXE."om_utilisateur |
|
|
ON |
|
|
instructeur.om_utilisateur=om_utilisateur.om_utilisateur |
|
|
WHERE |
|
|
date_limite <= CURRENT_TIMESTAMP + $nbJours * interval '1 day' AND |
|
|
LOWER(dossier.accord_tacite) = 'oui' AND |
|
|
LOWER(dossier_autorisation_type.code) <> 'dp' AND |
|
|
LOWER(dossier_autorisation_type_detaille.code) <> 'CUa' AND "; |
|
|
|
|
|
// Si l'utilisateur n'est pas un divisionnaire |
|
|
// alors on n'affiche que ses dossiers à qualifier |
|
|
if(!$f->isUserDivisionnaire() && !$f->isUserChef()) { |
|
|
$sql .= " om_utilisateur.login='".$_SESSION['login']."' AND "; |
|
|
} |
|
|
|
|
|
$sql .= " dossier.avis_decision IS NULL |
|
|
ORDER BY |
|
|
dossier.date_limite |
|
|
LIMIT 10"; |
|
|
|
|
|
// Exécution de la requête |
|
|
$res = $f->db->query($sql); |
|
|
$f->addToLog("app/widget_dossiers_limites.php: db->query(\"".$sql."\");", VERBOSE_MODE); |
|
|
$f->isDatabaseError($res); |
|
|
|
|
|
// Affiche des données résultats |
|
|
if ( $res->numrows() > 0 ){ |
|
|
|
|
|
$message = _("Voici la liste de vos dossiers limites : "); |
|
|
$f->displayMessage("transparent", $message); |
|
|
|
|
|
echo '<table class="tab-tab">'; |
|
1 |
|
|
|
// Entête de tableau |
|
|
echo '<thead>'; |
|
|
echo '<tr class="ui-tabs-nav ui-accordion ui-state-default tab-title">'; |
|
|
//echo '<th class="title col-0 firstcol">'; |
|
|
// echo '<span class="name">'; |
|
|
// echo '</span>'; |
|
|
//echo '</th>'; |
|
|
echo '<th class="title col-0 firstcol">'; |
|
|
echo '<span class="name">'; |
|
|
echo _('dossier'); |
|
|
echo '</span>'; |
|
|
echo '</th>'; |
|
|
echo '<th class="title col-0 firstcol">'; |
|
|
echo '<span class="name">'; |
|
|
echo _('nom_petitionnaire'); |
|
|
echo '</span>'; |
|
|
echo '</th>'; |
|
|
echo '<th class="title col-0 firstcol">'; |
|
|
echo '<span class="name">'; |
|
|
echo _('date_limite'); |
|
|
echo '</span>'; |
|
|
echo '</th>'; |
|
|
echo '</tr>'; |
|
|
echo '</thead>'; |
|
|
|
|
|
echo '<tbody>'; |
|
|
|
|
|
// Données dans le tableau |
|
|
while ( $row =& $res->fetchRow(DB_FETCHMODE_ASSOC) ) { |
|
|
|
|
|
echo '<tr class="tab-data odd">'; |
|
|
|
|
|
// Icône de visualisation |
|
|
// Numéro de dossier |
|
|
//echo '<td class="icons">'; |
|
|
// echo '<a class="lienTable" |
|
|
// href="form.php?obj=dossier_instruction&action=3&idx='.$row[0].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">'; |
|
|
// echo '<span class="om-icon om-icon-16 om-icon-fix consult-16" title="'._('Consulter').'">'; |
|
|
// echo _('Consulter'); |
|
|
// echo '</span>'; |
|
|
// echo '</a>'; |
|
|
//echo '</td>'; |
|
|
|
|
|
// Numéro de dossier |
|
|
echo '<td class="col-1 firstcol">'; |
|
|
echo '<a class="lienTable" |
|
|
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
|
|
.$row["dossier_libelle"] |
|
|
.'</a>'; |
|
|
echo '</td>'; |
|
|
|
|
|
// Nom du pétitionnaire |
|
|
echo '<td class="col-1">'; |
|
|
echo '<a class="lienTable" |
|
|
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
|
|
.$row["nom_petitionnaire"] |
|
|
.'</a>'; |
|
|
echo '</td>'; |
|
|
|
|
|
if ($row["date_limite_incompletude"] != NULL) { |
|
|
$row["date_limite"] = $row["date_limite_incompletude"]; |
|
|
} |
|
2 |
|
|
3 |
// Date limite |
<?php |
4 |
echo '<td class="col-2 lastcol">'; |
/** |
5 |
echo '<a class="lienTable" |
* Widget - |
6 |
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
* |
7 |
.$f->formatDate($row["date_limite"]) |
* @package openfoncier |
8 |
.'</a>'; |
* @version SVN : $Id$ |
9 |
echo '</td>'; |
*/ |
10 |
|
|
11 |
echo "</tr>"; |
require_once "../obj/utils.class.php"; |
12 |
|
if (!isset($f)) { |
13 |
|
$f = new utils(NULL, "dossiers_limites", _("Widget - Dossiers limites 15 / 20 jours")); |
14 |
} |
} |
15 |
|
|
16 |
echo '</tbody>'; |
// Données |
17 |
|
// Nombre de jours à afficher |
18 |
echo '</table>'; |
$nbJours = explode("=", $content); |
19 |
|
$nbJours = $nbJours[1]; |
20 |
$footer = "../scr/tab.php?obj=dossiers_limites&nbj=".$nbJours; |
|
21 |
|
// Création de la requête de récupération des dossiers |
22 |
// Si l'utilisateur est un divisionnaire ou chef de service |
$sql = |
23 |
// alors on affiche tous les dossiers limites |
"SELECT |
24 |
if($f->isUserDivisionnaire() || $f->isUserChef()) { |
dossier.dossier, |
25 |
$footer = "../scr/tab.php?obj=dossiers_tous_limites&nbj=".$nbJours; |
dossier.dossier_libelle, |
26 |
|
dossier.date_limite, |
27 |
|
dossier.date_limite_incompletude, |
28 |
|
COALESCE(demandeur.particulier_nom, demandeur.personne_morale_denomination) |
29 |
|
AS nom_petitionnaire |
30 |
|
FROM |
31 |
|
".DB_PREFIXE."dossier |
32 |
|
LEFT JOIN |
33 |
|
".DB_PREFIXE."lien_dossier_demandeur |
34 |
|
ON |
35 |
|
dossier.dossier = lien_dossier_demandeur.dossier |
36 |
|
LEFT JOIN |
37 |
|
".DB_PREFIXE."demandeur |
38 |
|
ON |
39 |
|
lien_dossier_demandeur.demandeur = demandeur.demandeur |
40 |
|
LEFT JOIN |
41 |
|
".DB_PREFIXE."dossier_autorisation |
42 |
|
ON |
43 |
|
dossier.dossier_autorisation = dossier_autorisation.dossier_autorisation |
44 |
|
LEFT JOIN |
45 |
|
".DB_PREFIXE."dossier_autorisation_type_detaille |
46 |
|
ON |
47 |
|
dossier_autorisation.dossier_autorisation_type_detaille = |
48 |
|
dossier_autorisation_type_detaille.dossier_autorisation_type_detaille |
49 |
|
LEFT JOIN |
50 |
|
".DB_PREFIXE."dossier_autorisation_type |
51 |
|
ON |
52 |
|
dossier_autorisation_type_detaille.dossier_autorisation_type= |
53 |
|
dossier_autorisation_type.dossier_autorisation_type |
54 |
|
LEFT JOIN |
55 |
|
".DB_PREFIXE."instructeur |
56 |
|
ON |
57 |
|
dossier.instructeur=instructeur.instructeur |
58 |
|
LEFT JOIN |
59 |
|
".DB_PREFIXE."om_utilisateur |
60 |
|
ON |
61 |
|
instructeur.om_utilisateur=om_utilisateur.om_utilisateur |
62 |
|
WHERE |
63 |
|
( |
64 |
|
(date_limite <= CURRENT_TIMESTAMP + $nbJours * interval '1 day' AND dossier.incompletude IS FALSE) OR |
65 |
|
|
66 |
|
(dossier.incompletude IS TRUE AND dossier.incomplet_notifie IS TRUE |
67 |
|
AND date_limite_incompletude <= CURRENT_TIMESTAMP + $nbJours * interval '1 day') |
68 |
|
) |
69 |
|
AND |
70 |
|
LOWER(dossier.accord_tacite) = 'oui' AND |
71 |
|
LOWER(dossier_autorisation_type.code) != 'dp' AND |
72 |
|
LOWER(dossier_autorisation_type_detaille.code) != 'cua' AND "; |
73 |
|
|
74 |
|
// Si l'utilisateur n'est pas un divisionnaire |
75 |
|
// alors on n'affiche que ses dossiers à qualifier |
76 |
|
if(!$f->isUserDivisionnaire() && !$f->isUserChef()) { |
77 |
|
$sql .= " om_utilisateur.login='".$_SESSION['login']."' AND "; |
78 |
|
} |
79 |
|
|
80 |
|
$sql .= " dossier.avis_decision IS NULL |
81 |
|
ORDER BY |
82 |
|
dossier.date_limite |
83 |
|
LIMIT 10"; |
84 |
|
|
85 |
|
// Exécution de la requête |
86 |
|
$res = $f->db->query($sql); |
87 |
|
$f->addToLog("app/widget_dossiers_limites.php: db->query(\"".$sql."\");", VERBOSE_MODE); |
88 |
|
$f->isDatabaseError($res); |
89 |
|
|
90 |
|
// Affiche des données résultats |
91 |
|
if ( $res->numrows() > 0 ){ |
92 |
|
|
93 |
|
$message = _("Voici la liste de vos dossiers limites : "); |
94 |
|
$f->displayMessage("transparent", $message); |
95 |
|
|
96 |
|
echo '<table class="tab-tab">'; |
97 |
|
|
98 |
|
// Entête de tableau |
99 |
|
echo '<thead>'; |
100 |
|
echo '<tr class="ui-tabs-nav ui-accordion ui-state-default tab-title">'; |
101 |
|
//echo '<th class="title col-0 firstcol">'; |
102 |
|
// echo '<span class="name">'; |
103 |
|
// echo '</span>'; |
104 |
|
//echo '</th>'; |
105 |
|
echo '<th class="title col-0 firstcol">'; |
106 |
|
echo '<span class="name">'; |
107 |
|
echo _('dossier'); |
108 |
|
echo '</span>'; |
109 |
|
echo '</th>'; |
110 |
|
echo '<th class="title col-0 firstcol">'; |
111 |
|
echo '<span class="name">'; |
112 |
|
echo _('nom_petitionnaire'); |
113 |
|
echo '</span>'; |
114 |
|
echo '</th>'; |
115 |
|
echo '<th class="title col-0 firstcol">'; |
116 |
|
echo '<span class="name">'; |
117 |
|
echo _('date_limite'); |
118 |
|
echo '</span>'; |
119 |
|
echo '</th>'; |
120 |
|
echo '</tr>'; |
121 |
|
echo '</thead>'; |
122 |
|
|
123 |
|
echo '<tbody>'; |
124 |
|
|
125 |
|
// Données dans le tableau |
126 |
|
while ( $row =& $res->fetchRow(DB_FETCHMODE_ASSOC) ) { |
127 |
|
|
128 |
|
echo '<tr class="tab-data odd">'; |
129 |
|
|
130 |
|
// Icône de visualisation |
131 |
|
// Numéro de dossier |
132 |
|
//echo '<td class="icons">'; |
133 |
|
// echo '<a class="lienTable" |
134 |
|
// href="form.php?obj=dossier_instruction&action=3&idx='.$row[0].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">'; |
135 |
|
// echo '<span class="om-icon om-icon-16 om-icon-fix consult-16" title="'._('Consulter').'">'; |
136 |
|
// echo _('Consulter'); |
137 |
|
// echo '</span>'; |
138 |
|
// echo '</a>'; |
139 |
|
//echo '</td>'; |
140 |
|
|
141 |
|
// Numéro de dossier |
142 |
|
echo '<td class="col-1 firstcol">'; |
143 |
|
echo '<a class="lienTable" |
144 |
|
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
145 |
|
.$row["dossier_libelle"] |
146 |
|
.'</a>'; |
147 |
|
echo '</td>'; |
148 |
|
|
149 |
|
// Nom du pétitionnaire |
150 |
|
echo '<td class="col-1">'; |
151 |
|
echo '<a class="lienTable" |
152 |
|
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
153 |
|
.$row["nom_petitionnaire"] |
154 |
|
.'</a>'; |
155 |
|
echo '</td>'; |
156 |
|
|
157 |
|
if ($row["date_limite_incompletude"] != NULL) { |
158 |
|
$row["date_limite"] = $row["date_limite_incompletude"]; |
159 |
|
} |
160 |
|
|
161 |
|
// Date limite |
162 |
|
echo '<td class="col-2 lastcol">'; |
163 |
|
echo '<a class="lienTable" |
164 |
|
href="form.php?obj=dossier_instruction&action=3&idx='.$row["dossier"].'&idz='.$row["dossier_libelle"].'&premier=0&advs_id=&recherche=&tricol=&selectioncol=&valide=&retour=tab">' |
165 |
|
.$f->formatDate($row["date_limite"]) |
166 |
|
.'</a>'; |
167 |
|
echo '</td>'; |
168 |
|
|
169 |
|
echo "</tr>"; |
170 |
|
} |
171 |
|
|
172 |
|
echo '</tbody>'; |
173 |
|
|
174 |
|
echo '</table>'; |
175 |
|
|
176 |
|
$footer = "../scr/tab.php?obj=dossiers_limites&nbj=".$nbJours; |
177 |
|
|
178 |
|
// Si l'utilisateur est un divisionnaire ou chef de service |
179 |
|
// alors on affiche tous les dossiers limites |
180 |
|
if($f->isUserDivisionnaire() || $f->isUserChef()) { |
181 |
|
$footer = "../scr/tab.php?obj=dossiers_tous_limites&nbj=".$nbJours; |
182 |
|
} |
183 |
|
$footer_title = _("Voir tous mes dossiers limites"); |
184 |
} |
} |
|
$footer_title = _("Voir tous mes dossiers limites"); |
|
|
} |
|
|
else{ |
|
|
|
|
|
echo _("Vous n'avez pas de dossiers limites pour le moment."); |
|
|
} |
|
|
?> |
|
185 |
|
else{ |
186 |
|
|
187 |
|
echo _("Vous n'avez pas de dossiers limites pour le moment."); |
188 |
|
} |
189 |
|
?> |
190 |
|
|