Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
90.00% covered (success)
90.00%
9 / 10
75.00% covered (warning)
75.00%
3 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 1
CostObjectL11n
90.00% covered (success)
90.00%
9 / 10
75.00% covered (warning)
75.00%
3 / 4
4.02
0.00% covered (danger)
0.00%
0 / 1
 getLanguage
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 setLanguage
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 toArray
100.00% covered (success)
100.00%
7 / 7
100.00% covered (success)
100.00%
1 / 1
1
 jsonSerialize
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2/**
3 * Jingga
4 *
5 * PHP Version 8.1
6 *
7 * @package   Modules\Accounting\Models
8 * @copyright Dennis Eichhorn
9 * @license   OMS License 2.0
10 * @version   1.0.0
11 * @link      https://jingga.app
12 */
13declare(strict_types=1);
14
15namespace Modules\Accounting\Models;
16
17use phpOMS\Localization\ISO639x1Enum;
18
19/**
20 * CostObject class.
21 *
22 * @package Modules\Accounting\Models
23 * @license OMS License 2.0
24 * @link    https://jingga.app
25 * @since   1.0.0
26 */
27class CostObjectL11n implements \JsonSerializable
28{
29    /**
30     * Article ID.
31     *
32     * @var int
33     * @since 1.0.0
34     */
35    public int $id = 0;
36
37    /**
38     * CostObject ID.
39     *
40     * @var int
41     * @since 1.0.0
42     */
43    public int $costobject = 0;
44
45    /**
46     * Language.
47     *
48     * @var string
49     * @since 1.0.0
50     */
51    public string $language = ISO639x1Enum::_EN;
52
53    /**
54     * Name.
55     *
56     * @var string
57     * @since 1.0.0
58     */
59    public string $name = '';
60
61    /**
62     * Description.
63     *
64     * @var string
65     * @since 1.0.0
66     */
67    public string $description = '';
68
69    /**
70     * Get language
71     *
72     * @return string
73     *
74     * @since 1.0.0
75     */
76    public function getLanguage() : string
77    {
78        return $this->language;
79    }
80
81    /**
82     * Set language
83     *
84     * @param string $language Language
85     *
86     * @return void
87     *
88     * @since 1.0.0
89     */
90    public function setLanguage(string $language) : void
91    {
92        $this->language = $language;
93    }
94
95    /**
96     * {@inheritdoc}
97     */
98    public function toArray() : array
99    {
100        return [
101            'id'                     => $this->id,
102            'name'                   => $this->name,
103            'description'            => $this->description,
104            'costobject'             => $this->costobject,
105            'language'               => $this->language,
106        ];
107    }
108
109    /**
110     * {@inheritdoc}
111     */
112    public function jsonSerialize() : mixed
113    {
114        return $this->toArray();
115    }
116}