Fix credit-transfer vs direct debit
This commit is contained in:
parent
c6c12e7d7a
commit
e8016a5e7e
@ -78,13 +78,13 @@ print '<tr class="liste_titre"><th colspan="2">'.$langs->trans("Statistics").'</
|
|||||||
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToPayByBankTransfer").'</td>';
|
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToPayByBankTransfer").'</td>';
|
||||||
print '<td class="right">';
|
print '<td class="right">';
|
||||||
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0&type=bank-transfer">';
|
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0&type=bank-transfer">';
|
||||||
print $bprev->NbFactureAPrelever();
|
print $bprev->nbOfInvoiceToPay('credit-transfer');
|
||||||
print '</a>';
|
print '</a>';
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
|
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
|
||||||
print '<td class="right">';
|
print '<td class="right">';
|
||||||
print price($bprev->SommeAPrelever(), '', '', 1, -1, -1, 'auto');
|
print price($bprev->SommeAPrelever('credit-transfer'), '', '', 1, -1, -1, 'auto');
|
||||||
print '</td></tr></table></div><br>';
|
print '</td></tr></table></div><br>';
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -687,17 +687,21 @@ class BonPrelevement extends CommonObject
|
|||||||
/**
|
/**
|
||||||
* Returns amount of withdrawal
|
* Returns amount of withdrawal
|
||||||
*
|
*
|
||||||
* @return double Total amount
|
* @param string $mode 'direct-debit' or 'credit-transfer'
|
||||||
|
* @return double <O if KO, Total amount
|
||||||
*/
|
*/
|
||||||
public function SommeAPrelever()
|
public function SommeAPrelever($mode = 'direct-debit')
|
||||||
{
|
{
|
||||||
// phpcs:enable
|
// phpcs:enable
|
||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
$sql = "SELECT sum(pfd.amount) as nb";
|
$sql = "SELECT sum(pfd.amount) as nb";
|
||||||
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,";
|
if ($mode != 'credit-transfer') {
|
||||||
|
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f,";
|
||||||
|
} else {
|
||||||
|
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f,";
|
||||||
|
}
|
||||||
$sql .= " ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
|
$sql .= " ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
|
||||||
//$sql.= " ,".MAIN_DB_PREFIX."c_paiement as cp";
|
|
||||||
$sql .= " WHERE f.fk_statut = 1";
|
$sql .= " WHERE f.fk_statut = 1";
|
||||||
$sql .= " AND f.entity IN (".getEntity('invoice').")";
|
$sql .= " AND f.entity IN (".getEntity('invoice').")";
|
||||||
$sql .= " AND f.rowid = pfd.fk_facture";
|
$sql .= " AND f.rowid = pfd.fk_facture";
|
||||||
@ -719,32 +723,51 @@ class BonPrelevement extends CommonObject
|
|||||||
$error = 1;
|
$error = 1;
|
||||||
dol_syslog(get_class($this)."::SommeAPrelever Erreur -1");
|
dol_syslog(get_class($this)."::SommeAPrelever Erreur -1");
|
||||||
dol_syslog($this->db->error());
|
dol_syslog($this->db->error());
|
||||||
|
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get number of invoices waiting for payment
|
||||||
|
*
|
||||||
|
* @param string $mode 'direct-debit' or 'credit-transfer'
|
||||||
|
* @return int <O if KO, number of invoices if OK
|
||||||
|
*/
|
||||||
|
public function nbOfInvoiceToPay($mode = 'direct-debit')
|
||||||
|
{
|
||||||
|
return $this->NbFactureAPrelever($mode);
|
||||||
|
}
|
||||||
|
|
||||||
// phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
|
// phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
|
||||||
/**
|
/**
|
||||||
* Get number of invoices to withdrawal
|
* Get number of invoices to withdrawal
|
||||||
* TODO delete params banque and agence when not necesary
|
|
||||||
*
|
*
|
||||||
* @param int $banque dolibarr mysoc bank
|
* @param string $mode 'direct-debit' or 'credit-transfer'
|
||||||
* @param int $agence dolibarr mysoc agence
|
|
||||||
* @return int <O if KO, number of invoices if OK
|
* @return int <O if KO, number of invoices if OK
|
||||||
*/
|
*/
|
||||||
public function NbFactureAPrelever($banque = 0, $agence = 0)
|
public function NbFactureAPrelever($mode = 'direct-debit')
|
||||||
{
|
{
|
||||||
// phpcs:enable
|
// phpcs:enable
|
||||||
global $conf;
|
global $conf;
|
||||||
|
|
||||||
$sql = "SELECT count(f.rowid) as nb";
|
$sql = "SELECT count(f.rowid) as nb";
|
||||||
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
|
if ($mode == 'credit-transfer') {
|
||||||
|
$sql .= " FROM ".MAIN_DB_PREFIX."facture_fourn as f";
|
||||||
|
} else {
|
||||||
|
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
|
||||||
|
}
|
||||||
$sql .= ", ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
|
$sql .= ", ".MAIN_DB_PREFIX."prelevement_facture_demande as pfd";
|
||||||
$sql .= " WHERE f.entity IN (".getEntity('invoice').")";
|
$sql .= " WHERE f.entity IN (".getEntity('invoice').")";
|
||||||
if (empty($conf->global->WITHDRAWAL_ALLOW_ANY_INVOICE_STATUS))
|
if (empty($conf->global->WITHDRAWAL_ALLOW_ANY_INVOICE_STATUS))
|
||||||
{
|
{
|
||||||
$sql .= " AND f.fk_statut = ".Facture::STATUS_VALIDATED;
|
$sql .= " AND f.fk_statut = ".Facture::STATUS_VALIDATED;
|
||||||
}
|
}
|
||||||
$sql .= " AND f.rowid = pfd.fk_facture";
|
if ($mode == 'credit-transfer') {
|
||||||
|
$sql .= " AND f.rowid = pfd.fk_facture_fourn";
|
||||||
|
} else {
|
||||||
|
$sql .= " AND f.rowid = pfd.fk_facture";
|
||||||
|
}
|
||||||
$sql .= " AND pfd.traite = 0";
|
$sql .= " AND pfd.traite = 0";
|
||||||
$sql .= " AND f.total_ttc > 0";
|
$sql .= " AND f.total_ttc > 0";
|
||||||
|
|
||||||
|
|||||||
@ -142,10 +142,8 @@ print load_fiche_titre($title);
|
|||||||
dol_fiche_head();
|
dol_fiche_head();
|
||||||
|
|
||||||
$nb = $bprev->NbFactureAPrelever();
|
$nb = $bprev->NbFactureAPrelever();
|
||||||
$nb1 = $bprev->NbFactureAPrelever(1);
|
|
||||||
$nb11 = $bprev->NbFactureAPrelever(1, 1);
|
|
||||||
$pricetowithdraw = $bprev->SommeAPrelever();
|
$pricetowithdraw = $bprev->SommeAPrelever();
|
||||||
if ($nb < 0 || $nb1 < 0 || $nb11 < 0)
|
if ($nb < 0)
|
||||||
{
|
{
|
||||||
dol_print_error($bprev->error);
|
dol_print_error($bprev->error);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -78,13 +78,13 @@ print '<tr class="liste_titre"><th colspan="2">'.$langs->trans("Statistics").'</
|
|||||||
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToWithdraw").'</td>';
|
print '<tr class="oddeven"><td>'.$langs->trans("NbOfInvoiceToWithdraw").'</td>';
|
||||||
print '<td class="right">';
|
print '<td class="right">';
|
||||||
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0">';
|
print '<a href="'.DOL_URL_ROOT.'/compta/prelevement/demandes.php?status=0">';
|
||||||
print $bprev->NbFactureAPrelever();
|
print $bprev->nbOfInvoiceToPay('direct-debit');
|
||||||
print '</a>';
|
print '</a>';
|
||||||
print '</td></tr>';
|
print '</td></tr>';
|
||||||
|
|
||||||
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
|
print '<tr class="oddeven"><td>'.$langs->trans("AmountToWithdraw").'</td>';
|
||||||
print '<td class="right">';
|
print '<td class="right">';
|
||||||
print price($bprev->SommeAPrelever(), '', '', 1, -1, -1, 'auto');
|
print price($bprev->SommeAPrelever('direct-debit'), '', '', 1, -1, -1, 'auto');
|
||||||
print '</td></tr></table></div><br>';
|
print '</td></tr></table></div><br>';
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user