Passed
Push — master ( 9d8bb8...60c6b0 )
by Petr
03:23
created

EventRepository::findOneByNameAndDate()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
dl 0
loc 9
ccs 0
cts 0
cp 0
rs 9.6666
c 1
b 0
f 0
cc 1
eloc 4
nc 1
nop 2
crap 2
1
<?php
2
3
namespace AppBundle\Entity\Repository;
4
5
use AppBundle\Entity\Event;
6
use AppBundle\Entity\Infrasctucture\AbstractRepository;
7
use Doctrine\Common\Collections\ArrayCollection;
8
9
/** {@inheritDoc} */
10
class EventRepository extends AbstractRepository
11
{
12
13
    /**
14
     * @return Event|null
15
     */
16 7
    public function findOneById(string $id)
17
    {
18 7
        return $this->find($id);
19
    }
20
21
    /**
22
     * @return Event|object|null
23
     */
24
    public function findOneByNameAndDate(string $name, \DateTime $date)
25
    {
26
        return $this->findOneBy(
27
            [
28
                'name' => $name,
29
                'date' => $date,
30
            ]
31
        );
32
    }
33
34
    /**
35
     * @return Event[]
36
     */
37 9
    public function findLike(string $likeString): ArrayCollection
38
    {
39 9
        $queryBuilder = $this->createQueryBuilder('event');
40 9
        $queryBuilder->select('event');
41 9
        $queryBuilder->where('event.name LIKE :eventName');
42 9
        $queryBuilder->setParameter('eventName', '%' . $likeString . '%');
43
44 9
        return new ArrayCollection($queryBuilder->getQuery()->getResult());
45
    }
46
}
47