Skip to content

Commit

Permalink
FIX : when we add a payment on an invoice which already has payments …
Browse files Browse the repository at this point in the history
…with credit note or deposit amount, and then we get an excess received, discount amount must be $total_paiements + $total_creditnote_and_deposit - $object->total_ttc;
  • Loading branch information
atm-gauthier committed Jan 23, 2019
1 parent a4017fa commit 84e1f92
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions htdocs/compta/facture/card.php
Expand Up @@ -725,20 +725,31 @@
{
// If we're on a standard invoice, we have to get excess received to create a discount in TTC without VAT

// Total payments
$sql = 'SELECT SUM(pf.amount) as total_paiements';
$sql.= ' FROM '.MAIN_DB_PREFIX.'paiement_facture as pf, '.MAIN_DB_PREFIX.'paiement as p';
$sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as c ON p.fk_paiement = c.id';
$sql.= ' WHERE pf.fk_facture = '.$object->id;
$sql.= ' AND pf.fk_paiement = p.rowid';
$sql.= ' AND p.entity IN (' . getEntity('facture').')';

$resql = $db->query($sql);
if (! $resql) dol_print_error($db);

$res = $db->fetch_object($resql);
$total_paiements = $res->total_paiements;

$discount->amount_ht = $discount->amount_ttc = $total_paiements - $object->total_ttc;
// Total credit note and deposit
$total_creditnote_and_deposit = 0;
$sql = "SELECT re.rowid, re.amount_ht, re.amount_tva, re.amount_ttc,";
$sql .= " re.description, re.fk_facture_source";
$sql .= " FROM " . MAIN_DB_PREFIX . "societe_remise_except as re";
$sql .= " WHERE fk_facture = " . $object->id;
$resql = $db->query($sql);
if (!empty($resql)) {
while ($obj = $db->fetch_object($resql)) $total_creditnote_and_deposit += $obj->amount_ttc;
} else dol_print_error($db);

$discount->amount_ht = $discount->amount_ttc = $total_paiements + $total_creditnote_and_deposit - $object->total_ttc;
$discount->amount_tva = 0;
$discount->tva_tx = 0;

Expand Down

0 comments on commit 84e1f92

Please sign in to comment.