diff --git a/htdocs/takepos/receipt.php b/htdocs/takepos/receipt.php index 5c58ba2e1ec..49eb18e93dd 100644 --- a/htdocs/takepos/receipt.php +++ b/htdocs/takepos/receipt.php @@ -270,42 +270,57 @@ if (isModEnabled('multicurrency') && $_SESSION["takeposcustomercurrency"] != "" echo ''; } -if ($conf->global->TAKEPOS_PRINT_PAYMENT_METHOD) { - $sql = "SELECT p.pos_change as pos_change, p.datep as date, p.fk_paiement, p.num_paiement as num, pf.amount as amount, pf.multicurrency_amount,"; - $sql .= " cp.code"; - $sql .= " FROM ".MAIN_DB_PREFIX."paiement_facture as pf, ".MAIN_DB_PREFIX."paiement as p"; - $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as cp ON p.fk_paiement = cp.id"; - $sql .= " WHERE pf.fk_paiement = p.rowid AND pf.fk_facture = ".((int) $facid); - $sql .= " ORDER BY p.datep"; - $resql = $db->query($sql); - if ($resql) { - $num = $db->num_rows($resql); - $i = 0; - while ($i < $num) { - $row = $db->fetch_object($resql); - echo ''; - echo ''; - echo $langs->transnoentitiesnoconv("PaymentTypeShort".$row->code); - echo ''; - echo ''; - $amount_payment = (isModEnabled('multicurrency') && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount; - if ($row->code == "LIQ") { - $amount_payment = $amount_payment + $row->pos_change; // Show amount with excess received if is cash payment - } - echo price($amount_payment, 1, '', 1, - 1, - 1, $conf->currency); - echo ''; - echo ''; - if ($row->code == "LIQ" && $row->pos_change > 0) { // Print change only in cash payments +if (getDolGlobalString('TAKEPOS_PRINT_PAYMENT_METHOD')) { + if (empty($facid)) { + // Case of specimen + echo ''; + echo ''; + echo $langs->transnoentitiesnoconv("PaymentTypeShortLIQ"); + echo ''; + echo ''; + $amount_payment = 0; + echo price($amount_payment, 1, '', 1, - 1, - 1, $conf->currency); + echo ''; + echo ''; + } else { + $sql = "SELECT p.pos_change as pos_change, p.datep as date, p.fk_paiement, p.num_paiement as num, pf.amount as amount, pf.multicurrency_amount,"; + $sql .= " cp.code"; + $sql .= " FROM ".MAIN_DB_PREFIX."paiement_facture as pf, ".MAIN_DB_PREFIX."paiement as p"; + $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as cp ON p.fk_paiement = cp.id"; + $sql .= " WHERE pf.fk_paiement = p.rowid AND pf.fk_facture = ".((int) $facid); + $sql .= " ORDER BY p.datep"; + + $resql = $db->query($sql); + if ($resql) { + $num = $db->num_rows($resql); + + $i = 0; + while ($i < $num) { + $row = $db->fetch_object($resql); echo ''; echo ''; - echo $langs->trans("Change"); + echo $langs->transnoentitiesnoconv("PaymentTypeShort".$row->code); echo ''; echo ''; - echo price($row->pos_change, 1, '', 1, - 1, - 1, $conf->currency); + $amount_payment = (isModEnabled('multicurrency') && $object->multicurrency_tx != 1) ? $row->multicurrency_amount : $row->amount; + if ($row->code == "LIQ") { + $amount_payment = $amount_payment + $row->pos_change; // Show amount with excess received if is cash payment + } + echo price($amount_payment, 1, '', 1, - 1, - 1, $conf->currency); echo ''; echo ''; + if ($row->code == "LIQ" && $row->pos_change > 0) { // Print change only in cash payments + echo ''; + echo ''; + echo $langs->trans("Change"); + echo ''; + echo ''; + echo price($row->pos_change, 1, '', 1, - 1, - 1, $conf->currency); + echo ''; + echo ''; + } + $i++; } - $i++; } } }