From 6e4afb429b9798c498f97808469a98ace75bcf83 Mon Sep 17 00:00:00 2001 From: Rodolphe Quiedeville Date: Wed, 16 Feb 2005 10:38:55 +0000 Subject: [PATCH] Nouveau fichier --- htdocs/telephonie/client/factures.php | 175 +++++++++++++++ htdocs/telephonie/client/tarifs.php | 310 ++++++++++++++++++++++++++ 2 files changed, 485 insertions(+) create mode 100644 htdocs/telephonie/client/factures.php create mode 100644 htdocs/telephonie/client/tarifs.php diff --git a/htdocs/telephonie/client/factures.php b/htdocs/telephonie/client/factures.php new file mode 100644 index 00000000000..1ffee4e6bce --- /dev/null +++ b/htdocs/telephonie/client/factures.php @@ -0,0 +1,175 @@ + + * + * 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"); + +llxHeader("","Téléphonie - Factures client"); + +if ($cancel == $langs->trans("Cancel")) +{ + $action = ''; +} +/* + * Affichage + * + */ + +if ($_GET["id"]) +{ + $soc = new Societe($db); + $result = $soc->fetch($_GET["id"]); + + if ( $result == 1 ) + { + if ($_GET["action"] <> 'edit' && $_GET["action"] <> 're-edit') + { + $h=0; + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/fiche.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Lignes"); + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/factures.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Factures"); + $hselected = $h; + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/ca.php?id=".$soc->id; + $head[$h][1] = $langs->trans("CA"); + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/tarifs.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Tarifs"); + $h++; + + + dolibarr_fiche_head($head, $hselected, 'Client : '.$soc->nom); + + print ''; + print ''; + + print ""; + + print ''; + print ''; + + print '
'.$langs->trans('Name').''.$soc->nom.''.$langs->trans('Code Client').''.$soc->code_client.'
".$langs->trans('Address')."".nl2br($soc->adresse)."
".$soc->cp." ".$soc->ville." ".$soc->pays."
'.$langs->trans('Phone').''.dolibarr_print_phone($soc->tel).''.$langs->trans('Fax').''.dolibarr_print_phone($soc->fax).'

