Passed
Pull Request — master (#2146)
by Nico
35:16 queued 24:41
created

UserPirateRoundRepository::findByPirateRound()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 4
nc 1
nop 1
dl 0
loc 6
ccs 0
cts 4
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Stu\Orm\Repository;
6
7
use Doctrine\ORM\EntityRepository;
8
use Override;
0 ignored issues
show
Bug introduced by
The type Override was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
9
use Stu\Orm\Entity\UserPirateRound;
10
use Stu\Orm\Entity\UserPirateRoundInterface;
11
12
/**
13
 * @extends EntityRepository<UserPirateRound>
14
 */
15
final class UserPirateRoundRepository extends EntityRepository implements UserPirateRoundRepositoryInterface
16
{
17
    #[Override]
18
    public function prototype(): UserPirateRoundInterface
19
    {
20
        return new UserPirateRound();
21
    }
22
23
    #[Override]
24
    public function save(UserPirateRoundInterface $userPirateRound): void
25
    {
26
        $em = $this->getEntityManager();
27
28
        $em->persist($userPirateRound);
29
    }
30
31
    #[Override]
32
    public function delete(UserPirateRoundInterface $userPirateRound): void
33
    {
34
        $em = $this->getEntityManager();
35
36
        $em->remove($userPirateRound);
37
    }
38
39
    #[Override]
40
    public function findByPirateRound(int $pirateRoundId): array
41
    {
42
        return $this->findBy(
43
            ['pirate_round_id' => $pirateRoundId],
44
            ['prestige' => 'DESC', 'destroyed_ships' => 'DESC']
45
        );
46
    }
47
48
    #[Override]
49
    public function findByUser(int $userId): array
50
    {
51
        return $this->findBy(
52
            ['user_id' => $userId],
53
            ['pirate_round_id' => 'DESC']
54
        );
55
    }
56
57
    #[Override]
58
    public function findByUserAndPirateRound(int $userId, int $pirateRoundId): ?UserPirateRoundInterface
59
    {
60
        return $this->findOneBy([
61
            'user_id' => $userId,
62
            'pirate_round_id' => $pirateRoundId
63
        ]);
64
    }
65
}
66