From 4e42e73f602563e2498eea021a954052f28dd94c Mon Sep 17 00:00:00 2001 From: Maxime Kohlhaas Date: Sat, 23 Apr 2016 13:16:19 +0200 Subject: [PATCH] New add stats on interventions --- htdocs/fichinter/class/fichinter.class.php | 40 ++++++++++++++++++++++ htdocs/index.php | 8 +++++ 2 files changed, 48 insertions(+) diff --git a/htdocs/fichinter/class/fichinter.class.php b/htdocs/fichinter/class/fichinter.class.php index 69f01613f50..66fb1031d6e 100644 --- a/htdocs/fichinter/class/fichinter.class.php +++ b/htdocs/fichinter/class/fichinter.class.php @@ -89,6 +89,46 @@ class Fichinter extends CommonObject $this->statuts_logo[3]='statut4'; } + /** + * Load indicators into this->nb for board + * + * @return int <0 if KO, >0 if OK + */ + function load_state_board() + { + global $user; + + $this->nb=array(); + $clause = "WHERE"; + + $sql = "SELECT count(fi.rowid) as nb"; + $sql.= " FROM ".MAIN_DB_PREFIX."fichinter as fi"; + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe as s ON fi.fk_soc = s.rowid"; + if (!$user->rights->societe->client->voir && !$user->societe_id) + { + $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."societe_commerciaux as sc ON s.rowid = sc.fk_soc"; + $sql.= " WHERE sc.fk_user = " .$user->id; + $clause = "AND"; + } + $sql.= " ".$clause." fi.entity IN (".getEntity($this->element, 1).")"; + + $resql=$this->db->query($sql); + if ($resql) + { + while ($obj=$this->db->fetch_object($resql)) + { + $this->nb["fichinters"]=$obj->nb; + } + $this->db->free($resql); + return 1; + } + else + { + dol_print_error($this->db); + $this->error=$this->db->error(); + return -1; + } + } /** * Create an intervention into data base diff --git a/htdocs/index.php b/htdocs/index.php index e55f01ebdf4..5e9492d9b50 100644 --- a/htdocs/index.php +++ b/htdocs/index.php @@ -170,6 +170,7 @@ if (empty($user->societe_id)) ! empty($conf->commande->enabled) && $user->rights->commande->lire, ! empty($conf->facture->enabled) && $user->rights->facture->lire, ! empty($conf->contrat->enabled) && $user->rights->contrat->activer, + ! empty($conf->ficheinter->enabled) && $user->rights->ficheinter->lire, ! empty($conf->supplier_order->enabled) && $user->rights->fournisseur->commande->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_ORDERS_STATS), ! empty($conf->supplier_invoice->enabled) && $user->rights->fournisseur->facture->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_INVOICES_STATS), ! empty($conf->supplier_proposal->enabled) && $user->rights->supplier_proposal->lire && empty($conf->global->SOCIETE_DISABLE_SUPPLIERS_PROPOSAL_STATS), @@ -190,6 +191,7 @@ if (empty($user->societe_id)) DOL_DOCUMENT_ROOT."/commande/class/commande.class.php", DOL_DOCUMENT_ROOT."/compta/facture/class/facture.class.php", DOL_DOCUMENT_ROOT."/contrat/class/contrat.class.php", + DOL_DOCUMENT_ROOT."/fichinter/class/fichinter.class.php", DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php", DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.facture.class.php", DOL_DOCUMENT_ROOT."/supplier_proposal/class/supplier_proposal.class.php", @@ -209,6 +211,7 @@ if (empty($user->societe_id)) 'Commande', 'Facture', 'Contrat', + 'Fichinter', 'CommandeFournisseur', 'FactureFournisseur', 'SupplierProposal', @@ -228,6 +231,7 @@ if (empty($user->societe_id)) 'orders', 'invoices', 'Contracts', + 'fichinters', 'supplier_orders', 'supplier_invoices', 'askprice', @@ -248,6 +252,7 @@ if (empty($user->societe_id)) 'bill', 'order', 'order', + 'order', 'bill', 'propal', 'trip', @@ -266,6 +271,7 @@ if (empty($user->societe_id)) "CustomersOrders", "BillsCustomers", "Contracts", + "Interventions", "SuppliersOrders", "SuppliersInvoices", "SupplierProposalShort", @@ -286,6 +292,7 @@ if (empty($user->societe_id)) DOL_URL_ROOT.'/commande/list.php?mainmenu=commercial', DOL_URL_ROOT.'/compta/facture/list.php?mainmenu=accountancy', DOL_URL_ROOT.'/contrat/list.php', + DOL_URL_ROOT.'/fichinter/list.php', DOL_URL_ROOT.'/fourn/commande/list.php', DOL_URL_ROOT.'/fourn/facture/list.php', DOL_URL_ROOT.'/supplier_proposal/list.php', @@ -306,6 +313,7 @@ if (empty($user->societe_id)) "bills", "supplier_proposal", "contracts", + "interventions", "trips", "projects" );