Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
14 / 14
100.00% covered (success)
100.00%
3 / 3
CRAP
100.00% covered (success)
100.00%
1 / 1
Source
100.00% covered (success)
100.00%
14 / 14
100.00% covered (success)
100.00%
3 / 3
3
100.00% covered (success)
100.00%
1 / 1
 getEntityMapping
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
1
 addConditionSource
100.00% covered (success)
100.00%
2 / 2
100.00% covered (success)
100.00%
1 / 1
1
 postProcess
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace BO\Zmsbackend\Source\Repository;
4
5class Source extends \BO\Zmsbackend\Query\Base implements \BO\Zmsbackend\Query\MappingInterface
6{
7    /**
8     * @var String TABLE mysql table reference
9     */
10    const string TABLE = 'source';
11
12    /**
13     * @return string[]
14     *
15     */
16    #[\Override]
17    public function getEntityMapping()
18    {
19        return [
20            'source' => 'source.source',
21            'label' => 'source.label',
22            'editable' => 'source.editable',
23            'contact__name' => 'source.contact__name',
24            'contact__email' => 'source.contact__email',
25            'lastChange' => 'source.lastChange',
26        ];
27    }
28
29    public function addConditionSource($source): static
30    {
31        $this->query->where('source.source', '=', $source);
32        return $this;
33    }
34
35    #[\Override]
36    public function postProcess($data)
37    {
38        $data[$this->getPrefixed("lastChange")] =
39            (new \DateTime($data[$this->getPrefixed("lastChange")] . \BO\Zmsbackend\Connection\Select::$connectionTimezone))
40            ->getTimestamp();
41        return $data;
42    }
43}