/[openfoncier]/trunk/app/widget_dossiers_limites.php
ViewVC logotype

Diff of /trunk/app/widget_dossiers_limites.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3058 by nmeucci, Mon Jun 2 13:15:10 2014 UTC revision 3059 by nhaye, Wed Jun 4 14:47:57 2014 UTC
# Line 1  Line 1 
 <?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&amp;action=3&amp;idx='.$row[0].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row[0].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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&amp;action=3&amp;idx='.$row["dossier"].'&amp;idz='.$row["dossier_libelle"].'&amp;premier=0&amp;advs_id=&amp;recherche=&amp;tricol=&amp;selectioncol=&amp;valide=&amp;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    

Legend:
Removed from v.3058  
changed lines
  Added in v.3059

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26