New: Can edit payment note
This commit is contained in:
parent
3da46d4961
commit
8a852ca4d2
@ -5,6 +5,7 @@ $Id$
|
|||||||
|
|
||||||
***** ChangeLog for 3.1 compared to 3.0 *****
|
***** ChangeLog for 3.1 compared to 3.0 *****
|
||||||
For users:
|
For users:
|
||||||
|
- New: Can edit note of payment.
|
||||||
- New: Login is not mandatory in member module.
|
- New: Login is not mandatory in member module.
|
||||||
- New: Reduce a step into supplier order workflow to save time (if user
|
- New: Reduce a step into supplier order workflow to save time (if user
|
||||||
has permission to approve, order is approved when order is validated).
|
has permission to approve, order is approved when order is validated).
|
||||||
|
|||||||
@ -24,12 +24,13 @@
|
|||||||
* \brief File of class to manage payments of customers invoices
|
* \brief File of class to manage payments of customers invoices
|
||||||
* \version $Id$
|
* \version $Id$
|
||||||
*/
|
*/
|
||||||
|
require_once(DOL_DOCUMENT_ROOT ."/core/class/commonobject.class.php");
|
||||||
|
|
||||||
|
|
||||||
/** \class Paiement
|
/** \class Paiement
|
||||||
* \brief Classe permettant la gestion des paiements des factures clients
|
* \brief Classe permettant la gestion des paiements des factures clients
|
||||||
*/
|
*/
|
||||||
class Paiement
|
class Paiement extends CommonObject
|
||||||
{
|
{
|
||||||
var $db;
|
var $db;
|
||||||
var $error;
|
var $error;
|
||||||
@ -65,9 +66,9 @@ class Paiement
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Recupere l'objet paiement
|
* Load payment from database
|
||||||
* \param id id du paiement a recuperer
|
* @param id id of payment to get
|
||||||
* \return int <0 si ko, 0 si non trouve, >0 si ok
|
* @return int <0 if KO, 0 if not found, >0 if OK
|
||||||
*/
|
*/
|
||||||
function fetch($id)
|
function fetch($id)
|
||||||
{
|
{
|
||||||
@ -216,10 +217,10 @@ class Paiement
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Supprime un paiement ainsi que les lignes qu'il a genere dans comptes
|
* Supprime un paiement ainsi que les lignes qu'il a genere dans comptes
|
||||||
* Si le paiement porte sur un ecriture compte qui est rapprochee, on refuse
|
* Si le paiement porte sur un ecriture compte qui est rapprochee, on refuse
|
||||||
* Si le paiement porte sur au moins une facture a "payee", on refuse
|
* Si le paiement porte sur au moins une facture a "payee", on refuse
|
||||||
* \return int <0 si ko, >0 si ok
|
* @return int <0 si ko, >0 si ok
|
||||||
*/
|
*/
|
||||||
function delete()
|
function delete()
|
||||||
{
|
{
|
||||||
|
|||||||
@ -38,8 +38,8 @@ $langs->load('banks');
|
|||||||
$langs->load('companies');
|
$langs->load('companies');
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
$id=isset($_GET["id"])?$_GET["id"]:$_POST["id"];
|
$id=GETPOST("id");
|
||||||
$action=isset($_GET["action"])?$_GET["action"]:$_POST["action"];
|
$action=GETPOST("action");
|
||||||
if ($user->societe_id) $socid=$user->societe_id;
|
if ($user->societe_id) $socid=$user->societe_id;
|
||||||
// TODO ajouter regle pour restreindre acces paiement
|
// TODO ajouter regle pour restreindre acces paiement
|
||||||
//$result = restrictedArea($user, 'facture', $id,'');
|
//$result = restrictedArea($user, 'facture', $id,'');
|
||||||
@ -51,12 +51,31 @@ $mesg='';
|
|||||||
* Actions
|
* Actions
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if ($_REQUEST['action'] == 'confirm_delete' && $_REQUEST['confirm'] == 'yes' && $user->rights->facture->paiement)
|
if ($action == 'setnote' && $user->rights->facture->paiement)
|
||||||
|
{
|
||||||
|
$db->begin();
|
||||||
|
|
||||||
|
$paiement = new Paiement($db);
|
||||||
|
$paiement->fetch($id);
|
||||||
|
$result = $paiement->update_note(GETPOST('note'));
|
||||||
|
if ($result > 0)
|
||||||
|
{
|
||||||
|
$db->commit();
|
||||||
|
$action='';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$mesg='<div class="error">'.$paiement->error.'</div>';
|
||||||
|
$db->rollback();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($action == 'confirm_delete' && GETPOST('confirm') == 'yes' && $user->rights->facture->paiement)
|
||||||
{
|
{
|
||||||
$db->begin();
|
$db->begin();
|
||||||
|
|
||||||
$paiement = new Paiement($db);
|
$paiement = new Paiement($db);
|
||||||
$paiement->fetch($_GET['id']);
|
$paiement->fetch($id);
|
||||||
$result = $paiement->delete();
|
$result = $paiement->delete();
|
||||||
if ($result > 0)
|
if ($result > 0)
|
||||||
{
|
{
|
||||||
@ -71,12 +90,12 @@ if ($_REQUEST['action'] == 'confirm_delete' && $_REQUEST['confirm'] == 'yes' &&
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($_REQUEST['action'] == 'confirm_valide' && $_REQUEST['confirm'] == 'yes' && $user->rights->facture->paiement)
|
if ($action == 'confirm_valide' && GETPOST('confirm') == 'yes' && $user->rights->facture->paiement)
|
||||||
{
|
{
|
||||||
$db->begin();
|
$db->begin();
|
||||||
|
|
||||||
$paiement = new Paiement($db);
|
$paiement = new Paiement($db);
|
||||||
$paiement->id = $_GET['id'];
|
$paiement->fetch($id);
|
||||||
if ($paiement->valide() > 0)
|
if ($paiement->valide() > 0)
|
||||||
{
|
{
|
||||||
$db->commit();
|
$db->commit();
|
||||||
@ -117,10 +136,10 @@ llxHeader();
|
|||||||
$thirdpartystatic=new Societe($db);
|
$thirdpartystatic=new Societe($db);
|
||||||
|
|
||||||
$paiement = new Paiement($db);
|
$paiement = new Paiement($db);
|
||||||
$result=$paiement->fetch($_GET['id']);
|
$result=$paiement->fetch($id);
|
||||||
if ($result <= 0)
|
if ($result <= 0)
|
||||||
{
|
{
|
||||||
dol_print_error($db,'Payement '.$_GET['id'].' not found in database');
|
dol_print_error($db,'Payement '.$id.' not found in database');
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -128,12 +147,12 @@ $html = new Form($db);
|
|||||||
|
|
||||||
$h=0;
|
$h=0;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/paiement/fiche.php?id='.$_GET["id"];
|
$head[$h][0] = DOL_URL_ROOT.'/compta/paiement/fiche.php?id='.$id;
|
||||||
$head[$h][1] = $langs->trans("Card");
|
$head[$h][1] = $langs->trans("Card");
|
||||||
$hselected = $h;
|
$hselected = $h;
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/compta/paiement/info.php?id='.$_GET["id"];
|
$head[$h][0] = DOL_URL_ROOT.'/compta/paiement/info.php?id='.$id;
|
||||||
$head[$h][1] = $langs->trans("Info");
|
$head[$h][1] = $langs->trans("Info");
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
@ -143,7 +162,7 @@ dol_fiche_head($head, $hselected, $langs->trans("PaymentCustomerInvoice"), 0, 'p
|
|||||||
/*
|
/*
|
||||||
* Confirmation de la suppression du paiement
|
* Confirmation de la suppression du paiement
|
||||||
*/
|
*/
|
||||||
if ($_GET['action'] == 'delete')
|
if ($action == 'delete')
|
||||||
{
|
{
|
||||||
$ret=$html->form_confirm('fiche.php?id='.$paiement->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2);
|
$ret=$html->form_confirm('fiche.php?id='.$paiement->id, $langs->trans("DeletePayment"), $langs->trans("ConfirmDeletePayment"), 'confirm_delete','',0,2);
|
||||||
if ($ret == 'html') print '<br>';
|
if ($ret == 'html') print '<br>';
|
||||||
@ -152,7 +171,7 @@ if ($_GET['action'] == 'delete')
|
|||||||
/*
|
/*
|
||||||
* Confirmation de la validation du paiement
|
* Confirmation de la validation du paiement
|
||||||
*/
|
*/
|
||||||
if ($_GET['action'] == 'valide')
|
if ($action == 'valide')
|
||||||
{
|
{
|
||||||
$facid = $_GET['facid'];
|
$facid = $_GET['facid'];
|
||||||
$ret=$html->form_confirm('fiche.php?id='.$paiement->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2);
|
$ret=$html->form_confirm('fiche.php?id='.$paiement->id.'&facid='.$facid, $langs->trans("ValidatePayment"), $langs->trans("ConfirmValidatePayment"), 'confirm_valide','',0,2);
|
||||||
@ -186,7 +205,9 @@ print '<tr><td valign="top">'.$langs->trans('Amount').'</td><td colspan="3">'.pr
|
|||||||
|
|
||||||
|
|
||||||
// Note
|
// Note
|
||||||
print '<tr><td valign="top">'.$langs->trans('Note').'</td><td colspan="3">'.nl2br($paiement->note).'</td></tr>';
|
print '<tr><td valign="top">'.$html->editfieldkey("Note",'note',$paiement->note,'id',$paiement->id,$user->rights->facture->paiement).'</td><td colspan="3">';
|
||||||
|
print $html->editfieldval("Note",'note',$paiement->note,'id',$paiement->id,$user->rights->facture->paiement,'text');
|
||||||
|
print '</td></tr>';
|
||||||
|
|
||||||
// Bank account
|
// Bank account
|
||||||
if ($conf->banque->enabled)
|
if ($conf->banque->enabled)
|
||||||
@ -305,18 +326,18 @@ if ($conf->global->BILL_ADD_PAYMENT_VALIDATION)
|
|||||||
{
|
{
|
||||||
if ($user->rights->facture->paiement)
|
if ($user->rights->facture->paiement)
|
||||||
{
|
{
|
||||||
print '<a class="butAction" href="fiche.php?id='.$_GET['id'].'&facid='.$objp->facid.'&action=valide">'.$langs->trans('Valid').'</a>';
|
print '<a class="butAction" href="fiche.php?id='.$id.'&facid='.$objp->facid.'&action=valide">'.$langs->trans('Valid').'</a>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($user->societe_id == 0 && $_GET['action'] == '')
|
if ($user->societe_id == 0 && $action == '')
|
||||||
{
|
{
|
||||||
if ($user->rights->facture->paiement)
|
if ($user->rights->facture->paiement)
|
||||||
{
|
{
|
||||||
if (! $disable_delete)
|
if (! $disable_delete)
|
||||||
{
|
{
|
||||||
print '<a class="butActionDelete" href="fiche.php?id='.$_GET['id'].'&action=delete">'.$langs->trans('Delete').'</a>';
|
print '<a class="butActionDelete" href="fiche.php?id='.$id.'&action=delete">'.$langs->trans('Delete').'</a>';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@ -85,14 +85,14 @@ class Form
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Output val field for an editable field
|
* Output val field for an editable field
|
||||||
* \param text Text of label (not used in this function)
|
* @param text Text of label (not used in this function)
|
||||||
* \param htmlname Name of select field
|
* @param htmlname Name of select field
|
||||||
* \param preselected Preselected value for parameter
|
* @param preselected Preselected value for parameter
|
||||||
* \param paramkey Key of parameter (unique if there is several parameter to show)
|
* @param paramkey Key of parameter (unique if there is several parameter to show)
|
||||||
* \param perm Permission to allow button to edit parameter
|
* @param perm Permission to allow button to edit parameter
|
||||||
* \param typeofdata Type of data (string by default, email, ...)
|
* @param typeofdata Type of data ('string' by default, 'email', 'text', ...)
|
||||||
* \return string HTML edit field
|
* @return string HTML edit field
|
||||||
*/
|
*/
|
||||||
function editfieldval($text,$htmlname,$preselected,$paramkey,$paramvalue,$perm,$typeofdata='string')
|
function editfieldval($text,$htmlname,$preselected,$paramkey,$paramvalue,$perm,$typeofdata='string')
|
||||||
{
|
{
|
||||||
@ -107,7 +107,14 @@ class Form
|
|||||||
$ret.='<input type="hidden" name="'.$paramkey.'" value="'.$paramvalue.'">';
|
$ret.='<input type="hidden" name="'.$paramkey.'" value="'.$paramvalue.'">';
|
||||||
$ret.='<table class="nobordernopadding" cellpadding="0" cellspacing="0">';
|
$ret.='<table class="nobordernopadding" cellpadding="0" cellspacing="0">';
|
||||||
$ret.='<tr><td>';
|
$ret.='<tr><td>';
|
||||||
$ret.='<input type="text" name="'.$htmlname.'" value="'.$preselected.'">';
|
if (in_array($typeofdata,array('string','email')))
|
||||||
|
{
|
||||||
|
$ret.='<input type="text" name="'.$htmlname.'" value="'.$preselected.'">';
|
||||||
|
}
|
||||||
|
else if ($typeofdata == 'text')
|
||||||
|
{
|
||||||
|
$ret.='<textarea name="'.$htmlname.'">'.$preselected.'</textarea>';
|
||||||
|
}
|
||||||
$ret.='</td>';
|
$ret.='</td>';
|
||||||
$ret.='<td align="left"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td>';
|
$ret.='<td align="left"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td>';
|
||||||
$ret.='</tr></table>'."\n";
|
$ret.='</tr></table>'."\n";
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user