Ajout patch os commerce de jean
This commit is contained in:
parent
584eb68723
commit
b6b9b91f19
@ -118,7 +118,10 @@ if ($action == '' && !$cancel) {
|
||||
/* utilisation de la table de transco*/
|
||||
if ($osc_cust->get_clientid($osc_cust->osc_custid)>0)
|
||||
{
|
||||
print '<p>Ce client existe déjà</p>';
|
||||
print "\n<div class=\"tabsAction\">\n";
|
||||
print '<p>Ce client existe déjà mise à jour à prévoir</p>';
|
||||
print '<a class="tabAction" href="index.php">'.$langs->trans("Retour").'</a>';
|
||||
print "\n</div><br>\n";
|
||||
}
|
||||
else {
|
||||
$id = $societe->create($user);
|
||||
@ -126,9 +129,9 @@ if ($action == '' && !$cancel) {
|
||||
if ($id == 0)
|
||||
{
|
||||
print "\n<div class=\"tabsAction\">\n";
|
||||
print '<p>création réussie nouveau client/prospect '.$societe->id.' nom : '.$societe->nom.'</p>';
|
||||
print '<p>création réussie nouveau client/prospect : '.$societe->nom;
|
||||
$res = $osc_cust->transcode($osc_cust->osc_custid,$societe->id);
|
||||
print '<p>transcode '.$res.' | '.$societe->id.' osc : '.$osc_cust->osc_custid.'</p>';
|
||||
print ' : Id Dolibarr '.$societe->id.' , Id osc : '.$osc_cust->osc_custid.'</p>';
|
||||
print '<a class="tabAction" href="index.php">'.$langs->trans("Retour").'</a>';
|
||||
print "\n</div><br>\n";
|
||||
}
|
||||
|
||||
@ -22,6 +22,7 @@ require("./pre.inc.php");
|
||||
|
||||
$langs->load("companies");
|
||||
|
||||
|
||||
llxHeader();
|
||||
|
||||
|
||||
@ -57,10 +58,14 @@ elseif (!($err = $client->getError()) )
|
||||
$var=True;
|
||||
$i=0;
|
||||
|
||||
// un client osc
|
||||
$OscClient = new Osc_Customer($db);
|
||||
|
||||
if ($num > 0) {
|
||||
print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"4\">";
|
||||
print '<TR class="liste_titre">';
|
||||
print "<td>id</td>";
|
||||
print "<td>Oscid</td>";
|
||||
print "<td>clientId</td>";
|
||||
print '<TD align="center">Société</TD>';
|
||||
print "<td>Nom</td>";
|
||||
print "<td>Ville</td>";
|
||||
@ -71,15 +76,20 @@ elseif (!($err = $client->getError()) )
|
||||
|
||||
while ($i < $num) {
|
||||
$var=!$var;
|
||||
$custid = $OscClient->get_clientid($result[$i][customers_id]);
|
||||
|
||||
print "<TR $bc[$var]>";
|
||||
print '<TD><a href="fiche.php?custid='.$result[$i][customers_id].'">'.$result[$i][customers_id]."</TD>\n";
|
||||
print "<td>".$custid."</td>";
|
||||
print "<TD>".$result[$i][entry_company]."</TD>\n";
|
||||
print "<TD>".$result[$i][entry_lastname]."</TD>\n";
|
||||
print "<TD>".$result[$i][entry_city]."</TD>\n";
|
||||
print '<TD align="center">'.$result[$i][countries_name]."</TD>\n";
|
||||
print '<TD align="center">'.$result[$i][customers_telephone]."</TD>\n";
|
||||
print '<TD align="center"><a href="fiche.php?action=import&custid='.$result[$i][customers_id].'"'."><b>importer</b></a></TD>\n";
|
||||
if ($custid) $lib = "modifier";
|
||||
else $lib = "<u>importer</u>";
|
||||
|
||||
print '<TD align="center"><a href="fiche.php?action=import&custid='.$result[$i][customers_id].'"'.">".$lib."</a></TD>\n";
|
||||
print "</TR>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
@ -140,18 +140,16 @@ class Osc_customer
|
||||
function transcode($oscid, $socid)
|
||||
{
|
||||
|
||||
print "entree transcode <br>";
|
||||
|
||||
/* suppression et insertion */
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."osc_customer WHERE osc_custid = ".$oscid.";";
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "suppression ok ".$sql." * ".$result;
|
||||
// print "suppression ok ".$sql." * ".$result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "suppression rate ".$sql." * ".$result;
|
||||
// print "suppression rate ".$sql." * ".$result;
|
||||
dolibarr_syslog("osc_customer::transcode echec suppression");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -161,11 +159,11 @@ class Osc_customer
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "insertion ok ". $sql." ". $result;
|
||||
// print "insertion ok ". $sql." ". $result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "insertion rate ".$sql." , ".$result;
|
||||
// print "insertion rate ".$sql." , ".$result;
|
||||
dolibarr_syslog("osc_customer::transcode echec insert");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -182,7 +180,8 @@ class Osc_customer
|
||||
$result=$this->db->query($sql);
|
||||
$row = $this->db->fetch_row($resql);
|
||||
// test d'erreurs
|
||||
return $row[0];
|
||||
if ($row) return $row[0];
|
||||
else return '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -87,7 +87,6 @@ if ($action == '' && !$cancel) {
|
||||
if ( !$result )
|
||||
{
|
||||
$commande = $osc_order->osc2dolibarr($_GET["orderid"]);
|
||||
// print_r($commande);
|
||||
}
|
||||
/* utilisation de la table de transco*/
|
||||
if ($osc_order->get_orderid($osc_order->osc_orderid)>0)
|
||||
@ -95,14 +94,62 @@ if ($action == '' && !$cancel) {
|
||||
print '<p>Cette commande existe déjà</p>';
|
||||
}
|
||||
else {
|
||||
// vérifier que la société est renseignée, sinon importer le client d'abord
|
||||
if ( ! $commande->socid)
|
||||
{
|
||||
$osc_cust = new Osc_customer($db, $osc_order->osc_custid);
|
||||
$result = $osc_cust->fetch($osc_order->osc_custid);
|
||||
if ( !$result )
|
||||
{
|
||||
$societe = new Societe($db);
|
||||
if ($_error == 1)
|
||||
{
|
||||
print "\n<div class=\"tabsAction\">\n";
|
||||
print '<br>erreur 1</br>';
|
||||
print '<a class="tabAction" href="index.php">'.$langs->trans("Retour").'</a>';
|
||||
print "\n</div><br>\n";
|
||||
}
|
||||
/* initialisation */
|
||||
$societe->nom = $osc_cust->osc_custsoc.' '.$osc_cust->osc_custlastname;
|
||||
$societe->adresse = $osc_cust->osc_cutstreet;
|
||||
$societe->cp = $osc_cust->osc_custpostcode;
|
||||
$societe->ville = $osc_cust->osc_custcity;
|
||||
$societe->departement_id = 0;
|
||||
$societe->pays_code = $osc_cust->osc_custcodecountry;
|
||||
$societe->tel = $osc_cust->osc_custtel;
|
||||
$societe->fax = $osc_cust->osc_custfax;
|
||||
$societe->email = $osc_cust->osc_custmail;
|
||||
/* on force */
|
||||
$societe->url = '';
|
||||
$societe->siren = '';
|
||||
$societe->siret = '';
|
||||
$societe->ape = '';
|
||||
$societe->client = 1; // mettre 0 si prospect
|
||||
|
||||
$cl = $societe->create($user);
|
||||
if ($cl == 0)
|
||||
{
|
||||
$commande->socid = $societe->id;
|
||||
print '<p>création réussie nouveau client/prospect : '.$societe->nom;
|
||||
$res = $osc_cust->transcode($osc_cust->osc_custid,$societe->id);
|
||||
print ' : Id Dolibarr '.$societe->id.' , Id osc : '.$osc_cust->osc_custid.'</p>';
|
||||
}
|
||||
else
|
||||
{
|
||||
print '<p>création impossible client : '. $osc_cust->osc_custid .'</p>';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$id = $commande->create($user);
|
||||
|
||||
|
||||
if ($id > 0)
|
||||
{
|
||||
print "\n<div class=\"tabsAction\">\n";
|
||||
print '<br>création réussie nouvelle commande '.$id;
|
||||
$res = $osc_order->transcode($osc_order->osc_orderid,$id);
|
||||
print '<p>transcode '.$res.' | '.$id.' osc : '.$osc_order->osc_orderid.'</p>';
|
||||
print 'pour la commande osc : '.$osc_order->osc_orderid.'</p>';
|
||||
print '<a class="tabAction" href="index.php">'.$langs->trans("Retour").'</a>';
|
||||
print "\n</div><br>\n";
|
||||
|
||||
@ -112,6 +159,7 @@ if ($action == '' && !$cancel) {
|
||||
{
|
||||
if ($id == -3)
|
||||
{
|
||||
print ("<p>$id = -3 ".$commande->error."</p>");
|
||||
$_error = 1;
|
||||
$_GET["action"] = "create";
|
||||
$_GET["type"] = $_POST["type"];
|
||||
|
||||
@ -57,6 +57,9 @@ elseif (!($err = $client->getError()) )
|
||||
$var=True;
|
||||
$i=0;
|
||||
|
||||
// une commande osc
|
||||
$OscOrder = new Osc_Order($db);
|
||||
|
||||
if ($num > 0) {
|
||||
print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"4\">";
|
||||
print '<TR class="liste_titre">';
|
||||
@ -72,15 +75,18 @@ elseif (!($err = $client->getError()) )
|
||||
while ($i < $num) {
|
||||
$var=!$var;
|
||||
|
||||
$ordid = $OscOrder->get_orderid($result[$i][orders_id]);
|
||||
print "<TR $bc[$var]>";
|
||||
print '<TD><a href="fiche.php?orderid='.$result[$i][orders_id].'">'.$result[$i][orders_id]."</TD>\n";
|
||||
print "<TD> </TD>\n";
|
||||
print '<TD><a href="../../commande/fiche.php?id='.$ordid.'">'.$ordid."</a> </TD>\n";
|
||||
print "<TD>".$result[$i][customers_name]."</TD>\n";
|
||||
print "<TD>".$result[$i][date_purchased]."</TD>\n";
|
||||
print "<TD>".$result[$i][value]."</TD>\n";
|
||||
print '<TD align="center">'.' '.$result[$i][payment_method]."</TD>\n";
|
||||
// print '<TD align="center">'/*.$result[$i][customers_telephone]*/."</TD>\n";
|
||||
print '<TD align="center"><a href="fiche.php?action=import&orderid='.$result[$i][orders_id].'">'."<b>importer</b></a></TD>\n";
|
||||
if ($ordid) $lib = "modifier";
|
||||
else $lib = "<u>importer</u>";
|
||||
print '<TD align="center"><a href="fiche.php?action=import&orderid='.$result[$i][orders_id].'">'.$lib."</a></TD>\n";
|
||||
print "</TR>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
@ -28,6 +28,7 @@
|
||||
|
||||
|
||||
require("../clients/osc_customer.class.php");
|
||||
require("../produits/osc_product.class.php");
|
||||
require_once(DOL_DOCUMENT_ROOT."/commande/commande.class.php");
|
||||
|
||||
|
||||
@ -47,6 +48,7 @@ class Osc_order
|
||||
var $osc_orderdate;
|
||||
var $osc_ordertotal;
|
||||
var $osc_orderpaymet;
|
||||
var $osc_orderport;
|
||||
|
||||
var $osc_lines = array();
|
||||
|
||||
@ -109,8 +111,9 @@ class Osc_order
|
||||
$this->osc_custname = $obj[0][customers_name];
|
||||
$this->osc_custid = $obj[0][customers_id];
|
||||
$this->osc_orderdate = $obj[0][date_purchased];
|
||||
$this->osc_ordertotal = $obj[0][value];
|
||||
$this->osc_ordertotal = $obj[0][total];
|
||||
$this->osc_orderpaymet = $obj[0][payment_method];
|
||||
$this->osc_orderport = $obj[0][port];
|
||||
|
||||
|
||||
for ($i=1;$i<count($obj);$i++) {
|
||||
@ -120,13 +123,14 @@ class Osc_order
|
||||
$this->osc_lines[$i-1][products_price] = $obj[$i][products_price];
|
||||
$this->osc_lines[$i-1][final_price] = $obj[$i][final_price];
|
||||
$this->osc_lines[$i-1][products_tax] = $obj[$i][products_tax];
|
||||
$this->osc_lines[$i-1][quantity] = $obj[$i][quantity];
|
||||
$this->osc_lines[$i-1][quantity] = $obj[$i][products_quantity];
|
||||
}
|
||||
}
|
||||
else {
|
||||
$this->error = 'Erreur '.$err ;
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
// print_r($this);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -145,6 +149,8 @@ class Osc_order
|
||||
/* initialisation */
|
||||
$oscclient = new Osc_Customer($this->db);
|
||||
$clientid = $oscclient->get_clientid($this->osc_custid);
|
||||
|
||||
$oscproduct = new Osc_product($this->db);
|
||||
|
||||
$commande->socid = $clientid;
|
||||
$commande->ref = $this->osc_orderid;
|
||||
@ -154,14 +160,15 @@ class Osc_order
|
||||
$commande->source = 0; // à vérifier
|
||||
|
||||
//les lignes
|
||||
print "<br> nombre : " . count($this->osc_lines);
|
||||
|
||||
for ($i = 0; $i < sizeof($this->osc_lines);$i++) {
|
||||
$commande->lines[$i]->libelle = $this->osc_lines[$i][products_id];
|
||||
$commande->lines[$i]->desc = $this->osc_lines[$i][products_name];
|
||||
$commande->lines[$i]->price = $this->osc_lines[$i][products_price];
|
||||
$commande->lines[$i]->subprice = $this->osc_lines[$i][products_price];
|
||||
$commande->lines[$i]->qty = $this->osc_lines[$i][quantity];
|
||||
$commande->lines[$i]->tva_tx = $this->osc_lines[$i][products_tax];
|
||||
// $commande->lines[$i]->fk_product;
|
||||
$commande->lines[$i]->fk_product = $oscproduct->get_productid($this->osc_lines[$i][products_id]);
|
||||
$commande->lines[$i]->remise_percent = 0; // à calculer avec le finalprice
|
||||
}
|
||||
|
||||
@ -178,18 +185,16 @@ class Osc_order
|
||||
function transcode($osc_orderid, $doli_orderid)
|
||||
{
|
||||
|
||||
print "entree transcode <br>";
|
||||
|
||||
/* suppression et insertion */
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."osc_orders WHERE osc_prodid = ".$osc_orderid.";";
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "suppression ok ".$sql." * ".$result;
|
||||
// print "suppression ok ".$sql." * ".$result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "suppression rate ".$sql." * ".$result;
|
||||
// print "suppression rate ".$sql." * ".$result;
|
||||
dolibarr_syslog("osc_order::transcode echec suppression");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -199,11 +204,11 @@ class Osc_order
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "insertion ok ". $sql." ". $result;
|
||||
// print "insertion ok ". $sql." ". $result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "insertion rate ".$sql." , ".$result;
|
||||
// print "insertion rate ".$sql." , ".$result;
|
||||
dolibarr_syslog("osc_product::transcode echec insert");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -220,7 +225,8 @@ class Osc_order
|
||||
$result=$this->db->query($sql);
|
||||
$row = $this->db->fetch_row($resql);
|
||||
// test d'erreurs
|
||||
return $row[0];
|
||||
if ($row) return $row[0];
|
||||
else return '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -7,8 +7,8 @@
|
||||
----------------------------------------------*/
|
||||
|
||||
//base url des webservices
|
||||
define(OSCWS_DIR,'http://osc-tiaris/ws_OSC/');
|
||||
//define(OSCWS_DIR,'http://osc.tiaris.info/ws_OSC/');
|
||||
define(OSCWS_DIR,'http://www.tiaris.info/ws_OSC');
|
||||
//define(OSCWS_DIR,'http://www.tiaris.info/ws_OSC');
|
||||
//affichages dans la page d'accueil
|
||||
define(OSC_MAXNBCOM, 5);
|
||||
define(OSC_ORDWAIT,'4'); // code du statut de commande en attente
|
||||
|
||||
@ -79,14 +79,14 @@ if ($action == '' && !$cancel) {
|
||||
{
|
||||
$osc_prod = new Osc_product($db, $_GET['id']);
|
||||
$result = $osc_prod->fetch($_GET['id']);
|
||||
|
||||
|
||||
if ( !$result )
|
||||
{
|
||||
$product = new Product($db);
|
||||
if ($_error == 1)
|
||||
{
|
||||
print '<br>erreur 1</br>';
|
||||
exit;
|
||||
// exit;
|
||||
}
|
||||
/* initialisation */
|
||||
$product->ref = $osc_prod->osc_ref;
|
||||
@ -108,18 +108,18 @@ if ($action == '' && !$cancel) {
|
||||
}
|
||||
else {
|
||||
$id = $product->create($user);
|
||||
|
||||
|
||||
if ($id > 0)
|
||||
{
|
||||
print "\n<div class=\"tabsAction\">\n";
|
||||
print '<p>création réussie produit '.$id.' référence : '.$product->ref.'</p>';
|
||||
print '<p>création réussie produit '.$id.' référence : '.$product->ref;
|
||||
$res = $osc_prod->transcode($osc_prod->osc_id,$product->id);
|
||||
print '<p>transcode '.$res.' | '.$product->id.' osc : '.$osc_prod->osc_id.'</p>';
|
||||
print ' Id osc : '.$osc_prod->osc_id.'</p>';
|
||||
print '<a class="tabAction" href="index.php">'.$langs->trans("Retour").'</a>';
|
||||
print "\n</div><br>\n";
|
||||
$id_entrepot = OSC_ENTREPOT;
|
||||
$id = $product->create_stock($id_entrepot,$osc_prod->osc_stock);
|
||||
if ($id > 0) exit;
|
||||
// if ($id > 0) exit;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -57,11 +57,15 @@ elseif (!($err = $client->getError()) )
|
||||
$var=True;
|
||||
$i=0;
|
||||
|
||||
// un produit osc
|
||||
$OscProd = new Osc_Product($db);
|
||||
|
||||
if ($num > 0) {
|
||||
print "<p><TABLE border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"4\">";
|
||||
print '<TR class="liste_titre">';
|
||||
print "<td>id</td>";
|
||||
print "<td>Ref</td>";
|
||||
print "<td>ProductId</td>";
|
||||
print "<td>Titre</td>";
|
||||
print "<td>Groupe</td>";
|
||||
print '<td align="center">Stock</td>';
|
||||
@ -71,15 +75,19 @@ elseif (!($err = $client->getError()) )
|
||||
|
||||
while ($i < $num) {
|
||||
$var=!$var;
|
||||
$prodid = $OscProd->get_productid($result[$i][OSC_id]);
|
||||
|
||||
print "<TR $bc[$var]>";
|
||||
print '<TD><a href="fiche.php?id='.$result[$i][OSC_id].'">'.$result[$i][OSC_id]."</TD>\n";
|
||||
print "<TD>".$result[$i][model]."</TD>\n";
|
||||
print '<TD>'.$result[$i][model]."</TD>\n";
|
||||
print '<td><a href="../../product/fiche.php?id='.$prodid.'">'.$prodid.'</a></td>';
|
||||
print "<TD>".$result[$i][name]."</TD>\n";
|
||||
print "<TD>".$result[$i][manufacturer]."</TD>\n";
|
||||
print '<TD align="center">'.$result[$i][quantity]."</TD>\n";
|
||||
print '<TD align="center">'.$result[$i][status]."</TD>\n";
|
||||
print '<TD align="center"><a href="fiche.php?action=import&id='.$result[$i][OSC_id].'"'."><b>importer</b></a></TD>\n";
|
||||
if ($prodid) $lib = "modifier";
|
||||
else $lib = "<u>importer</u>";
|
||||
print '<TD align="center"><a href="fiche.php?action=import&id='.$result[$i][OSC_id].'"'.">".$lib."</a></TD>\n";
|
||||
print "</TR>\n";
|
||||
$i++;
|
||||
}
|
||||
|
||||
@ -125,18 +125,18 @@ class Osc_product
|
||||
function transcode($oscid, $prodid)
|
||||
{
|
||||
|
||||
print "entree transcode <br>";
|
||||
// print "entree transcode <br>";
|
||||
|
||||
/* suppression et insertion */
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."osc_product WHERE osc_prodid = ".$oscid.";";
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "suppression ok ".$sql." * ".$result;
|
||||
// print "suppression ok ".$sql." * ".$result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "suppression rate ".$sql." * ".$result;
|
||||
// print "suppression rate ".$sql." * ".$result;
|
||||
dolibarr_syslog("osc_product::transcode echec suppression");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -146,11 +146,11 @@ class Osc_product
|
||||
$result=$this->db->query($sql);
|
||||
if ($result)
|
||||
{
|
||||
print "insertion ok ". $sql." ". $result;
|
||||
// print "insertion ok ". $sql." ". $result;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "insertion rate ".$sql." , ".$result;
|
||||
// print "insertion rate ".$sql." , ".$result;
|
||||
dolibarr_syslog("osc_product::transcode echec insert");
|
||||
// $this->db->rollback();
|
||||
// return -1;
|
||||
@ -167,7 +167,8 @@ class Osc_product
|
||||
$result=$this->db->query($sql);
|
||||
$row = $this->db->fetch_row($resql);
|
||||
// test d'erreurs
|
||||
return $row[0];
|
||||
if ($row) return $row[0];
|
||||
else return '';
|
||||
}
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user