From d1f30adc475b9686c1a0afd7336e173e050fbd41 Mon Sep 17 00:00:00 2001 From: Thomas Recouvreux Date: Wed, 11 Sep 2013 22:38:28 -0400 Subject: [PATCH] Add date & qte fields to purchases * add date & qte fields to purchases of Purchase$getPurchasesForUser return * rename User$getLastPurchase into User$getLastPurchases --- src/Payutc/Bom/Purchase.php | 2 +- src/Payutc/Bom/User.php | 4 ++-- src/Payutc/Service/POSS2.php | 2 +- src/Payutc/Service/POSS3.php | 2 +- tests/Payutc/Service/Poss3RodbTest.php | 2 +- tests/Payutc/Service/Poss3RwdbTest.php | 6 +++--- tests/PurchaseRodbTest.php | 11 +++++++++++ 7 files changed, 20 insertions(+), 9 deletions(-) diff --git a/src/Payutc/Bom/Purchase.php b/src/Payutc/Bom/Purchase.php index de95812..032a05a 100644 --- a/src/Payutc/Bom/Purchase.php +++ b/src/Payutc/Bom/Purchase.php @@ -191,7 +191,7 @@ public static function getRank($fun_id, $obj_id, $start, $end, $top, $sort_by) { public static function getPurchasesForUser($usr_id, $time_limit=null) { $qb = Dbal::createQueryBuilder(); - $qb->select('pur_id', 'obj_id', 'pur_price') + $qb->select('pur_id', 'obj_id', 'pur_price', 'pur_qte', 'pur_date') ->from('t_purchase_pur', 'pur') ->Where('usr_id_buyer = :usr_id') ->andWhere('pur_removed = 0') diff --git a/src/Payutc/Bom/User.php b/src/Payutc/Bom/User.php index a5ce030..1df6e3b 100644 --- a/src/Payutc/Bom/User.php +++ b/src/Payutc/Bom/User.php @@ -316,10 +316,10 @@ public function isCotisant() { * * @return array $return */ - public function getLastPurchase() { + public function getLastPurchases() { return Purchase::getPurchasesForUser($this->getId(), 60*15); } - + /** * Initialiser ginger, éventuellement avec une URL perso * diff --git a/src/Payutc/Service/POSS2.php b/src/Payutc/Service/POSS2.php index 98e2bcd..14d4f8c 100644 --- a/src/Payutc/Service/POSS2.php +++ b/src/Payutc/Service/POSS2.php @@ -233,7 +233,7 @@ public function getBuyerInfo($badge_id) { "firstname"=>$buyer->getFirstname(), "lastname"=>$buyer->getLastname(), "solde"=>$buyer->getCredit(), - "last_purchase"=>$buyer->getLastPurchase() + "last_purchase"=>$buyer->getLastPurchases() )); } else { Log::warn("getBuyerInfo() : No Seller loaded"); diff --git a/src/Payutc/Service/POSS3.php b/src/Payutc/Service/POSS3.php index 9e74210..f2543b8 100644 --- a/src/Payutc/Service/POSS3.php +++ b/src/Payutc/Service/POSS3.php @@ -44,7 +44,7 @@ public function getBuyerInfo($badge_id) { "firstname"=>$buyer->getFirstname(), "lastname"=>$buyer->getLastname(), "solde"=>$buyer->getCredit(), - "last_purchases"=>$buyer->getLastPurchase() + "last_purchases"=>$buyer->getLastPurchases() ); } diff --git a/tests/Payutc/Service/Poss3RodbTest.php b/tests/Payutc/Service/Poss3RodbTest.php index f2e350a..a907abd 100644 --- a/tests/Payutc/Service/Poss3RodbTest.php +++ b/tests/Payutc/Service/Poss3RodbTest.php @@ -83,7 +83,7 @@ public function testTransactionWithoutEnoughCredit() { $u = new User("trecouvr"); $solde = $u->getCredit(); - $nb_purchase = count($u->getLastPurchase()); + $nb_purchase = count($u->getLastPurchases()); $cookie = ''; $r = httpSend('POSS3', 'loginCas', $cookie, array( 'ticket' => 'trecouvr@POSS3', diff --git a/tests/Payutc/Service/Poss3RwdbTest.php b/tests/Payutc/Service/Poss3RwdbTest.php index 57badad..8877461 100644 --- a/tests/Payutc/Service/Poss3RwdbTest.php +++ b/tests/Payutc/Service/Poss3RwdbTest.php @@ -29,7 +29,7 @@ public function testTransaction() { $u = new User("trecouvr"); $solde = $u->getCredit(); - $nb_purchase = count($u->getLastPurchase()); + $nb_purchase = count($u->getLastPurchases()); $cookie = ''; $r = httpSend('POSS3', 'loginCas', $cookie, array( 'ticket' => 'trecouvr@POSS3', @@ -55,7 +55,7 @@ public function testTransaction() $this->assertEquals(200, $r->code); $u = new User("trecouvr"); $this->assertEquals($solde-280, $u->getCredit()); - $purchases = $u->getLastPurchase(); + $purchases = $u->getLastPurchases(); sort_by_key($purchases, 'pur_id'); $this->assertEquals($nb_purchase+3, count($purchases)); $purchases = array_slice($purchases, count($purchases)-3); @@ -74,7 +74,7 @@ public function testCancel() { $u = new User("trecouvr"); $solde = $u->getCredit(); - $nb_purchase = count($u->getLastPurchase()); + $nb_purchase = count($u->getLastPurchases()); $cookie = ''; $r = httpSend('POSS3', 'loginCas', $cookie, array( 'ticket' => 'trecouvr@POSS3', diff --git a/tests/PurchaseRodbTest.php b/tests/PurchaseRodbTest.php index 3e3949c..8542131 100644 --- a/tests/PurchaseRodbTest.php +++ b/tests/PurchaseRodbTest.php @@ -73,6 +73,17 @@ public function testGetRank() { $this->assertEquals($waited,$r); } + + public function testGetPurchasesForUser() { + $purchases = Purchase::getPurchasesForUser(9447); + $this->assertTrue(count($purchases) > 0); + $pur = $purchases[0]; + $this->assertArrayHasKey('pur_id', $pur); + $this->assertArrayHasKey('obj_id', $pur); + $this->assertArrayHasKey('pur_price', $pur); + $this->assertArrayHasKey('pur_qte', $pur); + $this->assertArrayHasKey('pur_date', $pur); + } }