Fix: bug #14364 overview: mode de reglement non pris en compte facture

This commit is contained in:
Laurent Destailleur 2005-09-02 20:07:09 +00:00
parent d0bce4b07f
commit 374f713f2c
5 changed files with 71 additions and 92 deletions

View File

@ -240,26 +240,30 @@ if ($_POST["action"] == 'setremise' && $user->rights->facture->creer)
if ($_POST["action"] == 'addligne' && $user->rights->facture->creer) if ($_POST["action"] == 'addligne' && $user->rights->facture->creer)
{ {
$fac = new Facture($db); if ($_POST["qty"] && (($_POST["pu"] && $_POST["desc"]) || $_POST["idprod"]))
$fac->fetch($_POST["facid"]); {
$datestart=''; $fac = new Facture($db);
$dateend=''; $fac->fetch($_POST["facid"]);
if ($_POST["date_startyear"] && $_POST["date_startmonth"] && $_POST["date_startday"]) { $datestart='';
$datestart=$_POST["date_startyear"].'-'.$_POST["date_startmonth"].'-'.$_POST["date_startday"]; $dateend='';
if ($_POST["date_startyear"] && $_POST["date_startmonth"] && $_POST["date_startday"]) {
$datestart=$_POST["date_startyear"].'-'.$_POST["date_startmonth"].'-'.$_POST["date_startday"];
}
if ($_POST["date_endyear"] && $_POST["date_endmonth"] && $_POST["date_endday"]) {
$dateend=$_POST["date_endyear"].'-'.$_POST["date_endmonth"].'-'.$_POST["date_endday"];
}
$result = $fac->addline($_POST["facid"],
$_POST["desc"],
$_POST["pu"],
$_POST["qty"],
$_POST["tva_tx"],
0,
$_POST["remise_percent"],
$datestart,
$dateend
);
} }
if ($_POST["date_endyear"] && $_POST["date_endmonth"] && $_POST["date_endday"]) {
$dateend=$_POST["date_endyear"].'-'.$_POST["date_endmonth"].'-'.$_POST["date_endday"];
}
$result = $fac->addline($_POST["facid"],
$_POST["desc"],
$_POST["pu"],
$_POST["qty"],
$_POST["tva_tx"],
0,
$_POST["remise_percent"],
$datestart,
$dateend
);
$_GET["facid"]=$_POST["facid"]; // Pour réaffichage de la fiche en cours d'édition $_GET["facid"]=$_POST["facid"]; // Pour réaffichage de la fiche en cours d'édition
} }
@ -526,12 +530,18 @@ if ($_GET["action"] == 'create')
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans("Company").' :</td><td>'.$soc->nom.'</td>'; print '<tr><td>'.$langs->trans("Company").'</td><td colspan="2">'.$soc->nom.'</td>';
print '<td class="border">'.$langs->trans("Comments").'</td></tr>'; print '</tr>';
print '<tr><td>'.$langs->trans("Author").' :</td><td>'.$user->fullname.'</td>'; print '<tr><td>'.$langs->trans("Author").'</td><td>'.$user->fullname.'</td>';
print '<td class="border">'.$langs->trans("Comments").'</td>';
print '</tr>';
print '<td rowspan="6" valign="top">'; print '<tr><td>'.$langs->trans("Date").'</td><td>';
$html->select_date();
print '</td>';
print '<td rowspan="5" valign="top">';
print '<textarea name="note" wrap="soft" cols="50" rows="5">'; print '<textarea name="note" wrap="soft" cols="50" rows="5">';
if (is_object($commande) && !empty($commande->projet_id)) if (is_object($commande) && !empty($commande->projet_id))
{ {
@ -539,70 +549,31 @@ if ($_GET["action"] == 'create')
} }
print '</textarea></td></tr>'; print '</textarea></td></tr>';
print '<tr><td>'.$langs->trans("Date").' :</td><td>'; print '<tr><td>'.$langs->trans("Ref").'</td><td>Provisoire</td></tr>';
$html->select_date();
print '</td></tr>';
print '<tr><td>'.$langs->trans("Ref").' :</td><td>Provisoire</td></tr>';
print '<input name="facnumber" type="hidden" value="provisoire">'; print '<input name="facnumber" type="hidden" value="provisoire">';
print "<tr><td nowrap>Conditions de réglement :</td><td>"; // Conditions de réglement
$sql = "SELECT rowid, libelle FROM ".MAIN_DB_PREFIX."cond_reglement ORDER BY sortorder"; $id_condition_paiements_defaut=1;
$result = $db->query($sql); print "<tr><td nowrap>".$langs->trans("PaymentConditions")."</td><td>";
$conds=array(); $html->select_conditions_paiements($id_condition_paiements_defaut,'condid');
if ($result)
{
$num = $db->num_rows($result);
$i = 0;
while ($i < $num)
{
$objp = $db->fetch_object($result);
$conds[$objp->rowid]=$objp->libelle;
$i++;
}
$db->free($result);
}
$html->select_array("condid",$conds);
print "</td></tr>"; print "</td></tr>";
// Mode de réglement // Mode de réglement
print "<tr><td>Mode de réglement :</td><td>"; print "<tr><td>".$langs->trans("PaymentMode")."</td><td>";
$sql = "SELECT id, libelle FROM ".MAIN_DB_PREFIX."c_paiement ORDER BY libelle"; $html->select_types_paiements('','mode_reglement');
$result = $db->query($sql);
$modesregl=array();
if ($result)
{
$num = $db->num_rows();
$i = 0;
while ($i < $num)
{
$objp = $db->fetch_object();
$modesregl[$objp->id]=$objp->libelle;
$i++;
}
$db->free();
}
$html->select_array("mode_reglement",$modesregl);
print "</td></tr>"; print "</td></tr>";
// Projet // Projet
if ($conf->projet->enabled) if ($conf->projet->enabled)
{ {
$langs->load("projects"); $langs->load("projects");
print '<tr><td>'.$langs->trans("Project").' :</td><td>'; print '<tr><td>'.$langs->trans("Project").'</td><td>';
$proj = new Project($db); $html->select_projects($socidp);
$html->select_array(
"projetid",
$proj->liste_array($socidp),
(is_object($commande) && !empty($commande->projet_id)) ? $commande->projet_id : ''
);
print "</td></tr>"; print "</td></tr>";
} }
else else
{ {
print "<tr><td colspan=\"2\">&nbsp;</td></tr>"; print '<tr><td colspan="2">&nbsp;</td></tr>';
} }
if ($_GET["propalid"] > 0) if ($_GET["propalid"] > 0)
@ -946,16 +917,18 @@ else
*/ */
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans("Company").'</td>'; print '<tr><td>'.$langs->trans("Company").'</td>';
print '<td colspan="3">'; print '<td colspan="5">';
print '<b><a href="fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></b></td>'; print '<a href="fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></td>';
print "<td>Conditions de réglement</td><td>" . $fac->cond_reglement ."</td></tr>";
print '<tr><td>'.$langs->trans("Date").'</td>'; print '<tr><td>'.$langs->trans("Date").'</td>';
print "<td colspan=\"3\">".dolibarr_print_date($fac->date,"%A %d %B %Y")."</td>\n"; print '<td colspan="3">'.dolibarr_print_date($fac->date,"%A %d %B %Y")."</td>\n";
print '<td>'.$langs->trans("DateClosing").'</td><td>' . dolibarr_print_date($fac->date_lim_reglement,"%A %d %B %Y"); print '<td>'.$langs->trans("DateClosing").'</td><td>' . dolibarr_print_date($fac->date_lim_reglement,"%A %d %B %Y");
if ($fac->date_lim_reglement < (time() - $conf->facture->client->warning_delay) && ! $fac->paye && $fac->statut == 1 && ! $fac->am) print img_warning($langs->trans("Late")); if ($fac->date_lim_reglement < (time() - $conf->facture->client->warning_delay) && ! $fac->paye && $fac->statut == 1 && ! $fac->am) print img_warning($langs->trans("Late"));
print "</td></tr>"; print '</td></tr>';
// Conditions et modes de réglement
print '<tr><td>'.$langs->trans("PaymentConditions").'</td><td colspan="3">'. $fac->cond_reglement . '</td>';
print '<td width="25%">'.$langs->trans("PaymentMode").'</td><td width="25%">'. $fac->mode_reglement . '</td></tr>';
print '<tr>'; print '<tr>';
@ -1578,8 +1551,7 @@ else
} }
else else
{ {
/* Facture non trouvée */ dolibarr_print_error($db,$fac->error);
print $langs->trans("ErrorBillNotFound",$_GET["facid"]);
} }
} }
else else

