diff --git a/dev/initdata/generate-invoice.php b/dev/initdata/generate-invoice.php index 716060f0379f7064ead68f7eaa736396edd815b3..e313aa44d1fd934bccac12f78365b2a013fb19fd 100755 --- a/dev/initdata/generate-invoice.php +++ b/dev/initdata/generate-invoice.php @@ -41,8 +41,59 @@ require_once(DOL_DOCUMENT_ROOT."/societe/class/societe.class.php"); * Parameters */ -define(GEN_NUMBER_FACTURE, 5); - +define(GEN_NUMBER_FACTURE, 1); +$year = 2016; +$dates = array (mktime(12,0,0,1,3,$year), + mktime(12,0,0,1,9,$year), + mktime(12,0,0,2,13,$year), + mktime(12,0,0,2,23,$year), + mktime(12,0,0,3,30,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,5,9,$year), + mktime(12,0,0,5,1,$year), + mktime(12,0,0,5,13,$year), + mktime(12,0,0,5,19,$year), + mktime(12,0,0,5,23,$year), + mktime(12,0,0,6,3,$year), + mktime(12,0,0,6,19,$year), + mktime(12,0,0,6,24,$year), + mktime(12,0,0,7,3,$year), + mktime(12,0,0,7,9,$year), + mktime(12,0,0,7,23,$year), + mktime(12,0,0,7,30,$year), + mktime(12,0,0,8,9,$year), + mktime(12,0,0,9,23,$year), + mktime(12,0,0,10,3,$year), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,1,3,($year - 1)), + mktime(12,0,0,1,9,($year - 1)), + mktime(12,0,0,2,13,($year - 1)), + mktime(12,0,0,2,23,($year - 1)), + mktime(12,0,0,3,30,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,5,9,($year - 1)), + mktime(12,0,0,5,1,($year - 1)), + mktime(12,0,0,5,13,($year - 1)), + mktime(12,0,0,5,19,($year - 1)), + mktime(12,0,0,5,23,($year - 1)), + mktime(12,0,0,6,3,($year - 1)), + mktime(12,0,0,6,19,($year - 1)), + mktime(12,0,0,6,24,($year - 1)), + mktime(12,0,0,7,3,($year - 1)), + mktime(12,0,0,7,9,($year - 1)), + mktime(12,0,0,7,23,($year - 1)), + mktime(12,0,0,7,30,($year - 1)), + mktime(12,0,0,8,9,($year - 1)), + mktime(12,0,0,9,23,($year - 1)), + mktime(12,0,0,10,3,($year - 1)), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,12,12,$year), + mktime(12,0,0,12,13,$year), +); $ret=$user->fetch('','admin'); if (! $ret > 0) @@ -54,16 +105,15 @@ $user->getrights(); $socids = array(); -$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe WHERE client=1"; +$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe WHERE client in (1, 3)"; $resql = $db->query($sql); if ($resql) { - $num_socs = $db->num_rows($resql); + $num_thirdparties = $db->num_rows($resql); $i = 0; - while ($i < $num_socs) + while ($i < $num_thirdparties) { $i++; - $row = $db->fetch_row($resql); $socids[$i] = $row[0]; } @@ -79,7 +129,6 @@ if ($resql) while ($i < $num_prods) { $i++; - $row = $db->fetch_row($resql); $prodids[$i] = $row[0]; } @@ -90,46 +139,51 @@ $result=0; while ($i < GEN_NUMBER_FACTURE && $result >= 0) { $i++; - $socid = mt_rand(1, $num_socs); + $socid = mt_rand(1, $num_thirdparties); print "Invoice ".$i." for socid ".$socid; - $facture = new Facture($db); - $facture->date = time(); - $facture->cond_reglement_id = 3; - $facture->mode_reglement_id = 3; - - $result=$facture->create($user); + $object = new Facture($db); + $object->socid = $socids[$socid]; + $object->date = $dates[mt_rand(1, count($dates)-1)]; + $object->cond_reglement_id = 3; + $object->mode_reglement_id = 3; + + $fuser = new User($db); + $fuser->fetch(mt_rand(1,2)); + $fuser->getRights(); + + $result=$object->create($fuser); if ($result >= 0) { - $result=$facture->validate($user); + $nbp = mt_rand(2, 5); + $xnbp = 0; + while ($xnbp < $nbp) + { + $prodid = mt_rand(1, $num_prods); + $product=new Product($db); + $result=$product->fetch($prodids[$prodid]); + $result=$object->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0, '', '', 0, 0, '', $product->price_base_type, $product->price_ttc, $product->type); + if ($result < 0) + { + dol_print_error($db,$propal->error); + } + $xnbp++; + } + + $result=$object->validate($fuser); if ($result) { - $nbp = mt_rand(2, 5); - $xnbp = 0; - while ($xnbp < $nbp) - { - $prodid = mt_rand(1, $num_prods); - $product=new Product($db); - $result=$product->fetch($prodids[$prodid]); - $result=$facture->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0, '', '', 0, 0, '', $product->price_base_type, $product->price_ttc, $product->type); - if ($result < 0) - { - dol_print_error($db,$propal->error); - } - $xnbp++; - } - - print " OK with ref ".$facture->ref."\n";; + print " OK with ref ".$object->ref."\n";; } else { - dol_print_error($db,$facture->error); + dol_print_error($db,$object->error); } } else { - dol_print_error($db,$facture->error); + dol_print_error($db,$object->error); } } diff --git a/dev/initdata/generate-order.php b/dev/initdata/generate-order.php index 0bba1c5af5bdf66c0ff063ec27764f57a28137e5..c73b15b620d717f5a6f29714e422ae0c667abda4 100755 --- a/dev/initdata/generate-order.php +++ b/dev/initdata/generate-order.php @@ -40,6 +40,7 @@ include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; include_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php'; include_once DOL_DOCUMENT_ROOT.'/compta/paiement/class/paiement.class.php'; include_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php'; +require_once(DOL_DOCUMENT_ROOT."/commande/class/commande.class.php"); /* @@ -47,7 +48,58 @@ include_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php'; */ define(GEN_NUMBER_COMMANDE, 10); - +$year = 2016; +$dates = array (mktime(12,0,0,1,3,$year), + mktime(12,0,0,1,9,$year), + mktime(12,0,0,2,13,$year), + mktime(12,0,0,2,23,$year), + mktime(12,0,0,3,30,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,5,9,$year), + mktime(12,0,0,5,1,$year), + mktime(12,0,0,5,13,$year), + mktime(12,0,0,5,19,$year), + mktime(12,0,0,5,23,$year), + mktime(12,0,0,6,3,$year), + mktime(12,0,0,6,19,$year), + mktime(12,0,0,6,24,$year), + mktime(12,0,0,7,3,$year), + mktime(12,0,0,7,9,$year), + mktime(12,0,0,7,23,$year), + mktime(12,0,0,7,30,$year), + mktime(12,0,0,8,9,$year), + mktime(12,0,0,9,23,$year), + mktime(12,0,0,10,3,$year), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,1,3,($year - 1)), + mktime(12,0,0,1,9,($year - 1)), + mktime(12,0,0,2,13,($year - 1)), + mktime(12,0,0,2,23,($year - 1)), + mktime(12,0,0,3,30,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,5,9,($year - 1)), + mktime(12,0,0,5,1,($year - 1)), + mktime(12,0,0,5,13,($year - 1)), + mktime(12,0,0,5,19,($year - 1)), + mktime(12,0,0,5,23,($year - 1)), + mktime(12,0,0,6,3,($year - 1)), + mktime(12,0,0,6,19,($year - 1)), + mktime(12,0,0,6,24,($year - 1)), + mktime(12,0,0,7,3,($year - 1)), + mktime(12,0,0,7,9,($year - 1)), + mktime(12,0,0,7,23,($year - 1)), + mktime(12,0,0,7,30,($year - 1)), + mktime(12,0,0,8,9,($year - 1)), + mktime(12,0,0,9,23,($year - 1)), + mktime(12,0,0,10,3,($year - 1)), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,12,12,$year), + mktime(12,0,0,12,13,$year), +); $ret=$user->fetch('','admin'); if ($ret <= 0) @@ -57,34 +109,34 @@ if ($ret <= 0) } $user->getrights(); - -$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe"; $societesid = array(); +$societesid = array(); +$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe where client in (1, 3)"; $resql=$db->query($sql); if ($resql) { - $num = $db->num_rows($resql); + $num_thirdparties = $db->num_rows($resql); $i = 0; - while ($i < $num) { - $row = $db->fetch_row($resql); - $societesid[$i] = $row[0]; + while ($i < $num_thirdparties) { $i++; + $row = $db->fetch_row($resql); + $societesid[$i] = $row[0]; } } else { print "err"; } -$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."commande"; $commandesid = array(); +$commandesid = array(); +$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."commande"; $resql=$db->query($sql); if ($resql) { $num = $db->num_rows($resql); $i = 0; while ($i < $num) { - $row = $db->fetch_row($resql); - $commandesid[$i] = $row[0]; $i++; + $row = $db->fetch_row($resql); + $commandesid[$i] = $row[0]; } } else { print "err"; } - $prodids = array(); $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."product WHERE tosell=1"; $resql = $db->query($sql); @@ -102,59 +154,6 @@ if ($resql) } -$dates = array (mktime(12,0,0,1,3,2003), - mktime(12,0,0,1,9,2003), - mktime(12,0,0,2,13,2003), - mktime(12,0,0,2,23,2003), - mktime(12,0,0,3,30,2003), - mktime(12,0,0,4,3,2003), - mktime(12,0,0,4,3,2003), - mktime(12,0,0,5,9,2003), - mktime(12,0,0,5,1,2003), - mktime(12,0,0,5,13,2003), - mktime(12,0,0,5,19,2003), - mktime(12,0,0,5,23,2003), - mktime(12,0,0,6,3,2003), - mktime(12,0,0,6,19,2003), - mktime(12,0,0,6,24,2003), - mktime(12,0,0,7,3,2003), - mktime(12,0,0,7,9,2003), - mktime(12,0,0,7,23,2003), - mktime(12,0,0,7,30,2003), - mktime(12,0,0,8,9,2003), - mktime(12,0,0,9,23,2003), - mktime(12,0,0,10,3,2003), - mktime(12,0,0,11,12,2003), - mktime(12,0,0,11,13,2003), - mktime(12,0,0,1,3,2002), - mktime(12,0,0,1,9,2002), - mktime(12,0,0,2,13,2002), - mktime(12,0,0,2,23,2002), - mktime(12,0,0,3,30,2002), - mktime(12,0,0,4,3,2002), - mktime(12,0,0,4,3,2002), - mktime(12,0,0,5,9,2002), - mktime(12,0,0,5,1,2002), - mktime(12,0,0,5,13,2002), - mktime(12,0,0,5,19,2002), - mktime(12,0,0,5,23,2002), - mktime(12,0,0,6,3,2002), - mktime(12,0,0,6,19,2002), - mktime(12,0,0,6,24,2002), - mktime(12,0,0,7,3,2002), - mktime(12,0,0,7,9,2002), - mktime(12,0,0,7,23,2002), - mktime(12,0,0,7,30,2002), - mktime(12,0,0,8,9,2002), - mktime(12,0,0,9,23,2002), - mktime(12,0,0,10,3,2002), - mktime(12,0,0,11,12,2003), - mktime(12,0,0,11,13,2003), - mktime(12,0,0,12,12,2003), - mktime(12,0,0,12,13,2003), - ); - -require(DOL_DOCUMENT_ROOT."/commande/class/commande.class.php"); print "Build ".GEN_NUMBER_COMMANDE." orders\n"; @@ -162,53 +161,63 @@ for ($s = 0 ; $s < GEN_NUMBER_COMMANDE ; $s++) { print "Process order ".$s."\n"; - $com = new Commande($db); - - $com->socid = 4; - $com->date_commande = $dates[mt_rand(1, count($dates)-1)]; - $com->note = 'A comment'; - $com->source = 1; - $com->fk_project = 0; - $com->remise_percent = 0; - + $object = new Commande($db); + + $object->socid = $societesid[mt_rand(1, $num_thirdparties)]; + $object->date_commande = $dates[mt_rand(1, count($dates)-1)]; + $object->note = 'My small comment about this order. Hum. Nothing.'; + $object->source = 1; + $object->fk_project = 0; + $object->remise_percent = 0; + $object->shipping_method_id = mt_rand(1, 2); + $object->cond_reglement_id = mt_rand(0, 2); + $object->more_reglement_id = mt_rand(0, 7); + $object->availability_id = mt_rand(0, 1); + + $listofuserid=array(12,13,16); + + $fuser = new User($db); + $fuser->fetch($listofuserid[mt_rand(0,2)]); + $fuser->getRights(); + $db->begin(); - $result=$com->create($user); + $result=$object->create($fuser); if ($result >= 0) { - $result=$com->valid($user); - if ($result > 0) - { - $nbp = mt_rand(2, 5); - $xnbp = 0; - while ($xnbp < $nbp) + $nbp = mt_rand(2, 5); + $xnbp = 0; + while ($xnbp < $nbp) + { + $prodid = mt_rand(1, $num_prods); + $product=new Product($db); + $result=$product->fetch($prodids[$prodid]); + $result=$object->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0, 0, 0, $product->price_base_type, $product->price_ttc, '', '', $product->type); + if ($result <= 0) { - $prodid = mt_rand(1, $num_prods); - $product=new Product($db); - $result=$product->fetch($prodids[$prodid]); - $result=$com->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0, 0, 0, $product->price_base_type, $product->price_ttc, '', '', $product->type); - if ($result < 0) - { - dol_print_error($db,$propal->error); - } - $xnbp++; + dol_print_error($db,$object->error); } + $xnbp++; + } + $result=$object->valid($fuser); + if ($result > 0) + { $db->commit(); - print " OK with ref ".$com->ref."\n"; + print " OK with ref ".$object->ref."\n"; } else { print " KO\n"; $db->rollback(); - dol_print_error($db,$com->error); + dol_print_error($db,$object->error); } } else { print " KO\n"; $db->rollback(); - dol_print_error($db,$com->error); + dol_print_error($db,$object->error); } } diff --git a/dev/initdata/generate-proposal.php b/dev/initdata/generate-proposal.php index 713f1ca406901858ecaf87cc5c7f8e3555e0d9d0..6f1dc293a6851ed96ab12a8a02ae8f241068207a 100755 --- a/dev/initdata/generate-proposal.php +++ b/dev/initdata/generate-proposal.php @@ -43,8 +43,59 @@ require_once(DOL_DOCUMENT_ROOT."/societe/class/societe.class.php"); * Parameters */ -define(GEN_NUMBER_PROPAL, 5); - +define(GEN_NUMBER_PROPAL, 10); +$year = 2016; +$dates = array (mktime(12,0,0,1,3,$year), + mktime(12,0,0,1,9,$year), + mktime(12,0,0,2,13,$year), + mktime(12,0,0,2,23,$year), + mktime(12,0,0,3,30,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,4,3,$year), + mktime(12,0,0,5,9,$year), + mktime(12,0,0,5,1,$year), + mktime(12,0,0,5,13,$year), + mktime(12,0,0,5,19,$year), + mktime(12,0,0,5,23,$year), + mktime(12,0,0,6,3,$year), + mktime(12,0,0,6,19,$year), + mktime(12,0,0,6,24,$year), + mktime(12,0,0,7,3,$year), + mktime(12,0,0,7,9,$year), + mktime(12,0,0,7,23,$year), + mktime(12,0,0,7,30,$year), + mktime(12,0,0,8,9,$year), + mktime(12,0,0,9,23,$year), + mktime(12,0,0,10,3,$year), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,1,3,($year - 1)), + mktime(12,0,0,1,9,($year - 1)), + mktime(12,0,0,2,13,($year - 1)), + mktime(12,0,0,2,23,($year - 1)), + mktime(12,0,0,3,30,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,4,3,($year - 1)), + mktime(12,0,0,5,9,($year - 1)), + mktime(12,0,0,5,1,($year - 1)), + mktime(12,0,0,5,13,($year - 1)), + mktime(12,0,0,5,19,($year - 1)), + mktime(12,0,0,5,23,($year - 1)), + mktime(12,0,0,6,3,($year - 1)), + mktime(12,0,0,6,19,($year - 1)), + mktime(12,0,0,6,24,($year - 1)), + mktime(12,0,0,7,3,($year - 1)), + mktime(12,0,0,7,9,($year - 1)), + mktime(12,0,0,7,23,($year - 1)), + mktime(12,0,0,7,30,($year - 1)), + mktime(12,0,0,8,9,($year - 1)), + mktime(12,0,0,9,23,($year - 1)), + mktime(12,0,0,10,3,($year - 1)), + mktime(12,0,0,11,12,$year), + mktime(12,0,0,11,13,$year), + mktime(12,0,0,12,12,$year), + mktime(12,0,0,12,13,$year), +); $ret=$user->fetch('','admin'); if (! $ret > 0) @@ -56,16 +107,15 @@ $user->getrights(); $socids = array(); -$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe WHERE client=1"; +$sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."societe WHERE client in (1,3)"; $resql = $db->query($sql); if ($resql) { - $num_socs = $db->num_rows($resql); + $num_thirdparties = $db->num_rows($resql); $i = 0; - while ($i < $num_socs) + while ($i < $num_thirdparties) { $i++; - $row = $db->fetch_row($resql); $socids[$i] = $row[0]; } @@ -81,7 +131,6 @@ if ($resql) while ($i < $num_conts) { $i++; - $row = $db->fetch_row($resql); $contids[$row[1]][0] = $row[0]; // A ameliorer } @@ -97,7 +146,6 @@ if ($resql) while ($i < $num_prods) { $i++; - $row = $db->fetch_row($resql); $prodids[$i] = $row[0]; } @@ -117,27 +165,25 @@ $result=0; while ($i < GEN_NUMBER_PROPAL && $result >= 0) { $i++; - $socid = mt_rand(1, $num_socs); + $socid = mt_rand(1, $num_thirdparties); print "Proposal ".$i." for socid ".$socid; $soc = new Societe($db); - $propal = new Propal($db); - - $obj = $conf->global->PROPALE_ADDON; - $modPropale = new $obj; - $numpr = $modPropale->getNextValue($soc,$propal); + $object = new Propal($db); - $propal->ref = $numpr; - $propal->contactid = $contids[$socids[$socid]][0]; - $propal->socid = $socids[$socid]; - $propal->datep = time(); - $propal->cond_reglement_id = 3; - $propal->mode_reglement_id = 3; - $propal->author = $user->id; + $fuser = new User($db); + $fuser->fetch(mt_rand(1,2)); + $fuser->getRights(); + + $object->contactid = $contids[$socids[$socid]][0]; + $object->socid = $socids[$socid]; + $object->datep = $dates[mt_rand(1, count($dates)-1)]; + $object->cond_reglement_id = 3; + $object->mode_reglement_id = 3; - $result=$propal->create($user); + $result=$object->create($fuser); if ($result >= 0) { $nbp = mt_rand(2, 5); @@ -147,18 +193,30 @@ while ($i < GEN_NUMBER_PROPAL && $result >= 0) $prodid = mt_rand(1, $num_prods); $product=new Product($db); $result=$product->fetch($prodids[$prodid]); - $result=$propal->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0); + $result=$object->addline($product->description, $product->price, mt_rand(1,5), 0, 0, 0, $prodids[$prodid], 0); if ($result < 0) { - dol_print_error($db,$propal->error); + dol_print_error($db,$object->error); } $xnbp++; } - print " OK with ref ".$propal->ref."\n"; + + $result=$object->valid($fuser); + if ($result > 0) + { + $db->commit(); + print " OK with ref ".$object->ref."\n"; + } + else + { + print " KO\n"; + $db->rollback(); + dol_print_error($db,$object->error); + } } else { - dol_print_error($db,$propal->error); + dol_print_error($db,$object->error); } } diff --git a/htdocs/commande/card.php b/htdocs/commande/card.php index baf18c329c1e75bfe2d99c9f36adfea551b087f1..d985bc1c482fd8a0dbe48a490f426b1c4ca3a485 100644 --- a/htdocs/commande/card.php +++ b/htdocs/commande/card.php @@ -49,6 +49,7 @@ if (! empty($conf->projet->enabled)) { require_once DOL_DOCUMENT_ROOT . '/projet/class/project.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formprojet.class.php'; } + require_once DOL_DOCUMENT_ROOT . '/core/class/doleditor.class.php'; $langs->load('orders'); @@ -61,6 +62,7 @@ $langs->load('sendings'); $langs->load('products'); if (!empty($conf->incoterm->enabled)) $langs->load('incoterm'); if (! empty($conf->margin->enabled)) $langs->load('margins'); +if (! empty($conf->productbatch->enabled)) $langs->load("productbatch"); $id = (GETPOST('id', 'int') ? GETPOST('id', 'int') : GETPOST('orderid', 'int')); $ref = GETPOST('ref', 'alpha');