29 require
'../../main.inc.php';
30 require_once DOL_DOCUMENT_ROOT.
'/compta/prelevement/class/bonprelevement.class.php';
31 require_once DOL_DOCUMENT_ROOT.
'/compta/prelevement/class/ligneprelevement.class.php';
32 require_once DOL_DOCUMENT_ROOT.
'/compta/prelevement/class/rejetprelevement.class.php';
33 require_once DOL_DOCUMENT_ROOT.
'/compta/paiement/class/paiement.class.php';
34 require_once DOL_DOCUMENT_ROOT.
'/compta/bank/class/account.class.php';
37 $langs->loadlangs(array(
'banks',
'categories',
'bills',
'withdrawals'));
40 $action =
GETPOST(
'action',
'aZ09');
42 $socid =
GETPOST(
'socid',
'int');
44 $type =
GETPOST(
'type',
'aZ09');
46 $limit =
GETPOST(
'limit',
'int') ?
GETPOST(
'limit',
'int') : $conf->liste_limit;
47 $sortorder =
GETPOST(
'sortorder',
'aZ09comma');
48 $sortfield =
GETPOST(
'sortfield',
'aZ09comma');
50 if (empty($page) || $page < 0 ||
GETPOST(
'button_search',
'alpha') ||
GETPOST(
'button_removefilter',
'alpha')) {
54 $offset = $limit * $page;
55 $pageprev = $page - 1;
56 $pagenext = $page + 1;
58 if ($sortorder ==
"") {
61 if ($sortfield ==
"") {
62 $sortfield =
"pl.fk_soc";
66 if ($type ==
'bank-transfer') {
67 $result =
restrictedArea($user,
'paymentbybanktransfer',
'',
'',
'');
77 if ($action ==
'confirm_rejet') {
78 if (
GETPOST(
"confirm") ==
'yes') {
79 if (
GETPOST(
'remonth',
'int')) {
80 $daterej = mktime(2, 0, 0,
GETPOST(
'remonth',
'int'),
GETPOST(
'reday',
'int'),
GETPOST(
'reyear',
'int'));
83 if (empty($daterej)) {
85 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentitiesnoconv(
"Date")),
null,
'errors');
86 } elseif ($daterej >
dol_now()) {
88 $langs->load(
"error");
89 setEventMessages($langs->transnoentities(
"ErrorDateMustBeBeforeToday"),
null,
'errors');
92 if (
GETPOST(
'motif',
'alpha') == 0) {
94 setEventMessages($langs->trans(
"ErrorFieldRequired", $langs->transnoentities(
"RefusedReason")),
null,
'errors');
100 if ($lipre->fetch($id) == 0) {
103 $rej->create($user, $id,
GETPOST(
'motif',
'alpha'), $daterej, $lipre->bon_rowid,
GETPOST(
'facturer',
'int'));
105 header(
"Location: line.php?id=".urlencode($id).
'&type='.urlencode($type));
112 header(
"Location: line.php?id=".urlencode($id).
'&type='.urlencode($type));
122 $invoicestatic =
new Facture($db);
124 $title = $langs->trans(
"WithdrawalsLine");
125 if ($type ==
'bank-transfer') {
126 $title = $langs->trans(
"CreditTransferLine");
134 $head[$h][0] = DOL_URL_ROOT.
'/compta/prelevement/line.php?id='.$id.
'&type='.$type;
135 $head[$h][1] = $title;
142 if ($lipre->fetch($id) >= 0) {
144 $bon->fetch($lipre->bon_rowid);
148 print
'<table class="border centpercent tableforfield">';
150 print
'<tr><td class="titlefield">'.$langs->trans(
"Ref").
'</td><td>';
151 print $id.
'</td></tr>';
153 print
'<tr><td class="titlefield">'.$langs->trans(
"WithdrawalsReceipts").
'</td><td>';
154 print $bon->getNomUrl(1).
'</td></tr>';
156 print
'<tr><td>'.$langs->trans(
"Date").
'</td><td>'.
dol_print_date($bon->datec,
'day').
'</td></tr>';
158 print
'<tr><td>'.$langs->trans(
"Amount").
'</td><td><span class="amount">'.
price($lipre->amount).
'</span></td></tr>';
160 print
'<tr><td>'.$langs->trans(
"Status").
'</td><td>'.$lipre->LibStatut($lipre->statut, 1).
'</td></tr>';
162 if ($lipre->statut == 3) {
164 $resf = $rej->fetch($lipre->id);
166 print
'<tr><td>'.$langs->trans(
"RefusedReason").
'</td><td>'.$rej->motif.
'</td></tr>';
168 print
'<tr><td>'.$langs->trans(
"RefusedData").
'</td><td>';
169 if ($rej->date_rejet == 0) {
171 print $langs->trans(
"Unknown");
177 print
'<tr><td>'.$langs->trans(
"RefusedInvoicing").
'</td><td>'.$rej->invoicing.
'</td></tr>';
179 print
'<tr><td>'.$resf.
'</td></tr>';
189 if ($action ==
'rejet' && $user->rights->prelevement->bons->credit) {
193 $soc->fetch($lipre->socid);
197 print
'<form name="confirm_rejet" method="post" action="line.php?id='.$id.
'">';
198 print
'<input type="hidden" name="token" value="'.newToken().
'">';
199 print
'<input type="hidden" name="action" value="confirm_rejet">';
200 print
'<input type="hidden" name="type" value="'.$type.
'">';
201 print
'<table class="noborder centpercent">';
203 print
'<tr class="liste_titre">';
204 print
'<td colspan="3">'.$langs->trans(
"WithdrawalRefused").
'</td></tr>';
207 print
'<tr><td class="valid">'.$langs->trans(
"WithdrawalRefusedConfirm").
' '.$soc->name.
' ?</td>';
208 print
'<td colspan="2" class="valid">';
209 print
$form->selectyesno(
"confirm", 1, 0);
213 print
'<tr><td class="fieldrequired valid">'.$langs->trans(
"RefusedData").
'</td>';
214 print
'<td colspan="2" class="valid">';
215 print
$form->selectDate(
'',
'',
'',
'',
'',
"confirm_rejet");
219 print
'<tr><td class="fieldrequired valid">'.$langs->trans(
"RefusedReason").
'</td>';
220 print
'<td class="valid">';
225 print
'<tr><td class="valid">'.$langs->trans(
"RefusedInvoicing").
'</td>';
226 print
'<td class="valid" colspan="2">';
229 print
'</table><br>';
232 print
'<div class="center"><input type="submit" class="button button-save" value='.$langs->trans(
"Confirm").
'></div>';
239 print
'<div class="tabsAction">';
242 if ($bon->statut == BonPrelevement::STATUS_CREDITED) {
243 if ($lipre->statut == 2) {
244 if ($user->rights->prelevement->bons->credit) {
245 print
'<a class="butActionDelete" href="line.php?action=rejet&type='.$type.
'&id='.$lipre->id.
'">'.$langs->trans(
"StandingOrderReject").
'</a>';
247 print
'<a class="butActionRefused classfortooltip" href="#" title="'.$langs->trans(
"NotAllowed").
'">'.$langs->trans(
"StandingOrderReject").
'</a>';
251 print
'<a class="butActionRefused classfortooltip" href="#" title="'.$langs->trans(
"NotPossibleForThisStatusOfWithdrawReceiptORLine").
'">'.$langs->trans(
"StandingOrderReject").
'</a>';
260 $sql =
"SELECT pf.rowid";
261 $sql .=
" ,f.rowid as facid, f.ref as ref, f.total_ttc, f.paye, f.fk_statut";
262 $sql .=
" , s.rowid as socid, s.nom as name";
263 $sql .=
" FROM ".MAIN_DB_PREFIX.
"prelevement_bons as p";
264 $sql .=
" , ".MAIN_DB_PREFIX.
"prelevement_lignes as pl";
265 $sql .=
" , ".MAIN_DB_PREFIX.
"prelevement as pf";
266 if ($type ==
'bank-transfer') {
267 $sql .=
" , ".MAIN_DB_PREFIX.
"facture_fourn as f";
269 $sql .=
" , ".MAIN_DB_PREFIX.
"facture as f";
271 $sql .=
" , ".MAIN_DB_PREFIX.
"societe as s";
272 $sql .=
" WHERE pf.fk_prelevement_lignes = pl.rowid";
273 $sql .=
" AND pl.fk_prelevement_bons = p.rowid";
274 $sql .=
" AND f.fk_soc = s.rowid";
275 if ($type ==
'bank-transfer') {
276 $sql .=
" AND pf.fk_facture_fourn = f.rowid";
278 $sql .=
" AND pf.fk_facture = f.rowid";
280 $sql .=
" AND f.entity IN (".getEntity(
'invoice').
")";
281 $sql .=
" AND pl.rowid = ".((int) $id);
283 $sql .=
" AND s.rowid = ".((int) $socid);
285 $sql .= $db->order($sortfield, $sortorder);
286 $sql .= $db->plimit($conf->liste_limit + 1, $offset);
288 $result = $db->query($sql);
291 $num = $db->num_rows($result);
294 $urladd =
"&id=".urlencode($id);
296 print_barre_liste($langs->trans(
"Bills"), $page,
"factures.php", $urladd, $sortfield, $sortorder,
'', $num, 0,
'');
298 print
"\n<!-- debut table -->\n";
299 print
'<table class="noborder" width="100%" cellpadding="4">';
300 print
'<tr class="liste_titre">';
301 print
'<td>'.$langs->trans(
"Invoice").
'</td><td>'.$langs->trans(
"ThirdParty").
'</td><td class="right">'.$langs->trans(
"Amount").
'</td><td class="right">'.$langs->trans(
"Status").
'</td>';
306 while ($i < min($num, $conf->liste_limit)) {
307 $obj = $db->fetch_object($result);
309 print
'<tr class="oddeven"><td>';
311 print
'<a href="'.DOL_URL_ROOT.
'/compta/facture/card.php?facid='.$obj->facid.
'">';
312 print
img_object($langs->trans(
"ShowBill"),
"bill");
315 print
'<a href="'.DOL_URL_ROOT.
'/compta/facture/card.php?facid='.$obj->facid.
'">'.$obj->ref.
"</a></td>\n";
317 print
'<td><a href="'.DOL_URL_ROOT.
'/comm/card.php?socid='.$obj->socid.
'">';
318 print
img_object($langs->trans(
"ShowCompany"),
"company").
' '.$obj->name.
"</a></td>\n";
320 print
'<td class="right"><span class="amount">'.price($obj->total_ttc).
"</span></td>\n";
322 print
'<td class="right">';
323 $invoicestatic->fetch($obj->facid);
324 print $invoicestatic->getLibStatut(5);
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 invoices.
Class to manage withdrawals.
Class to manage standing orders rejects.
Class to manage third parties objects (customers, suppliers, prospects...)
if($cancel &&! $id) if($action=='add' &&! $cancel) if($action=='delete') if($id) $form
Actions.
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='')
Show tabs of a record.
dol_print_error($db='', $error='', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
img_object($titlealt, $picto, $moreatt='', $pictoisfullpath=false, $srconly=0, $notitle=0)
Show a picto called object_picto (generic function)
dol_get_fiche_end($notab=0)
Return tab footer of a card.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='')
Set event messages in dol_events session object.
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).
dol_now($mode='auto')
Return date for now.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
GETPOSTISSET($paramname)
Return true if we are in a context of submitting the parameter $paramname from a POST of a form.
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.