* Copyright (C) 2004 Éric Seigne * Copyright (C) 2004-2005 Laurent Destailleur * Copyright (C) 2004 Christophe Combelles * * 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$ * */ /** \file htdocs/fourn/facture/paiement.php \ingroup fournisseur,facture \brief Paiements des factures fournisseurs \version $Revision$ */ require("./pre.inc.php"); require("./paiementfourn.class.php"); $facid=isset($_GET["facid"])?$_GET["facid"]:$_POST["facid"]; $action=isset($_GET["action"])?$_GET["action"]:$_POST["action"]; /* * Sécurité accés client */ if ($user->societe_id > 0) { $action = ''; $socidp = $user->societe_id; } /* * */ if ($action == 'add') { $paiementfourn = new PaiementFourn($db); $paiementfourn->facid = $facid; $paiementfourn->facnumber = $_POST['facnumber']; $paiementfourn->datepaye = $db->idate(mktime(12, 0 , 0, $_POST["remonth"], $_POST["reday"], $_POST["reyear"])); $paiementfourn->amount = $_POST['amount']; $paiementfourn->accountid = $_POST['accountid']; $paiementfourn->societe = $_POST['societe']; $paiementfourn->author = $_POST['author']; $paiementfourn->paiementid = $_POST['paiementid']; $paiementfourn->num_paiement = $_POST['num_paiement']; $paiementfourn->note = $_POST['note']; if ( $paiementfourn->create($user) ) { Header("Location: fiche.php?facid=$facid"); } $action = ''; } /* * * */ llxHeader(); if ($action == 'create') { $sql = "SELECT s.nom,s.idp, f.amount, f.total_ttc, f.facnumber"; $sql .= " FROM ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."facture_fourn as f WHERE f.fk_soc = s.idp"; $sql .= " AND f.rowid = $facid"; $result = $db->query($sql); if ($result) { $num = $db->num_rows(); if ($num) { $obj = $db->fetch_object($result); $total = $obj->total_ttc; print_titre("Émettre un paiement"); print '
'; print ''; print ''; print ""; print ''; print ""; print ""; $sql = "SELECT sum(p.amount) FROM ".MAIN_DB_PREFIX."paiementfourn as p WHERE p.fk_facture_fourn = $facid;"; $result = $db->query($sql); if ($result) { $sumpayed = $db->result(0,0); $db->free(); } print ''; print ""; print ""; print "facnumber\">"; print "idp\">"; print "nom\">"; $html = new Form($db); print ""; print ''; print "\n"; print "\n"; print "'; print "\n"; print "\n"; print "\n"; print "\n"; print ''; print "\n"; print "
".$langs->trans("Bill")."
'.$langs->trans("Ref").' :'; print ''.$obj->facnumber.'
".$langs->trans("Company")." :$obj->nom
".$langs->trans("Amount")." :".price($obj->total_ttc)." euros TTC
Déjà payé :'.price($sumpayed).' euros TTC
Paiement
".$langs->trans("Date")." :"; $html->select_date(); print "'.$langs->trans("Comments").' :
".$langs->trans("Type")." :
"; print "
"; print '
Numéro :
N° du chèque ou du virement
Compte à débiter :"; print "
Reste à payer :".price($total - $sumpayed)." euros TTC
".$langs->trans("Amount")." :
\n"; } } } if ($action == '') { if ($page == -1) { $page = 0 ; } $limit = $conf->liste_limit; $offset = $limit * $page ; $sql = "SELECT ".$db->pdate("p.datep")." as dp, p.amount, f.amount as fa_amount, f.facnumber, s.nom"; $sql .=", f.rowid as facid, c.libelle as paiement_type, p.num_paiement"; $sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p, ".MAIN_DB_PREFIX."facture_fourn as f, ".MAIN_DB_PREFIX."c_paiement as c, ".MAIN_DB_PREFIX."societe as s"; $sql .= " WHERE p.fk_facture_fourn = f.rowid AND p.fk_paiement = c.id AND s.idp = f.fk_soc"; if ($socidp) { $sql .= " AND f.fk_soc = $socidp"; } $sql .= " ORDER BY datep DESC"; $sql .= $db->plimit($limit + 1 ,$offset); $result = $db->query($sql); if ($result) { $num = $db->num_rows(); $i = 0; $var=True; print_barre_liste("Paiements", $page, "paiement.php","&socidp=$socidp",$sortfield,$sortorder,'',$num); print ''; print ''; print ''; print ''; print ''; print ''; print ''; print ""; while ($i < min($num,$limit)) { $objp = $db->fetch_object($result); $var=!$var; print ""; print "\n"; print ''; print "\n"; print "\n"; print ''; print ""; $i++; } print "
'.$langs->trans("Bill").''.$langs->trans("Company").''.$langs->trans("Date").''.$langs->trans("Type").''.$langs->trans("Amount").' 
facid\">$objp->facnumber'.$objp->nom.'".strftime("%d %B %Y",$objp->dp)."$objp->paiement_type $objp->num_paiement'.price($objp->amount).' 
"; } else { dolibarr_print_error($db); } } $db->close(); llxFooter("Dernière modification $Date$ révision $Revision$"); ?>