'; + + /* + * Factures + * + */ + + if ($page == -1) { $page = 0 ; } + + if ($sortorder == "") { + $sortorder="DESC"; + } + if ($sortfield == "") { + $sortfield="f.date"; + } + $offset = $conf->liste_limit * $page ; + $pageprev = $page - 1; + $pagenext = $page + 1; + + $sql = "SELECT f.rowid, f.date, f.ligne, f.fourn_montant, f.cout_vente, f.cout_vente_remise, f.gain, f.fk_facture"; + $sql .= " ,s.nom, s.idp"; + $sql .= " FROM ".MAIN_DB_PREFIX."telephonie_facture as f"; + $sql .= " , ".MAIN_DB_PREFIX."societe as s"; + $sql .= " , ".MAIN_DB_PREFIX."telephonie_societe_ligne as l"; + + $sql .= " WHERE s.idp = l.fk_soc_facture AND l.rowid = f.fk_ligne"; + $sql .= " AND s.idp = ".$soc->id; + $sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit+1, $offset); + + $result = $db->query($sql); + if ($result) + { + $num = $db->num_rows(); + $i = 0; + + print ''; + print ''; + print ''; + print ''; + print "\n"; + + $var=True; + + while ($i < min($num,$conf->liste_limit)) + { + $obj = $db->fetch_object(); + $var=!$var; + + print ""; + + print '\n"; + print '\n"; + print '\n"; + print '\n"; + + print '\n"; + print '\n"; + print "\n"; + $i++; + } + print "
LigneDateMontant HTCoût fournisseur HT'; + print 'GainFacture
'.dolibarr_print_phone($obj->ligne)."'.$obj->date."'.sprintf("%01.4f",$obj->cout_vente_remise)."'.sprintf("%01.4f",$obj->fourn_montant)."'; + if ($obj->gain < 0 && $obj->cout_vente_remise) + { + print ''; + print sprintf("%01.4f",$obj->gain); + print ""; + } + else + { + print sprintf("%01.4f",$obj->gain); + } + print "'.$obj->fk_facture."
"; + $db->free(); + } + else + { + print $db->error() . ' ' . $sql; + } + + + } + } +} +else +{ + print "Error"; +} + + +print ''; + +/* ************************************************************************** */ +/* */ +/* Barre d'action */ +/* */ +/* ************************************************************************** */ + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?> diff --git a/htdocs/telephonie/client/tarifs.php b/htdocs/telephonie/client/tarifs.php new file mode 100644 index 00000000000..648ea0dbe9f --- /dev/null +++ b/htdocs/telephonie/client/tarifs.php @@ -0,0 +1,310 @@ + + * + * 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"); + +$message_erreur = ''; + + +if ($_POST["action"] == 'addtarif') +{ + $saisieok = 1; + + if (strlen(trim($_POST["temporel"])) == 0 OR strlen(trim($_POST["fixe"])) == 0) + { + $saisieok = 0; + } + else + { + $temporel = ereg_replace(",",".",trim($_POST["temporel"])); + $fixe = ereg_replace(",",".",trim($_POST["fixe"])); + } + + if(! is_numeric($temporel)) + { + $saisieok = 0; + } + + if(! is_numeric($fixe)) + { + $saisieok = 0; + } + + if ($temporel < 0 OR $fixe < 0) + { + $saisieok = 0; + } + + if ($saisieok) + { + + $sql = "REPLACE INTO ".MAIN_DB_PREFIX."telephonie_tarif_client"; + $sql .= " (fk_tarif, fk_client, temporel, fixe, fk_user) VALUES "; + $sql .= " (".$_POST["tarifid"].",".$_GET["id"].",'".$temporel."','".$fixe."',".$user->id.")"; + + if ( $db->query($sql) ) + { + Header("Location: tarifs.php?id=".$_GET["id"]); + } + else + { + print $db->error(); + } + } + else + { + $message_erreur = " Saisie invalide"; + } +} + + +/* +if ($_GET["special"] == 'done') +{ + + $sql = "SELECT DISTINCT(fk_tarif), fixe, temporel FROM llx_telephonie_prefix as p, llx_telephonie_tarif_vente as v where p.prefix=v.prefix and fixe= 0.14; "; + + if ( $db->query( $sql) ) + { + $tt = array(); + + $num = $db->num_rows(); + if ( $num > 0 ) + { + $i = 0; + + while ($i < $num) + { + $row = $db->fetch_row(); + + $tt[$row[0]] = $row[2]; + + $i++; + } + } + + $db->free(); + + foreach($tt as $key=>$value) + { + $sql = "REPLACE INTO ".MAIN_DB_PREFIX."telephonie_tarif_client"; + $sql .= " (fk_tarif, fk_client, temporel, fixe, fk_user) VALUES "; + $sql .= " (".$key.",".$_GET["id"].",'".$value."','0.07',".$user->id.")"; + } + + } +} +*/ + +if ($_GET["action"] == 'delete') +{ + + if (strlen(trim($_GET["tid"])) > 0) + { + $sql = "DELETE FROM ".MAIN_DB_PREFIX."telephonie_tarif_client"; + $sql .= " WHERE rowid = ".$_GET["tid"]; + + if ( $db->query($sql) ) + { + Header("Location: tarifs.php?id=".$_GET["id"]); + } + else + { + print $db->error(); + } + } +} + +llxHeader("","Téléphonie - Fiche Tarif client"); + +if ($cancel == $langs->trans("Cancel")) +{ + $action = ''; +} + +/* + * + * + */ + + +if ($_GET["id"]) +{ + $soc = new Societe($db); + $result = $soc->fetch($_GET["id"]); + + if ( $result == 1 ) + { + if ($_GET["action"] <> 'edit' && $_GET["action"] <> 're-edit') + { + $h=0; + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/fiche.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Lignes"); + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/factures.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Factures"); + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/ca.php?id=".$soc->id; + $head[$h][1] = $langs->trans("CA"); + $h++; + + $head[$h][0] = DOL_URL_ROOT."/telephonie/client/tarifs.php?id=".$soc->id; + $head[$h][1] = $langs->trans("Tarifs"); + $hselected = $h; + $h++; + + dolibarr_fiche_head($head, $hselected, 'Client : '.$soc->nom); + + print ''; + print ''; + + print ""; + + print ''; + print ''; + + print ''; + + print '
'.$langs->trans('Name').''.$soc->nom.''.$langs->trans('Prefix').''.$soc->prefix_comm.'
".$langs->trans('Address')."".nl2br($soc->adresse)."
".$soc->cp." ".$soc->ville." ".$soc->pays."
'.$langs->trans('Phone').''.dolibarr_print_phone($soc->tel).''.$langs->trans('Fax').''.dolibarr_print_phone($soc->fax).'
'.img_edit() ." "; + print $langs->trans('RIB').''; + print $soc->display_rib(); + print '

'; + + print ''; + print ''; + + print '
'; + + print ''; + print "\n"; + + if($message_erreur) + { + print ''; + } + print ''; + + print ''; + print ''; + print ''; + print ''; + + /* Tarifs */ + + $sql = "SELECT t.rowid , t.libelle, tc.temporel, tc.fixe, u.code, tc.rowid, u.code"; + $sql .= " FROM ".MAIN_DB_PREFIX."telephonie_tarif as t"; + $sql .= "," . MAIN_DB_PREFIX."telephonie_tarif_client as tc"; + $sql .= "," . MAIN_DB_PREFIX."societe as s"; + $sql .= "," . MAIN_DB_PREFIX."user as u"; + + $sql .= " WHERE t.rowid = tc.fk_tarif AND tc.fk_client = s.idp"; + $sql .= " AND u.rowid = tc.fk_user"; + $sql .= " AND s.idp = ".$soc->id; + $sql .= " ORDER BY t.libelle ASC"; + + if ( $db->query( $sql) ) + { + $num = $db->num_rows(); + if ( $num > 0 ) + { + $i = 0; + + $ligne = new LigneTel($db); + + while ($i < $num) + { + $obj = $db->fetch_object($i); + $var=!$var; + + print "\n"; + + print '\n"; + print '\n"; + print '\n"; + + print '\n"; + print ''; + + $i++; + } + } + $db->free(); + + } + else + { + print $sql; + } + + print "
Tarif (coût en euros par minutes)'; + print 'TemporelFixe'; + print '  
'.$message_erreur.'
'; + + + print ' 
"; + + print $obj->libelle."'.$obj->temporel."'.$obj->fixe."'; + print img_delete()."'.$obj->code."
"; + } + } +} +else +{ + print "Error"; +} + + +print ''; + +/* ************************************************************************** */ +/* */ +/* Barre d'action */ +/* */ +/* ************************************************************************** */ + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?>