View File

@ -19,7 +19,6 @@
* *
* $Id$ * $Id$
* $Source$ * $Source$
*
*/ */
/** /**
@ -109,16 +108,21 @@ if ($_GET["facid"] > 0)
*/ */
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans("Company").'</td>'; print '<tr><td>'.$langs->trans("Company").'</td>';
print '<td colspan="3">'; print '<td colspan="5">';
print '<b><a href="'.DOL_URL_ROOT.'/compta/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></b></td>'; print '<a href="'.DOL_URL_ROOT.'/compta/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></td>';
print '</tr>';
print "<td>Conditions de réglement</td><td>" . $fac->cond_reglement ."</td></tr>";
// Dates
print '<tr><td>'.$langs->trans("Date").'</td>'; print '<tr><td>'.$langs->trans("Date").'</td>';
print "<td colspan=\"3\">".dolibarr_print_date($fac->date,"%A %d %B %Y")."</td>\n"; print '<td colspan="3">'.dolibarr_print_date($fac->date,"%A %d %B %Y").'</td>';
print '<td>'.$langs->trans("DateClosing").'</td><td>' . dolibarr_print_date($fac->date_lim_reglement,"%A %d %B %Y"); print '<td>'.$langs->trans("DateClosing").'</td><td>' . dolibarr_print_date($fac->date_lim_reglement,"%A %d %B %Y");
if ($fac->paye == 0 && $fac->date_lim_reglement < (time() - $warning_delay)) print img_warning($langs->trans("Late")); if ($fac->paye == 0 && $fac->date_lim_reglement < (time() - $warning_delay)) print img_warning($langs->trans("Late"));
print "</td></tr>"; print "</td></tr>";
// Conditions et modes de réglement
print '<tr><td>'.$langs->trans("PaymentConditions").'</td><td colspan="3">'. $fac->cond_reglement . '</td>';
print '<td width="25%">'.$langs->trans("PaymentMode").'</td><td width="25%">'. $fac->mode_reglement . '</td></tr>';
print '<tr>'; print '<tr>';
if ($conf->projet->enabled) if ($conf->projet->enabled)
{ {

View File

@ -18,7 +18,6 @@
* *
* $Id$ * $Id$
* $Source$ * $Source$
*
*/ */
/** /**
@ -105,15 +104,17 @@ if ($_GET["facid"])
print '<table class="border" width="100%">'; print '<table class="border" width="100%">';
print '<tr><td>'.$langs->trans("Company").'</td>'; print '<tr><td>'.$langs->trans("Company").'</td>';
print '<td>'; print '<td colspan="3">';
print '<b><a href="'.DOL_URL_ROOT.'/compta/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></b></td>'; print '<a href="'.DOL_URL_ROOT.'/compta/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></td>';
print "<td>Conditions de réglement</td><td>" . $facture->cond_reglement ."</td></tr>";
print '<tr><td>'.$langs->trans("Date").'</td>'; print '<tr><td>'.$langs->trans("Date").'</td>';
print '<td>'.dolibarr_print_date($facture->date,"%A %d %B %Y")."</td>\n"; print '<td>'.dolibarr_print_date($facture->date,"%A %d %B %Y")."</td>\n";
print '<td width="25%">'.$langs->trans("DateClosing").'</td><td width="25%">'.dolibarr_print_date($facture->date_lim_reglement,"%A %d %B %Y") ."</td></tr>"; print '<td width="25%">'.$langs->trans("DateClosing").'</td><td width="25%">'.dolibarr_print_date($facture->date_lim_reglement,"%A %d %B %Y") ."</td></tr>";
// Conditions et modes de réglement
print '<tr><td>'.$langs->trans("PaymentConditions").'</td><td>'. $facture->cond_reglement . '</td>';
print '<td>'.$langs->trans("PaymentMode").'</td><td>'. $facture->mode_reglement . '</td></tr>';
print '<tr><td valign="top" colspan="4">'.$langs->trans("Note").' :</td></tr>'; print '<tr><td valign="top" colspan="4">'.$langs->trans("Note").' :</td></tr>';
print '<tr><td valign="top" colspan="4">'.($facture->note?nl2br($facture->note):"&nbsp;")."</td></tr>"; print '<tr><td valign="top" colspan="4">'.($facture->note?nl2br($facture->note):"&nbsp;")."</td></tr>";

View File

@ -15,6 +15,7 @@ Payments=Payments
ReceivedPayments=Received payments ReceivedPayments=Received payments
PaymentsAlreadyDone=Payments already done PaymentsAlreadyDone=Payments already done
PaymentMode=Payment mode PaymentMode=Payment mode
PaymentConditions=Payment conditions
ClassifyPayed=Classify 'Payed' ClassifyPayed=Classify 'Payed'
ClassifyCanceled=Classify 'Abandonned' ClassifyCanceled=Classify 'Abandonned'
CreateBill=Create Invoice CreateBill=Create Invoice

View File

@ -14,7 +14,8 @@ Payment=Paiement
Payments=Paiements Payments=Paiements
ReceivedPayments=Paiements reçus ReceivedPayments=Paiements reçus
PaymentsAlreadyDone=Versements déjà effectués PaymentsAlreadyDone=Versements déjà effectués
PaymentMode=Mode de paiement PaymentMode=Mode de réglement
PaymentConditions=Conditions de réglement
ClassifyPayed=Classer 'Payée' ClassifyPayed=Classer 'Payée'
ClassifyCanceled=Classer 'Abandonnée' ClassifyCanceled=Classer 'Abandonnée'
CreateBill=Créer Facture CreateBill=Créer Facture