30require
'../../main.inc.php';
31require_once DOL_DOCUMENT_ROOT.
'/compta/prelevement/class/bonprelevement.class.php';
32require_once DOL_DOCUMENT_ROOT.
'/fourn/class/fournisseur.facture.class.php';
33require_once DOL_DOCUMENT_ROOT.
'/societe/class/societe.class.php';
34require_once DOL_DOCUMENT_ROOT.
'/core/lib/prelevement.lib.php';
35require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
36require_once DOL_DOCUMENT_ROOT.
'/salaries/class/salary.class.php';
39$langs->loadLangs(array(
'banks',
'categories',
'withdrawals'));
42$socid =
GETPOST(
'socid',
'int');
44 $socid = $user->socid;
48$usercancreate = $user->rights->paymentbybanktransfer->create;
62llxHeader(
'', $langs->trans(
"SuppliersStandingOrdersArea"));
65 $langs->load(
"errors");
66 setEventMessages($langs->trans(
"ErrorModuleSetupNotComplete", $langs->transnoentitiesnoconv(
"PaymentByBankTransfer")),
null,
'errors');
69$thirdpartystatic =
new Societe($db);
77 $newcardbutton .=
dolGetButtonTitle($langs->trans(
'NewPaymentByBankTransfer'),
'',
'fa fa-plus-circle', DOL_URL_ROOT.
'/compta/prelevement/create.php?type=bank-transfer');
80print
load_fiche_titre($langs->trans(
"SuppliersStandingOrdersArea"), $newcardbutton);
83print
'<div class="fichecenter"><div class="fichethirdleft">';
86print
'<div class="div-table-responsive-no-min">';
87print
'<table class="noborder centpercent">';
88print
'<tr class="liste_titre"><th colspan="2">'.$langs->trans(
"Statistics").
'</th></tr>';
92if (isModEnabled(
'supplier_invoice')) {
93 print
'<tr class="oddeven"><td>'.$langs->trans(
"NbOfInvoiceToPayByBankTransfer").
'</td>';
94 print
'<td class="right">';
95 $amounttoshow = $bprev->SommeAPrelever(
'bank-transfer');
96 print
'<a class="badge badge-info" href="'.DOL_URL_ROOT.
'/compta/prelevement/demandes.php?status=0&type=bank-transfer" title="'.
price($amounttoshow).
'">';
97 print $bprev->nbOfInvoiceToPay(
'bank-transfer');
100 $totaltoshow += $amounttoshow;
103if (isModEnabled(
'salaries')) {
104 print
'<tr class="oddeven"><td>'.$langs->trans(
"NbOfInvoiceToPayByBankTransferForSalaries").
'</td>';
105 print
'<td class="right">';
106 $amounttoshow = $bprev->SommeAPrelever(
'bank-transfer',
'salary');
107 print
'<a class="badge badge-info" href="'.DOL_URL_ROOT.
'/compta/prelevement/demandes.php?status=0&type=bank-transfer&sourcetype=salary" title="'.
price($amounttoshow).
'">';
108 print $bprev->nbOfInvoiceToPay(
'bank-transfer',
'salary');
111 $totaltoshow += $amounttoshow;
114print
'<tr class="oddeven"><td>'.$langs->trans(
"Total").
'</td>';
115print
'<td class="right"><span class="amount nowraponall">';
116print
price($totaltoshow,
'',
'', 1, -1, -1,
'auto');
117print
'</span></td></tr></table></div><br>';
123if (isModEnabled(
'supplier_invoice')) {
124 $sql =
"SELECT f.ref, f.rowid, f.total_ttc, f.fk_statut, f.paye, f.type, f.datef, f.date_lim_reglement,";
125 $sql .=
" pfd.date_demande, pfd.amount,";
126 $sql .=
" s.nom as name, s.email, s.rowid as socid, s.tva_intra, s.siren as idprof1, s.siret as idprof2, s.ape as idprof3, s.idprof4, s.idprof5, s.idprof6";
127 $sql .=
" FROM ".MAIN_DB_PREFIX.
"facture_fourn as f,";
128 $sql .=
" ".MAIN_DB_PREFIX.
"societe as s,";
129 $sql .=
" ".MAIN_DB_PREFIX.
"prelevement_demande as pfd";
130 $sql .=
" WHERE s.rowid = f.fk_soc";
131 $sql .=
" AND f.entity IN (".getEntity(
'supplier_invoice').
")";
132 $sql .=
" AND f.total_ttc > 0";
134 $sql .=
" AND f.fk_statut = ".FactureFournisseur::STATUS_VALIDATED;
136 $sql .=
" AND pfd.traite = 0";
137 $sql .=
" AND pfd.ext_payment_id IS NULL";
138 $sql .=
" AND pfd.fk_facture_fourn = f.rowid";
140 $sql .=
" AND f.fk_soc = ".((int) $socid);
143 $resql = $db->query($sql);
146 $num = $db->num_rows($resql);
149 print
'<div class="div-table-responsive-no-min">';
150 print
'<table class="noborder centpercent">';
151 print
'<tr class="liste_titre">';
152 print
'<th colspan="5">'.$langs->trans(
"SupplierInvoiceWaitingWithdraw").
' <span class="opacitymedium">('.$num.
')</span></th></tr>';
154 while ($i < $num && $i < 20) {
155 $obj = $db->fetch_object($resql);
157 $invoicestatic->id = $obj->rowid;
158 $invoicestatic->ref = $obj->ref;
159 $invoicestatic->status = $obj->fk_statut;
160 $invoicestatic->statut = $obj->fk_statut;
161 $invoicestatic->paye = $obj->paye;
162 $invoicestatic->type = $obj->type;
163 $invoicestatic->date = $db->jdate($obj->datef);
164 $invoicestatic->date_echeance = $db->jdate($obj->date_lim_reglement);
165 $invoicestatic->total_ttc = $obj->total_ttc;
167 $alreadypayed = $invoicestatic->getSommePaiement();
169 $thirdpartystatic->id = $obj->socid;
170 $thirdpartystatic->name = $obj->name;
171 $thirdpartystatic->email = $obj->email;
172 $thirdpartystatic->tva_intra = $obj->tva_intra;
173 $thirdpartystatic->idprof1 = $obj->idprof1;
174 $thirdpartystatic->idprof2 = $obj->idprof2;
175 $thirdpartystatic->idprof3 = $obj->idprof3;
176 $thirdpartystatic->idprof4 = $obj->idprof4;
177 $thirdpartystatic->idprof5 = $obj->idprof5;
178 $thirdpartystatic->idprof6 = $obj->idprof6;
181 print
'<tr class="oddeven"><td class="nowraponall">';
182 print $invoicestatic->getNomUrl(1,
'withdraw');
185 print
'<td class="tdoverflowmax150">';
186 print $thirdpartystatic->getNomUrl(1,
'supplier');
189 print
'<td class="right">';
190 print
'<span class="amount">'.price($obj->amount).
'</span>';
193 print
'<td class="right">';
197 print
'<td class="right">';
198 print $invoicestatic->getLibStatut(3, $alreadypayed);
204 $titlefortab = $langs->transnoentitiesnoconv(
"BankTransfer");
205 print
'<tr class="oddeven"><td colspan="5"><span class="opacitymedium">'.$langs->trans(
"NoSupplierInvoiceToWithdraw", $titlefortab, $titlefortab).
'</span></td></tr>';
207 print
"</table></div><br>";
213if (isModEnabled(
'salaries')) {
214 $sqlForSalary =
"SELECT * FROM ".MAIN_DB_PREFIX.
"salary as s, ".MAIN_DB_PREFIX.
"prelevement_demande as pd";
215 $sqlForSalary .=
" WHERE s.rowid = pd.fk_salary AND s.paye = 0 AND pd.traite = 0";
216 $sqlForSalary .=
" AND s.entity IN (".getEntity(
'salary').
")";
218 $resql2 = $db->query($sqlForSalary);
220 $numRow = $db->num_rows($resql2);
223 print
'<div class="div-table-responsive-no-min">';
224 print
'<table class="noborder rightpercent">';
225 print
'<tr class="liste_titre">';
226 print
'<th colspan="5">'.$langs->trans(
"SalaryInvoiceWaitingWithdraw").
' <span class="opacitymedium">('.$numRow.
')</span></th></tr>';
229 while ($j < $numRow && $j<10) {
230 $objSalary = $db->fetch_object($resql2);
232 $user->fetch($objSalary->fk_user);
234 $salary->fetch($objSalary->fk_salary);
236 $alreadypayedS = $salary->getSommePaiement();
238 print
'<tr class="oddeven"><td class="nowraponall">';
239 print $salary->getNomUrl(1);
242 print
'<td class="tdoverflowmax150">';
243 print $user->getNomUrl(-1);
246 print
'<td class="right">';
247 print
'<span class="amount">'.price($objSalary->amount).
'</span>';
250 print
'<td class="right" title="'.$langs->trans(
"DateRequest").
'">';
251 print
dol_print_date($db->jdate($objSalary->date_demande),
'day');
254 print
'<td class="right">';
255 print $salary->getLibStatut(3, $alreadypayedS);
261 $titlefortab = $langs->transnoentitiesnoconv(
"BankTransfer");
262 print
'<tr class="oddeven"><td colspan="5"><span class="opacitymedium">'.$langs->trans(
"NoSalaryInvoiceToWithdraw", $titlefortab, $titlefortab).
'</span></td></tr>';
264 print
"</table></div><br>";
271print
'</div><div class="fichetwothirdright">';
278$sql =
"SELECT p.rowid, p.ref, p.amount, p.datec, p.statut";
279$sql .=
" FROM ".MAIN_DB_PREFIX.
"prelevement_bons as p";
280$sql .=
" WHERE p.type = 'bank-transfer'";
281$sql .=
" AND p.entity IN (".getEntity(
'invoice').
")";
282$sql .=
" ORDER BY datec DESC";
283$sql .= $db->plimit($limit);
285$result = $db->query($sql);
287 $num = $db->num_rows($result);
290 print
"\n<!-- debut table -->\n";
291 print
'<div class="div-table-responsive-no-min">';
292 print
'<table class="noborder centpercent">';
293 print
'<tr class="liste_titre">';
294 print
'<th>'.$langs->trans(
"LatestBankTransferReceipts", $limit).
'</th>';
295 print
'<th>'.$langs->trans(
"Date").
'</th>';
296 print
'<th class="right">'.$langs->trans(
"Amount").
'</th>';
297 print
'<th class="right">'.$langs->trans(
"Status").
'</th>';
301 while ($i < min($num, $limit)) {
302 $obj = $db->fetch_object($result);
304 print
'<tr class="oddeven">';
306 print
'<td class="nowraponall">';
307 $bprev->id = $obj->rowid;
308 $bprev->ref = $obj->ref;
309 $bprev->statut = $obj->statut;
310 print $bprev->getNomUrl(1);
312 print
'<td>'.dol_print_date($db->jdate($obj->datec),
"dayhour").
"</td>\n";
313 print
'<td class="right nowraponall"><span class="amount">'.price($obj->amount).
"</span></td>\n";
314 print
'<td class="right"><span class="amount">'.$bprev->getLibStatut(3).
"</span></td>\n";
320 print
'<tr><td colspan="4"><span class="opacitymedium">'.$langs->trans(
"None").
'</span></td></tr>';
323 print
"</table></div><br>";
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage withdrawal receipts.
Class to manage suppliers invoices.
Class to manage salary payments.
Class to manage third parties objects (customers, suppliers, prospects...)
Class to manage Dolibarr users.
load_fiche_titre($titre, $morehtmlright='', $picto='generic', $pictoisfullpath=0, $id='', $morecssontable='', $morehtmlcenter='')
Load a title with picto.
dol_print_error($db='', $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
dolGetButtonTitle($label, $helpText='', $iconClass='fa fa-file', $url='', $id='', $status=1, $params=array())
Function dolGetButtonTitle : this kind of buttons are used in title in list.
price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerounding=-1, $currency_code='')
Function to format a value into an amount for visual output Function used into PDF and HTML pages.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs='', $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.
prelevement_check_config($type='direct-debit')
Check need data to create standigns orders receipt file.
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.