$entreprise->pays = $r->pays;\r
$entreprise->tva_intra = $r->tva_intra;\r
$entreprise->notes = $r->notes;\r
- $entreprise->impaye = $r->impaye;\r
- $entreprise->ca = $r->ca;\r
+ if (isset($r->impaye)) {\r
+ $entreprise->impaye = $r->impaye;\r
+ }\r
+ if (isset($r->ca)) {\r
+ $entreprise->ca = $r->ca;\r
+ }\r
$entreprise->adresse_facturation = $r->adresse_facturation;\r
$entreprise->ws_admin = $r->ws_admin;\r
$entreprise->ws_grade = $r->ws_grade;\r
return $res;\r
}\r
\r
- public function getListe($orderby = null, $sens = null, $limit = null, $limitedToUserRights = false)\r
+ public function getListe($orderby = null, $sens = null, $limit = null, $limitedToUserRights = false, $table = 'entreprises_vue')\r
{\r
$where = '(';\r
if (!is_null($this->q)) {\r
$sens = is_null($sens)?'DESC':$sens;\r
$limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]);\r
\r
- $sql = 'SELECT * FROM entreprises_vue WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit;\r
+ $sql = 'SELECT * FROM ' . $table . ' WHERE ' . $where . ' ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit;\r
\r
$r = $this->con->select($sql);\r
$ids = array();\r
$db->ws_users_tree->administrateur_id('integer', 0, false);\r
// Clé\r
$db->ws_users_tree->primary('pk_utilisateur_id', 'utilisateur_id');\r
+ // Table des entreprises\r
+ $db->ws_entreprises_tree->entreprise_id('integer', 0, false);\r
+ $db->ws_entreprises_tree->facturable_entreprise_id('integer', 0, false);\r
+ $db->ws_entreprises_tree->administrateur_id('integer', 0, false);\r
+ // Clés\r
+ $db->ws_entreprises_tree->primary('pk_entreprise_id', 'entreprise_id');\r
// Table des demandes de devis\r
$db->demandes->demande_id('integer', 0, false);\r
$db->demandes->type('integer', 0, false);\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
+ . 'GROUP BY e.entreprise_id');\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
$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','TEMPTABLE');\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
$i = 0;\r
foreach($liste as $id => $client) {\r
if (!is_array($client->contacts)) {\r
- continue;\r
+ $client->contacts=array();\r
}\r
$odd = cubeMath::isOdd($i)?' class="odd"':'';\r
$res .= '<tr' . $odd . '>';\r
public function refreshWSUsersTree()\r
{\r
$this->con->execute('TRUNCATE TABLE ws_users_tree');\r
+ $this->con->execute('TRUNCATE TABLE ws_entreprises_tree');\r
\r
$this->users = array();\r
$this->admins = array();\r
$this->facturables = $this->getFacturables();\r
// Fabrication de l'arbre\r
$c = $this->con->openCursor('ws_users_tree');\r
+ $ce=$this->con->openCursor('ws_entreprises_tree');\r
\r
foreach($this->users as $utilisateur_id => $admin) {\r
$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
+ $ce->entreprise_id=$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
+ $ce->facturable_entreprise_id=$c->facturable_entreprise_id = $this->entreprises[$facturable_id] ;\r
+ $ce->administrateur_id=$c->administrateur_id = $administrateur_id;\r
$c->insert();\r
+ $ce->insert();\r
+\r
+\r
}\r
// Fabrication de la liste des droits à partir de l'arbre\r
for($i = 1;$i <= 4;$i++) {\r