Fix: When a line is defined as option, it was not possible to remove "options" then.
This commit is contained in:
parent
645dab23a0
commit
02c9c563e0
@ -26,7 +26,7 @@
|
|||||||
* \file htdocs/comm/propal.php
|
* \file htdocs/comm/propal.php
|
||||||
* \ingroup propale
|
* \ingroup propale
|
||||||
* \brief Page of commercial proposals card and list
|
* \brief Page of commercial proposals card and list
|
||||||
* \version $Id: propal.php,v 1.614 2011/08/03 00:46:26 eldy Exp $
|
* \version $Id: propal.php,v 1.615 2011/08/08 01:53:26 eldy Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require("../main.inc.php");
|
require("../main.inc.php");
|
||||||
@ -818,6 +818,10 @@ if ($_POST['action'] == 'updateligne' && $user->rights->propale->creer && $_POST
|
|||||||
$localtax2_rate=get_localtax($vat_rate,2,$object->client);
|
$localtax2_rate=get_localtax($vat_rate,2,$object->client);
|
||||||
$up_ht=GETPOST('pu')?GETPOST('pu'):GETPOST('subprice');
|
$up_ht=GETPOST('pu')?GETPOST('pu'):GETPOST('subprice');
|
||||||
|
|
||||||
|
// Define special_code for special lines
|
||||||
|
$special_code=0;
|
||||||
|
if (empty($_POST['qty'])) $special_code=3;
|
||||||
|
|
||||||
// On verifie que le prix minimum est respecte
|
// On verifie que le prix minimum est respecte
|
||||||
$productid = $_POST['productid'] ;
|
$productid = $_POST['productid'] ;
|
||||||
if ($productid)
|
if ($productid)
|
||||||
@ -843,7 +847,7 @@ if ($_POST['action'] == 'updateligne' && $user->rights->propale->creer && $_POST
|
|||||||
$_POST['desc'],
|
$_POST['desc'],
|
||||||
'HT',
|
'HT',
|
||||||
$info_bits,
|
$info_bits,
|
||||||
'',
|
$special_code,
|
||||||
$_POST['fk_parent_line']
|
$_POST['fk_parent_line']
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -1828,7 +1832,7 @@ else
|
|||||||
$soc = new Societe($db);
|
$soc = new Societe($db);
|
||||||
$soc->fetch($socid);
|
$soc->fetch($socid);
|
||||||
}
|
}
|
||||||
|
|
||||||
$param='&socid='.$socid.'&viewstatut='.$viewstatut;
|
$param='&socid='.$socid.'&viewstatut='.$viewstatut;
|
||||||
if ($month) $param.='&month='.$month;
|
if ($month) $param.='&month='.$month;
|
||||||
if ($year) $param.='&year='.$year;
|
if ($year) $param.='&year='.$year;
|
||||||
@ -1975,6 +1979,6 @@ else
|
|||||||
}
|
}
|
||||||
$db->close();
|
$db->close();
|
||||||
|
|
||||||
llxFooter('$Date: 2011/08/03 00:46:26 $ - $Revision: 1.614 $');
|
llxFooter('$Date: 2011/08/08 01:53:26 $ - $Revision: 1.615 $');
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -29,7 +29,7 @@
|
|||||||
* \author Rodolphe Qiedeville
|
* \author Rodolphe Qiedeville
|
||||||
* \author Eric Seigne
|
* \author Eric Seigne
|
||||||
* \author Laurent Destailleur
|
* \author Laurent Destailleur
|
||||||
* \version $Id: propal.class.php,v 1.110 2011/08/03 00:46:39 eldy Exp $
|
* \version $Id: propal.class.php,v 1.111 2011/08/08 01:53:26 eldy Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once(DOL_DOCUMENT_ROOT ."/core/class/commonobject.class.php");
|
require_once(DOL_DOCUMENT_ROOT ."/core/class/commonobject.class.php");
|
||||||
@ -431,18 +431,20 @@ class Propal extends CommonObject
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Mise a jour d'une ligne de produit
|
* Update a proposal line
|
||||||
* \param rowid Id de la ligne
|
* @param rowid Id de la ligne
|
||||||
* \param pu Prix unitaire (HT ou TTC selon price_base_type)
|
* @param pu Prix unitaire (HT ou TTC selon price_base_type)
|
||||||
* \param qty Quantity
|
* @param qty Quantity
|
||||||
* \param remise_percent Remise effectuee sur le produit
|
* @param remise_percent Remise effectuee sur le produit
|
||||||
* \param txtva Taux de TVA
|
* @param txtva Taux de TVA
|
||||||
* \param txlocaltax1 Local tax 1 rate
|
* @param txlocaltax1 Local tax 1 rate
|
||||||
* \param txlocaltax2 Local tax 2 rate
|
* @param txlocaltax2 Local tax 2 rate
|
||||||
* \param desc Description
|
* @param desc Description
|
||||||
* \param price_base_type HT ou TTC
|
* @param price_base_type HT ou TTC
|
||||||
* \param info_bits Miscellanous informations
|
* @param info_bits Miscellanous informations
|
||||||
* \return int 0 en cas de succes
|
* @param special_code Set special code ('' = we don't change it)
|
||||||
|
* @param fk_parent_line Id of line parent
|
||||||
|
* @return int 0 en cas de succes
|
||||||
*/
|
*/
|
||||||
function updateline($rowid, $pu, $qty, $remise_percent=0, $txtva, $txlocaltax1=0, $txlocaltax2=0, $desc='', $price_base_type='HT', $info_bits=0, $special_code=0, $fk_parent_line=0, $skip_update_total=0)
|
function updateline($rowid, $pu, $qty, $remise_percent=0, $txtva, $txlocaltax1=0, $txlocaltax2=0, $desc='', $price_base_type='HT', $info_bits=0, $special_code=0, $fk_parent_line=0, $skip_update_total=0)
|
||||||
{
|
{
|
||||||
@ -458,6 +460,8 @@ class Propal extends CommonObject
|
|||||||
$txtva = price2num($txtva);
|
$txtva = price2num($txtva);
|
||||||
$txlocaltax1=price2num($txlocaltax1);
|
$txlocaltax1=price2num($txlocaltax1);
|
||||||
$txlocaltax2=price2num($txlocaltax2);
|
$txlocaltax2=price2num($txlocaltax2);
|
||||||
|
if (empty($qty) && empty($special_code)) $special_code=3; // Set option tag
|
||||||
|
if (! empty($qty) && $special_code == 3) $special_code=0; // Remove option tag
|
||||||
|
|
||||||
if ($this->statut == 0)
|
if ($this->statut == 0)
|
||||||
{
|
{
|
||||||
@ -508,8 +512,6 @@ class Propal extends CommonObject
|
|||||||
$this->line->fk_parent_line=$fk_parent_line;
|
$this->line->fk_parent_line=$fk_parent_line;
|
||||||
$this->line->skip_update_total=$skip_update_total;
|
$this->line->skip_update_total=$skip_update_total;
|
||||||
|
|
||||||
if (empty($qty) && empty($special_code)) $this->line->special_code=3;
|
|
||||||
|
|
||||||
// TODO deprecated
|
// TODO deprecated
|
||||||
$this->line->price=$price;
|
$this->line->price=$price;
|
||||||
$this->line->remise=$remise;
|
$this->line->remise=$remise;
|
||||||
@ -2671,12 +2673,11 @@ class PropaleLigne
|
|||||||
$sql.= " , marge_tx='".$this->marge_tx."'";
|
$sql.= " , marge_tx='".$this->marge_tx."'";
|
||||||
$sql.= " , marque_tx='".$this->marque_tx."'";
|
$sql.= " , marque_tx='".$this->marque_tx."'";
|
||||||
$sql.= " , info_bits=".$this->info_bits;
|
$sql.= " , info_bits=".$this->info_bits;
|
||||||
if ($this->special_code != '') $sql.= " , special_code=".$this->special_code;
|
if (strlen($this->special_code)) $sql.= " , special_code=".$this->special_code;
|
||||||
$sql.= " , fk_parent_line=".($this->fk_parent_line>0?$this->fk_parent_line:"null");
|
$sql.= " , fk_parent_line=".($this->fk_parent_line>0?$this->fk_parent_line:"null");
|
||||||
$sql.= " WHERE rowid = ".$this->rowid;
|
$sql.= " WHERE rowid = ".$this->rowid;
|
||||||
|
|
||||||
dol_syslog("PropaleLigne::update sql=$sql");
|
dol_syslog("PropaleLigne::update sql=$sql");
|
||||||
|
|
||||||
$resql=$this->db->query($sql);
|
$resql=$this->db->query($sql);
|
||||||
if ($resql)
|
if ($resql)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
-- You should have received a copy of the GNU General Public License
|
-- You should have received a copy of the GNU General Public License
|
||||||
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
--
|
--
|
||||||
-- $Id: llx_propaldet.sql,v 1.9 2011/08/03 01:25:41 eldy Exp $
|
-- $Id: llx_propaldet.sql,v 1.10 2011/08/08 01:53:25 eldy Exp $
|
||||||
-- ===================================================================
|
-- ===================================================================
|
||||||
|
|
||||||
create table llx_propaldet
|
create table llx_propaldet
|
||||||
@ -49,7 +49,7 @@ create table llx_propaldet
|
|||||||
marge_tx double(6,3) DEFAULT 0, -- taux de marge (marge sur prix d'achat)
|
marge_tx double(6,3) DEFAULT 0, -- taux de marge (marge sur prix d'achat)
|
||||||
marque_tx double(6,3) DEFAULT 0, -- taux de marque (marge sur prix de vente)
|
marque_tx double(6,3) DEFAULT 0, -- taux de marque (marge sur prix de vente)
|
||||||
|
|
||||||
special_code integer UNSIGNED DEFAULT 0, -- code pour les lignes speciales
|
special_code integer DEFAULT 0, -- code pour les lignes speciales
|
||||||
rang integer DEFAULT 0 -- ordre affichage sur la propal
|
rang integer DEFAULT 0 -- ordre affichage sur la propal
|
||||||
)ENGINE=innodb;
|
)ENGINE=innodb;
|
||||||
|
|
||||||
|
|||||||
@ -29,7 +29,7 @@ StatusOrderCanceledShort=Annulée
|
|||||||
StatusOrderDraftShort=Brouillon
|
StatusOrderDraftShort=Brouillon
|
||||||
StatusOrderValidatedShort=Validée
|
StatusOrderValidatedShort=Validée
|
||||||
StatusOrderOnProcessShort=Réception
|
StatusOrderOnProcessShort=Réception
|
||||||
StatusOrderSentShort=Expédition en cours
|
StatusOrderSentShort=Envoi en cours
|
||||||
StatusOrderProcessedShort=Traitée
|
StatusOrderProcessedShort=Traitée
|
||||||
StatusOrderToBillShort=À facturer
|
StatusOrderToBillShort=À facturer
|
||||||
StatusOrderApprovedShort=Approuvée
|
StatusOrderApprovedShort=Approuvée
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user