2
0
forked from Wavyzz/dolibarr

nouveau fichier

This commit is contained in:
Rodolphe Quiedeville
2003-06-29 23:00:10 +00:00
parent b1f643ee6d
commit 42ab3f89d3
4 changed files with 2895 additions and 0 deletions

73
htdocs/graph.class.php Normal file
View File

@@ -0,0 +1,73 @@
<?PHP
/* Copyright (c) 2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*/
class Graph
{
var $db;
var $errorstr;
Function Graph()
{
include_once(DOL_DOCUMENT_ROOT."/includes/phplot/phplot.php");
$this->bgcolor = array(235,235,224);
$this->bordercolor = array(235,235,224);
$this->datacolor = array(array(204,204,179),
array(187,187,136),
array(235,235,224));
return 1;
}
/*
*
*
*
*/
Function draw($file, $data)
{
$w = 400;
$h = 200;
//Define the object
$graph = new PHPlot($w,$h);
$graph->SetIsInline(1);
$graph->SetPlotType('bars');
$graph->SetPlotAreaPixels(60,10,$w-10,$h-30) ;
$graph->SetBackgroundColor($this->bgcolor);
$graph->SetDataColors($this->datacolor, $this->bordercolor);
$graph->SetOutputFile($file);
//Set some data
$graph->SetDataValues($data);
$graph->SetVertTickIncrement(0);
//Draw it
$graph->DrawGraph();
}
}
?>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,110 @@
<?PHP
/* Copyright (C) 2001-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
require("./pre.inc.php");
require("../../propal.class.php3");
require("../../graph.class.php");
llxHeader();
$db = new Db();
$mesg = '';
/*
*
*
*/
if ($id)
{
$product = new Product($db);
$result = $product->fetch($id);
if ( $result )
{
$dir = DOL_DOCUMENT_ROOT."/document/produit/".$product->id;
if (! file_exists($dir))
{
umask(0);
if (! mkdir($dir, 0755))
{
$mesg = "Impossible de cr<63>er $dir !";
}
}
$filev = $dir . "/vente12mois.png";
$filenv = $dir . "/vendu12mois.png";
if (! file_exists($filev) or $action == 'recalcul')
{
$px = new Graph();
$graph_data = $product->get_num_vente();
$px->draw($filev, $graph_data);
$px = new Graph();
$graph_data = $product->get_nb_vente();
$px->draw($filenv, $graph_data);
$mesg = "Graphiques g<>n<EFBFBD>r<EFBFBD>s";
}
print_fiche_titre('Fiche produit : '.$product->ref, $mesg);
print '<table border="1" width="100%" cellspacing="0" cellpadding="4">';
print "<tr>";
print '<td width="20%">R<>f<EFBFBD>rence</td><td width="40%"><a href="../fiche.php3?id='.$product->id.'">'.$product->ref.'</a></td>';
print '<td>Statistiques</td></tr>';
print "<td>Libell<6C></td><td>$product->label</td>";
print '<td valign="top" rowspan="2">';
print "Propositions commerciales : ".$product->count_propale();
print "<br>Propos<6F> <20> <b>".$product->count_propale_client()."</b> clients";
print "<br>Factures : ".$product->count_facture();
print '</td></tr>';
print '<tr><td>Prix</td><TD>'.price($product->price).'</td></tr>';
print "</table>";
print '<br><table border="1" width="100%" cellspacing="0" cellpadding="4">';
print '<tr class="liste_titre"><td width="50%" colspan="2" align="center">Nombre de ventes<br>sur les 12 derniers mois</td>';
print '<td align="center" width="50%" colspan="2">Nombre de pi<70>ces vendues</td></tr>';
print '<tr><td align="center" colspan="2">';
print '<img src="'.DOL_URL_ROOT.'/document/produit/'.$product->id.'/vente12mois.png" alt="Ventes sur les 12 derniers mois">';
print '</td><td align="center" colspan="2">';
print '<img src="'.DOL_URL_ROOT.'/document/produit/'.$product->id.'/vendu12mois.png" alt="Ventes sur les 12 derniers mois">';
print '</td></tr><tr>';
print '<td>G<>n<EFBFBD>r<EFBFBD> le '.strftime("%d %b %Y %H:%M:%S",filemtime($filev)).'</td>';
print '<td align="center">[<a href="fiche.php?id='.$id.'&action=recalcul">Re-calculer</a>]</td>';
print '<td>G<>n<EFBFBD>r<EFBFBD> le '.strftime("%d %b %Y %H:%M:%S",filemtime($filev)).'</td>';
print '<td align="center">[<a href="fiche.php?id='.$id.'&action=recalcul">Re-calculer</a>]</td>';
print '</tr></table>';
}
}
else
{
print "Error";
}
$db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>");
?>

View File

@@ -0,0 +1,49 @@
<?PHP
/* Copyright (C) 2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
require("../../main.inc.php3");
function llxHeader($head = "", $urlp = "")
{
global $user, $conf;
/*
*
*
*/
top_menu($head);
$menu = new Menu();
$menu->add(DOL_URL_ROOT."/product/index.php3", "Produits");
$menu->add_submenu("../fiche.php3?&action=create","Nouveau produit");
$menu->add_submenu("../popuprop.php", "Popularit<EFBFBD>");
left_menu($menu->liste);
/*
*
*
*/
}
?>