Fix: Pb sur modif date debut effectif service.

This commit is contained in:
Laurent Destailleur 2005-09-24 01:25:19 +00:00
parent 62c09b57c6
commit ea4141ca16
2 changed files with 82 additions and 68 deletions

View File

@ -584,13 +584,14 @@ class Contrat
* \param datestart Date de debut prévue * \param datestart Date de debut prévue
* \param dateend Date de fin prévue * \param dateend Date de fin prévue
* \param tvatx Taux TVA * \param tvatx Taux TVA
* \param date_debut_reel Date de debut réelle
* \param date_fin_reel Date de fin réelle
* \return int < 0 si erreur, > 0 si ok * \return int < 0 si erreur, > 0 si ok
*/ */
function updateline($rowid, $desc, $pu, $qty, $remise_percent=0, $datestart='', $dateend='', $tvatx) function updateline($rowid, $desc, $pu, $qty, $remise_percent=0,
$datestart='', $dateend='', $tvatx,
$date_debut_reel='', $date_fin_reel='')
{ {
// On doit pouvoir modifier datestart et dateend meme si non brouillon
// if ($this->statut == 0)
// {
// Nettoyage parametres // Nettoyage parametres
$qty=trim($qty); $qty=trim($qty);
$desc=trim($desc); $desc=trim($desc);
@ -625,6 +626,10 @@ class Contrat
else { $sql.=",date_ouverture_prevue=null"; } else { $sql.=",date_ouverture_prevue=null"; }
if ($dateend > 0) { $sql.= ",date_fin_validite=".$this->db->idate($dateend); } if ($dateend > 0) { $sql.= ",date_fin_validite=".$this->db->idate($dateend); }
else { $sql.=",date_fin_validite=null"; } else { $sql.=",date_fin_validite=null"; }
if ($date_debut_reel > 0) { $sql.= ",date_ouverture=".$this->db->idate($date_debut_reel); }
else { $sql.=",date_ouverture=null"; }
if ($date_fin_reel > 0) { $sql.= ",date_cloture=".$this->db->idate($date_fin_reel); }
else { $sql.=",date_cloture=null"; }
$sql .= " WHERE rowid = $rowid ;"; $sql .= " WHERE rowid = $rowid ;";
@ -645,12 +650,6 @@ class Contrat
return -1; return -1;
} }
// }
// else
// {
// dolibarr_syslog("Contrat::UpdateLigne Erreur -2 Contrat en mode incompatible pour cette action");
// return -2;
// }
} }
/** /**

View File

@ -41,10 +41,22 @@ $user->getrights('contrat');
if (! $user->rights->contrat->lire) if (! $user->rights->contrat->lire)
accessforbidden(); accessforbidden();
// Param si create
$date_start=''; $date_start='';
$date_end=''; $date_end='';
if ($_POST["date_startmonth"] && $_POST["date_startday"] && $_POST["date_startyear"])
{
$date_start=mktime(12, 0 , 0, $_POST["date_startmonth"], $_POST["date_startday"], $_POST["date_startyear"]);
}
if ($_POST["date_endmonth"] && $_POST["date_endday"] && $_POST["date_endyear"])
{
$date_end=mktime(12, 0 , 0, $_POST["date_endmonth"], $_POST["date_endday"], $_POST["date_endyear"]);
}
// Param si updateligne
$date_start_update=''; $date_start_update='';
$date_end_update=''; $date_end_update='';
$date_start_real_update='';
$date_end_real_update='';
if ($_POST["date_start_updatemonth"] && $_POST["date_start_updateday"] && $_POST["date_start_updateyear"]) if ($_POST["date_start_updatemonth"] && $_POST["date_start_updateday"] && $_POST["date_start_updateyear"])
{ {
$date_start_update=mktime(12, 0 , 0, $_POST["date_start_updatemonth"], $_POST["date_start_updateday"], $_POST["date_start_updateyear"]); $date_start_update=mktime(12, 0 , 0, $_POST["date_start_updatemonth"], $_POST["date_start_updateday"], $_POST["date_start_updateyear"]);
@ -53,13 +65,13 @@ if ($_POST["date_end_updatemonth"] && $_POST["date_end_updateday"] && $_POST["da
{ {
$date_end_update=mktime(12, 0 , 0, $_POST["date_end_updatemonth"], $_POST["date_end_updateday"], $_POST["date_end_updateyear"]); $date_end_update=mktime(12, 0 , 0, $_POST["date_end_updatemonth"], $_POST["date_end_updateday"], $_POST["date_end_updateyear"]);
} }
if ($_POST["date_startmonth"] && $_POST["date_startday"] && $_POST["date_startyear"]) if ($_POST["date_start_real_updatemonth"] && $_POST["date_start_real_updateday"] && $_POST["date_start_real_updateyear"])
{ {
$date_start=mktime(12, 0 , 0, $_POST["date_startmonth"], $_POST["date_startday"], $_POST["date_startyear"]); $date_start_real_update=mktime(12, 0 , 0, $_POST["date_start_real_updatemonth"], $_POST["date_start_real_updateday"], $_POST["date_start_real_updateyear"]);
} }
if ($_POST["date_endmonth"] && $_POST["date_endday"] && $_POST["date_endyear"]) if ($_POST["date_end_real_updatemonth"] && $_POST["date_end_real_updateday"] && $_POST["date_end_real_updateyear"])
{ {
$date_end=mktime(12, 0 , 0, $_POST["date_endmonth"], $_POST["date_endday"], $_POST["date_endyear"]); $date_end_real_update=mktime(12, 0 , 0, $_POST["date_end_real_updatemonth"], $_POST["date_end_real_updateday"], $_POST["date_end_real_updateyear"]);
} }
// Sécurité accés client // Sécurité accés client
@ -157,8 +169,11 @@ if ($_POST["action"] == 'updateligne' && $user->rights->contrat->creer && $_POST
$_POST["elremise_percent"], $_POST["elremise_percent"],
$date_start_update, $date_start_update,
$date_end_update, $date_end_update,
$_POST["eltva_tx"] $_POST["eltva_tx"],
$date_start_real_update,
$date_end_real_update
); );
if ($result > 0) if ($result > 0)
{ {
$db->commit(); $db->commit();