Fix: problème avec l'ajout du produit dans une propale, commande, facture

This commit is contained in:
Regis Houssin 2006-06-22 17:34:51 +00:00
parent 9c0fd000d1
commit 9c4e8909bd

View File

@ -227,16 +227,19 @@ if ($_POST["action"] == 'confirm_delete' && $_POST["confirm"] == 'yes' && $user-
*/ */
if ($_POST["action"] == 'addinpropal') if ($_POST["action"] == 'addinpropal')
{ {
$propal = New Propal($db); $propal = New Propal($db);
$result=$propal->fetch($_POST["propalid"]); $result=$propal->fetch($_POST["propalid"]);
if ($result <= 0) if ($result <= 0)
{ {
dolibarr_print_error($db,$propal->error); dolibarr_print_error($db,$propal->error);
exit; exit;
} }
$prod = new Product($db, $_GET['id']); $soc = new Societe($db);
$result=$prod->fetch($_GET['id']); $soc->fetch($propal->socidp,$user);
$prod = new Product($db, $_GET['id']);
$result=$prod->fetch($_GET['id']);
if ($result <= 0) if ($result <= 0)
{ {
dolibarr_print_error($db,$prod->error); dolibarr_print_error($db,$prod->error);
@ -252,10 +255,17 @@ if ($_POST["action"] == 'addinpropal')
{ {
$pu=$prod->price; $pu=$prod->price;
} }
$desc = $prod->desc;
$desc = $prod->description;
$tva_tx = get_default_tva($mysoc,$soc,$prod->tva_tx); $tva_tx = get_default_tva($mysoc,$soc,$prod->tva_tx);
$result = $propal->addline($propal->id, $desc, $pu, $_POST["qty"], $tva_tx, $prod->id, $_POST["remise_percent"]); $result = $propal->addline($propal->id,
$desc,
$pu,
$_POST["qty"],
$tva_tx,
$prod->id,
$_POST["remise_percent"]);
if ($result > 0) if ($result > 0)
{ {
Header("Location: ../comm/propal.php?propalid=".$propal->id); Header("Location: ../comm/propal.php?propalid=".$propal->id);
@ -275,12 +285,28 @@ if ($_POST["action"] == 'addincommande')
$commande = New Commande($db); $commande = New Commande($db);
$commande->fetch($_POST["commandeid"]); $commande->fetch($_POST["commandeid"]);
$soc = new Societe($db);
$soc->fetch($commande->socidp,$user);
// multiprix
if ($conf->global->PRODUIT_MULTIPRICES == 1)
{
$pu = $product->multiprices[$soc->price_level];
}
else
{
$pu=$product->price;
}
$tva_tx = get_default_tva($mysoc,$soc,$product->tva_tx);
$result = $commande->addline($product->libelle, $result = $commande->addline($commande->id,
$product->libelle,
$product->description, $product->description,
$product->price, $pu,
$_POST["qty"], $_POST["qty"],
$product->tva_tx, $tva_tx,
$product->id, $product->id,
$_POST["remise_percent"]); $_POST["remise_percent"]);
@ -295,17 +321,30 @@ if ($_POST["action"] == 'addinfacture' && $user->rights->facture->creer)
{ {
$product = new Product($db); $product = new Product($db);
$result = $product->fetch($_GET["id"]); $result = $product->fetch($_GET["id"]);
$facture = New Facture($db); $facture = New Facture($db);
$facture->fetch($_POST["factureid"]); $facture->fetch($_POST["factureid"]);
$soc = new Societe($db);
$soc->fetch($facture->socidp,$user);
// multiprix
if ($conf->global->PRODUIT_MULTIPRICES == 1)
{
$pu = $product->multiprices[$soc->price_level];
}
else
{
$pu=$product->price;
}
$tva_tx = get_default_tva($mysoc,$soc,$product->tva_tx);
$facture->addline($_POST["factureid"], $facture->addline($facture->id,
$product->libelle,
$product->description, $product->description,
"", // volontairement laissé vide pour fonctionnement module multiprix $pu,
$_POST["qty"], $_POST["qty"],
$product->tva_tx, $tva_tx,
$product->id, $product->id,
$_POST["remise_percent"]); $_POST["remise_percent"]);