diff --git a/db/seeds/DonationSeeder.php b/db/seeds/DonationSeeder.php index 5fa730e30649ed4791624f38976b09995a028a1f..8121fa95902006b67b69a0025b328dded078883f 100644 --- a/db/seeds/DonationSeeder.php +++ b/db/seeds/DonationSeeder.php @@ -70,7 +70,7 @@ class DonationSeeder extends AbstractSeed array( 'id' => 3, 'status' => 100, - 'datec' => '2016-06-10 12:34', + 'datec' => '2016-06-11 12:34', 'somme' => 100, 'lang' => 'fr_FR', 'cadeau' => 1, diff --git a/src/LQDN/Finder/DonationFinder.php b/src/LQDN/Finder/DonationFinder.php index 7abb68061572f02634c0f2831d3bc47bfc9f5ef8..1193b740c054b15d936994620d4d1b8821fa2df5 100644 --- a/src/LQDN/Finder/DonationFinder.php +++ b/src/LQDN/Finder/DonationFinder.php @@ -43,7 +43,7 @@ class DonationFinder * * @return array */ - public function adminSearch($text, $sum, $public, $status, $limit = 50, $page = 1) + public function adminSearch($text, $sum, $public, $status, $date1, $date2 = "2999-12-31 23:59:59", $limit = 50, $page = 1) { $query = <<<EOQ SELECT d.id as id, @@ -87,6 +87,11 @@ EOQ; $params['status'] = $status; } + if ('' !== $date1) { + $query .= ' AND d.datec BETWEEN (:date1) AND (:date2) '; + $params['date1'] = $date1; + $params['date2'] = $date2; + } $first = ($page - 1) * $limit; $last = ($page) * $limit; $query .= " ORDER BY datec DESC LIMIT $first, $last"; diff --git a/tests/functional/Finder/DonationFinderTest.php b/tests/functional/Finder/DonationFinderTest.php index 4eb4ceddc26720222b76265b015ce52d4de42be5..54e309a42f4ae5fea5d1a9544a58ba5f1cf455cb 100644 --- a/tests/functional/Finder/DonationFinderTest.php +++ b/tests/functional/Finder/DonationFinderTest.php @@ -43,10 +43,12 @@ class DonationFinderTest extends FunctionalTest public function testAdminSearchDonations() { - $this->assertCount(1, $this->container['donation_finder']->adminSearch($text='alice@example.org', $sum='', $public='', $status='')); - $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='1000', $public='', $status='')); - $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='0', $status='')); - $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='', $status='1')); + $this->assertCount(1, $this->container['donation_finder']->adminSearch($text='alice@example.org', $sum='', $public='', $status='', $date1='')); + $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='1000', $public='', $status='', $date1='')); + $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='0', $status='', $date1='')); + $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='', $status='1', $date1='')); + $this->assertCount(2, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='', $status='1', $date1='')); + $this->assertCount(1, $this->container['donation_finder']->adminSearch($text='', $sum='', $public='', $status='', $date1='2016-06-11 00:00:00')); } }