From 2fcec08e50207b26f024a8a5d01e145427d6724a Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 12:31:36 +0200 Subject: [PATCH 1/6] =?UTF-8?q?Insert=20fake=20orders=20with=20faker=20=09?= =?UTF-8?q?modifi=C3=A9:=20=20=20=20=20=20=20=20=20setup/faker.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/faker.php | 96 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/setup/faker.php b/setup/faker.php index 08da3889a..ffc84ef7d 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -9,6 +9,8 @@ use Thelia\Coupon\FacadeInterface; use Thelia\Condition\ConditionCollection; use Thelia\Coupon\Type\RemoveXAmount; use Thelia\Coupon\Type\RemoveXPercent; +use Thelia\Model\ModuleQuery; +use Thelia\Model\OrderAddress; if (php_sapi_name() != 'cli') { throw new \Exception('this script can only be launched with cli sapi'); @@ -492,6 +494,87 @@ try { } } + echo "Creating orders"; + + for($i=0; $i < 50; ++$i) { + + $placedOrder = new \Thelia\Model\Order(); + + $deliveryOrderAddress = new OrderAddress(); + $deliveryOrderAddress + ->setCustomerTitleId(mt_rand(1,3)) + ->setCompany($faker->text(15)) + ->setFirstname($faker->firstname) + ->setLastname($faker->lastname) + ->setAddress1($faker->streetAddress) + ->setAddress2($faker->streetAddress) + ->setAddress3($faker->streetAddress) + ->setPhone($faker->phoneNumber) + ->setZipcode($faker->postcode) + ->setCity($faker->city) + ->setCountryId(64) + ->save($con) + ; + + $invoiceOrderAddress = new OrderAddress(); + $invoiceOrderAddress + ->setCustomerTitleId(mt_rand(1,3)) + ->setCompany($faker->text(15)) + ->setFirstname($faker->firstname) + ->setLastname($faker->lastname) + ->setAddress1($faker->streetAddress) + ->setAddress2($faker->streetAddress) + ->setAddress3($faker->streetAddress) + ->setPhone($faker->phoneNumber) + ->setZipcode($faker->postcode) + ->setCity($faker->city) + ->setCountryId(64) + ->save($con) + ; + + $placedOrder + ->setDeliveryOrderAddressId($deliveryOrderAddress->getId()) + ->setInvoiceOrderAddressId($invoiceOrderAddress->getId()) + ->setDeliveryModuleId(ModuleQuery::create()->filterByCode("Colissimo")->findOne()->getId()) + ->setPaymentModuleId(ModuleQuery::create()->filterByCode("Cheque")->findOne()->getId()) + ->setStatusId(mt_rand(1, 5)) + ->setCurrency(\Thelia\Model\CurrencyQuery::create()->findOne()) + ->setCustomerId(getRandomObject(new \Thelia\Model\CustomerQuery())->getId()) + ->setDiscount(mt_rand(0, 10)) + ->setLang(getRandomObject(new \Thelia\Model\LangQuery())) + ->setPostage(mt_rand(1, 50)) + ; + + $placedOrder->save($con); + + for ($j=0; $j < mt_rand(1, 10); ++$j) { + $pse = getRandomObject(new \Thelia\Model\ProductSaleElementsQuery()); + $product = $pse->getProduct(); + + $orderProduct = new \Thelia\Model\OrderProduct(); + + $orderProduct + ->setOrderId($placedOrder->getId()) + ->setProductRef($product->getRef()) + ->setProductSaleElementsRef($pse->getRef()) + ->setTitle($product->getTitle()) + ->setChapo($product->getChapo()) + ->setDescription($product->getDescription()) + ->setPostscriptum($product->getPostscriptum()) + ->setQuantity(mt_rand(1, 10)) + ->setPrice($price=mt_rand(1, 100)) + ->setPromoPrice(mt_rand(1, $price)) + ->setWasNew($pse->getNewness()) + ->setWasInPromo(rand(0,1) == 1) + ->setWeight($pse->getWeight()) + ->setTaxRuleTitle($faker->text(20)) + ->setTaxRuleDescription($faker->text(50)) + ->setEanCode($pse->getEanCode()) + ->save($con); + } + + } + echo "Generating coupons fixtures\n"; generateCouponFixtures($thelia); @@ -814,3 +897,16 @@ Sed facilisis pellentesque nisl, eu tincidunt erat scelerisque a. Nullam malesua $coupon3->setIsAvailableOnSpecialOffers(false); $coupon3->save(); } + +function getRandomObject(\Propel\Runtime\ActiveQuery\ModelCriteria $query) +{ + $max = $query->count(); + + if($max === 0) { + throw new Exception("There is no entry in ". get_class($query)); + } + + $first_id = $query->findOne()->getId(); + $obj = $query->findPk(mt_rand($first_id, $first_id+$max-1)); + return $obj; +} \ No newline at end of file From 087f9e46a1803c278c4152b5aa2dac736a33e1ce Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 12:33:53 +0200 Subject: [PATCH 2/6] =?UTF-8?q?Add=20line=20return=20=09modifi=C3=A9:=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20setup/faker.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/faker.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup/faker.php b/setup/faker.php index ffc84ef7d..a9a4afdae 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -494,7 +494,7 @@ try { } } - echo "Creating orders"; + echo "Creating orders\n"; for($i=0; $i < 50; ++$i) { From c5fa984e6ef41168039c19d6064749ebb180f87d Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 12:35:24 +0200 Subject: [PATCH 3/6] Fix cs --- setup/faker.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/setup/faker.php b/setup/faker.php index a9a4afdae..eb3372185 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -496,7 +496,7 @@ try { echo "Creating orders\n"; - for($i=0; $i < 50; ++$i) { + for ($i=0; $i < 50; ++$i) { $placedOrder = new \Thelia\Model\Order(); @@ -902,11 +902,12 @@ function getRandomObject(\Propel\Runtime\ActiveQuery\ModelCriteria $query) { $max = $query->count(); - if($max === 0) { + if ($max === 0) { throw new Exception("There is no entry in ". get_class($query)); } $first_id = $query->findOne()->getId(); $obj = $query->findPk(mt_rand($first_id, $first_id+$max-1)); + return $obj; -} \ No newline at end of file +} From da6244d220bfaef4c1f3c2727fecdbad1599bebd Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 13:29:30 +0200 Subject: [PATCH 4/6] =?UTF-8?q?Add=20clear=20order=20table=20and=20use=20p?= =?UTF-8?q?ropel=20random=20selection=20=09modifi=C3=A9:=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20setup/faker.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/faker.php | 68 ++++++++++++++++++++++++++++++++----------------- 1 file changed, 44 insertions(+), 24 deletions(-) diff --git a/setup/faker.php b/setup/faker.php index eb3372185..1eaaff4f4 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -150,6 +150,7 @@ try { \Thelia\Model\ContentDocumentQuery::create()->find()->delete(); \Thelia\Model\CouponQuery::create()->find()->delete(); + \Thelia\Model\OrderQuery::create()->find()->delete(); $stmt = $con->prepare("SET foreign_key_checks = 1"); @@ -497,7 +498,6 @@ try { echo "Creating orders\n"; for ($i=0; $i < 50; ++$i) { - $placedOrder = new \Thelia\Model\Order(); $deliveryOrderAddress = new OrderAddress(); @@ -512,7 +512,12 @@ try { ->setPhone($faker->phoneNumber) ->setZipcode($faker->postcode) ->setCity($faker->city) - ->setCountryId(64) + ->setCountryId( + \Thelia\Model\CountryQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne() + ->getId() + ) ->save($con) ; @@ -528,27 +533,56 @@ try { ->setPhone($faker->phoneNumber) ->setZipcode($faker->postcode) ->setCity($faker->city) - ->setCountryId(64) + ->setCountryId( + \Thelia\Model\CountryQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne() + ->getId() + ) ->save($con) ; $placedOrder ->setDeliveryOrderAddressId($deliveryOrderAddress->getId()) ->setInvoiceOrderAddressId($invoiceOrderAddress->getId()) - ->setDeliveryModuleId(ModuleQuery::create()->filterByCode("Colissimo")->findOne()->getId()) - ->setPaymentModuleId(ModuleQuery::create()->filterByCode("Cheque")->findOne()->getId()) + ->setDeliveryModuleId( + ModuleQuery::create()-> + filterByCode("Colissimo") + ->findOne() + ->getId() + ) + ->setPaymentModuleId( + ModuleQuery::create() + ->filterByCode("Cheque") + ->findOne()->getId() + ) ->setStatusId(mt_rand(1, 5)) - ->setCurrency(\Thelia\Model\CurrencyQuery::create()->findOne()) - ->setCustomerId(getRandomObject(new \Thelia\Model\CustomerQuery())->getId()) + ->setCurrency( + \Thelia\Model\CurrencyQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne() + ) + ->setCustomer( + \Thelia\Model\CustomerQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne() + ) ->setDiscount(mt_rand(0, 10)) - ->setLang(getRandomObject(new \Thelia\Model\LangQuery())) + ->setLang( + \Thelia\Model\LangQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne() + ) ->setPostage(mt_rand(1, 50)) ; $placedOrder->save($con); for ($j=0; $j < mt_rand(1, 10); ++$j) { - $pse = getRandomObject(new \Thelia\Model\ProductSaleElementsQuery()); + $pse = \Thelia\Model\ProductSaleElementsQuery::create() + ->addAscendingOrderByColumn('RAND()') + ->findOne(); + $product = $pse->getProduct(); $orderProduct = new \Thelia\Model\OrderProduct(); @@ -896,18 +930,4 @@ Sed facilisis pellentesque nisl, eu tincidunt erat scelerisque a. Nullam malesua $coupon3->setIsRemovingPostage(false); $coupon3->setIsAvailableOnSpecialOffers(false); $coupon3->save(); -} - -function getRandomObject(\Propel\Runtime\ActiveQuery\ModelCriteria $query) -{ - $max = $query->count(); - - if ($max === 0) { - throw new Exception("There is no entry in ". get_class($query)); - } - - $first_id = $query->findOne()->getId(); - $obj = $query->findPk(mt_rand($first_id, $first_id+$max-1)); - - return $obj; -} +} \ No newline at end of file From b688ee86f0dcfa43d1a5505ea2b9cabd67aa1759 Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 13:30:45 +0200 Subject: [PATCH 5/6] =?UTF-8?q?fix=20cs=20=09modifi=C3=A9:=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20setup/faker.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/faker.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup/faker.php b/setup/faker.php index 1eaaff4f4..957ccbca4 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -930,4 +930,4 @@ Sed facilisis pellentesque nisl, eu tincidunt erat scelerisque a. Nullam malesua $coupon3->setIsRemovingPostage(false); $coupon3->setIsAvailableOnSpecialOffers(false); $coupon3->save(); -} \ No newline at end of file +} From 7d4d1857fce00ddc01b62d2977a2ace62d3a0cce Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Wed, 18 Jun 2014 15:00:29 +0200 Subject: [PATCH 6/6] =?UTF-8?q?Fix=20colissimo=20and=20cheque=20id=20retri?= =?UTF-8?q?eving=20=09modifi=C3=A9:=20=20=20=20=20=20=20=20=20setup/faker.?= =?UTF-8?q?php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- setup/faker.php | 37 ++++++++++++++----------------------- 1 file changed, 14 insertions(+), 23 deletions(-) diff --git a/setup/faker.php b/setup/faker.php index 957ccbca4..95080f40b 100644 --- a/setup/faker.php +++ b/setup/faker.php @@ -497,6 +497,16 @@ try { echo "Creating orders\n"; + $colissimo_id = ModuleQuery::create()-> + filterByCode("Colissimo") + ->findOne() + ->getId(); + + $cheque_id = ModuleQuery::create() + ->filterByCode("Cheque") + ->findOne() + ->getId(); + for ($i=0; $i < 50; ++$i) { $placedOrder = new \Thelia\Model\Order(); @@ -512,12 +522,7 @@ try { ->setPhone($faker->phoneNumber) ->setZipcode($faker->postcode) ->setCity($faker->city) - ->setCountryId( - \Thelia\Model\CountryQuery::create() - ->addAscendingOrderByColumn('RAND()') - ->findOne() - ->getId() - ) + ->setCountryId(64) ->save($con) ; @@ -533,29 +538,15 @@ try { ->setPhone($faker->phoneNumber) ->setZipcode($faker->postcode) ->setCity($faker->city) - ->setCountryId( - \Thelia\Model\CountryQuery::create() - ->addAscendingOrderByColumn('RAND()') - ->findOne() - ->getId() - ) + ->setCountryId(64) ->save($con) ; $placedOrder ->setDeliveryOrderAddressId($deliveryOrderAddress->getId()) ->setInvoiceOrderAddressId($invoiceOrderAddress->getId()) - ->setDeliveryModuleId( - ModuleQuery::create()-> - filterByCode("Colissimo") - ->findOne() - ->getId() - ) - ->setPaymentModuleId( - ModuleQuery::create() - ->filterByCode("Cheque") - ->findOne()->getId() - ) + ->setDeliveryModuleId($colissimo_id) + ->setPaymentModuleId($cheque_id) ->setStatusId(mt_rand(1, 5)) ->setCurrency( \Thelia\Model\CurrencyQuery::create()