Fix: Pb sur modif date debut effectif service.
This commit is contained in:
parent
62c09b57c6
commit
ea4141ca16
@ -584,73 +584,72 @@ 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
|
// Nettoyage parametres
|
||||||
// if ($this->statut == 0)
|
$qty=trim($qty);
|
||||||
// {
|
$desc=trim($desc);
|
||||||
// Nettoyage parametres
|
$desc=trim($desc);
|
||||||
$qty=trim($qty);
|
$price = ereg_replace(",",".",$pu);
|
||||||
$desc=trim($desc);
|
$tvatx = ereg_replace(",",".",$tvatx);
|
||||||
$desc=trim($desc);
|
$subprice = $price;
|
||||||
$price = ereg_replace(",",".",$pu);
|
$remise = 0;
|
||||||
$tvatx = ereg_replace(",",".",$tvatx);
|
if (strlen($remise_percent) > 0)
|
||||||
$subprice = $price;
|
{
|
||||||
$remise = 0;
|
$remise = round(($pu * $remise_percent / 100), 2);
|
||||||
if (strlen($remise_percent) > 0)
|
$price = $pu - $remise;
|
||||||
{
|
}
|
||||||
$remise = round(($pu * $remise_percent / 100), 2);
|
else
|
||||||
$price = $pu - $remise;
|
{
|
||||||
}
|
$remise_percent=0;
|
||||||
else
|
}
|
||||||
{
|
|
||||||
$remise_percent=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
dolibarr_syslog("Contrat::UpdateLine $rowid, $desc, $pu, $qty, $remise_percent, $datestart, $dateend, $tvatx");
|
dolibarr_syslog("Contrat::UpdateLine $rowid, $desc, $pu, $qty, $remise_percent, $datestart, $dateend, $tvatx");
|
||||||
|
|
||||||
$this->db->begin();
|
$this->db->begin();
|
||||||
|
|
||||||
$sql = "UPDATE ".MAIN_DB_PREFIX."contratdet set description='".addslashes($desc)."'";
|
$sql = "UPDATE ".MAIN_DB_PREFIX."contratdet set description='".addslashes($desc)."'";
|
||||||
$sql .= ",price_ht='" . ereg_replace(",",".",$price)."'";
|
$sql .= ",price_ht='" . ereg_replace(",",".",$price)."'";
|
||||||
$sql .= ",subprice='" . ereg_replace(",",".",$subprice)."'";
|
$sql .= ",subprice='" . ereg_replace(",",".",$subprice)."'";
|
||||||
$sql .= ",remise='" . ereg_replace(",",".",$remise)."'";
|
$sql .= ",remise='" . ereg_replace(",",".",$remise)."'";
|
||||||
$sql .= ",remise_percent='".ereg_replace(",",".",$remise_percent)."'";
|
$sql .= ",remise_percent='".ereg_replace(",",".",$remise_percent)."'";
|
||||||
$sql .= ",qty='$qty'";
|
$sql .= ",qty='$qty'";
|
||||||
$sql .= ",tva_tx='". ereg_replace(",",".",$tvatx)."'";
|
$sql .= ",tva_tx='". ereg_replace(",",".",$tvatx)."'";
|
||||||
|
|
||||||
if ($datestart > 0) { $sql.= ",date_ouverture_prevue=".$this->db->idate($datestart); }
|
if ($datestart > 0) { $sql.= ",date_ouverture_prevue=".$this->db->idate($datestart); }
|
||||||
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 ;";
|
||||||
|
|
||||||
$result = $this->db->query($sql);
|
$result = $this->db->query($sql);
|
||||||
if ($result)
|
if ($result)
|
||||||
{
|
{
|
||||||
$this->update_price();
|
$this->update_price();
|
||||||
|
|
||||||
$this->db->commit();
|
$this->db->commit();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$this->db->rollback();
|
$this->db->rollback();
|
||||||
$this->error=$this->db->error();
|
$this->error=$this->db->error();
|
||||||
dolibarr_syslog("Contrat::UpdateLigne Erreur -1");
|
dolibarr_syslog("Contrat::UpdateLigne Erreur -1");
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// dolibarr_syslog("Contrat::UpdateLigne Erreur -2 Contrat en mode incompatible pour cette action");
|
|
||||||
// return -2;
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -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();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user