]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 10 Feb 2011 13:41:28 +0000 (13:41 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 10 Feb 2011 13:41:28 +0000 (13:41 +0000)
inc/commons/class.common.core.php
inc/ws/Controlleur/class.ws.users.tree.php

index 2ab8709dbf13e1b008d2f47c76a3fc6fec7f6947..f9a5783407da052e5e948cfe8f7463d62de43c3f 100644 (file)
@@ -383,7 +383,9 @@ class commonCore extends cubeCore {
                // .\r
                // Table des droits\r
                $db->ws_users_tree->utilisateur_id('integer', 0, false);\r
+               $db->ws_users_tree->entreprise_id('integer', 0, false);\r
                $db->ws_users_tree->facturable_id('integer', 0, false);\r
+               $db->ws_users_tree->facturable_entreprise_id('integer', 0, false);\r
                $db->ws_users_tree->administrateur_id('integer', 0, false);\r
                // Clé\r
                $db->ws_users_tree->primary('pk_utilisateur_id', 'utilisateur_id');\r
@@ -412,9 +414,6 @@ class commonCore extends cubeCore {
 \r
                $this->views->createView('equipiers', 'SELECT * FROM utilisateurs WHERE grade>=1');\r
                $this->views->createView('gerants', 'SELECT * FROM utilisateurs WHERE grade=2');\r
-               // $this->views->createView('ws_top_revendeurs', 'SELECT * FROM utilisateurs WHERE ws_grade=3 AND ws_admin IN(SELECT utilisateur_id FROM equipiers)');\r
-               // $this->views->createView('ws_revendeurs', 'SELECT * FROM utilisateurs WHERE ws_grade=3');\r
-               // $this->views->createView('ws_facturables', 'SELECT * FROM utilisateurs WHERE ws_grade BETWEEN 0 AND 3 AND ws_admin IN(SELECT utilisateur_id FROM equipiers)');\r
                $this->views->createView('impayes_entreprises', 'SELECT SUM(total_ht) AS impaye, u.entreprise AS entreprise '\r
                         . 'FROM utilisateurs u LEFT JOIN projets p ON u.utilisateur_id=p.client LEFT JOIN factures f ON f.projet=p.projet_id '\r
                         . 'WHERE f.status=1 GROUP BY u.entreprise');\r
@@ -424,8 +423,14 @@ class commonCore extends cubeCore {
                         . 'LEFT JOIN projets p ON p.client=u.utilisateur_id '\r
                         . 'LEFT JOIN factures f ON f.projet=p.projet_id AND f.status IN(1,2) '\r
                         . 'GROUP BY e.entreprise_id');\r
-               $this->views->createView('entreprises_vue', 'SELECT e.*,i.impaye AS impaye'\r
-                        . ' FROM entreprises_inter e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise');\r
+               $this->views->createView('entreprises_vue', 'SELECT e.*,i.impaye AS impaye '\r
+                        . 'FROM entreprises_inter e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise');\r
+               $this->views->createView('entreprises_ws', 'SELECT e.*, a.prenom AS administrateur, r.nom AS revendeur '\r
+                        . 'FROM entreprises e '\r
+                        . 'LEFT JOIN ws_users_tree ri ON ri.entreprise_id=e.entreprise_id '\r
+                        . 'LEFT JOIN entreprises r ON ri.facturable_entreprise_id=r.entreprise_id '\r
+                        . 'LEFT JOIN utilisateurs a ON ri.administrateur_id=a.utilisateur_id '\r
+                        . '');\r
                $this->views->createView('clients_entreprise', 'SELECT u.*,e.nom AS rs, e.adresse_facturation AS adresse_facturation '\r
                         . 'FROM entreprises e LEFT JOIN utilisateurs u ON u.entreprise=e.entreprise_id AND u.grade=0');\r
                $this->views->createView('utilisateurs_entreprise', 'SELECT u.*,e.nom AS rs, e.adresse_facturation AS adresse_facturation, '\r
@@ -434,7 +439,7 @@ class commonCore extends cubeCore {
                $this->views->createView('clients', 'SELECT u.*,e.nom AS rs, e.adresse_facturation AS adresse_facturation, i.impaye, '\r
                         . 'SUM(f.total_ht) AS ca '\r
                         . 'FROM entreprises e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise LEFT JOIN utilisateurs u ON u.entreprise=e.entreprise_id AND u.grade=0 LEFT JOIN projets p ON p.client=u.utilisateur_id LEFT JOIN factures f ON f.projet=p.projet_id AND f.status IN(1,2) '\r
-                        . 'GROUP BY u.utilisateur_id');\r
+                        . 'GROUP BY u.utilisateur_id','TEMPTABLE');\r
                $this->views->createView('taches_vue', 'SELECT taches.tache_id,taches.nom,taches.categorie,taches.type,taches.budget,taches.projet,taches.taux_journalier, '\r
                         . '(SUM(timereport.heures)/' . JOURNEE . ') AS jours_consommes, ((SUM(timereport.heures)/' . JOURNEE . ')/(taches.budget/taches.taux_journalier))*100 AS progression,(taches.budget/taches.taux_journalier) AS jours_prevus '\r
                         . 'FROM taches LEFT JOIN timereport ON taches.tache_id=timereport.tache_id '\r
index cb3df73fa44688ed6797201274c03f7dad601f34..453ba7f543e14fe0c6ffc68998b95a1696527c5e 100644 (file)
@@ -49,7 +49,9 @@ class wsUsersTree {
                        $facturable_id = $administrateur_id = 0;\r
                        $this->getFacturableOf($utilisateur_id, $facturable_id, $administrateur_id, 1);\r
                        $c->utilisateur_id = $utilisateur_id;\r
+                       $c->entreprise_id = $this->entreprises[$utilisateur_id];\r
                        $c->facturable_id = $facturable_id;\r
+                       $c->facturable_entreprise_id = $this->entreprises[$facturable_id] ;\r
                        $c->administrateur_id = $administrateur_id;\r
                        $c->insert();\r
                }\r
@@ -69,7 +71,6 @@ class wsUsersTree {
                foreach($this->users as $uid => $admin) {\r
                        $this->admins[$uid][] = $uid;\r
                }\r
-\r
                // Echange des droits entre collègues\r
                foreach($this->admins as $admin_id => $list) {\r
                        $e = $this->entreprises[$admin_id];\r
@@ -85,8 +86,8 @@ class wsUsersTree {
                        }\r
                }\r
 \r
-               foreach($this->admins as $admin=>$list){\r
-                       $this->admins[$admin]=array_unique($list);\r
+               foreach($this->admins as $admin => $list) {\r
+                       $this->admins[$admin] = array_unique($list);\r
                        sort($this->admins[$admin]);\r
                }\r
 \r