cServiceChargeALaCarte   A
last analyzed

Complexity

Total Complexity 13

Size/Duplication

Total Lines 140
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 13
lcom 1
cbo 0
dl 0
loc 140
ccs 0
cts 60
cp 0
rs 10
c 0
b 0
f 0

11 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 7 1
A getDate() 0 12 3
A setDate() 0 5 1
A getAmount() 0 4 1
A setAmount() 0 5 1
A getQuantity() 0 4 1
A setQuantity() 0 5 1
A getID_ServiceCharge() 0 4 1
A setID_ServiceCharge() 0 5 1
A getReference() 0 4 1
A setReference() 0 5 1
1
<?php
2
3
namespace Gueststream\PMS\IQWare\API;
4
5
class cServiceChargeALaCarte
6
{
7
8
    /**
9
     * @var \DateTime $Date
10
     */
11
    protected $Date = null;
12
13
    /**
14
     * @var float $Amount
15
     */
16
    protected $Amount = null;
17
18
    /**
19
     * @var int $Quantity
20
     */
21
    protected $Quantity = null;
22
23
    /**
24
     * @var int $ID_ServiceCharge
25
     */
26
    protected $ID_ServiceCharge = null;
27
28
    /**
29
     * @var string $Reference
30
     */
31
    protected $Reference = null;
32
33
    /**
34
     * @param \DateTime $Date
35
     * @param float $Amount
36
     * @param int $Quantity
37
     * @param int $ID_ServiceCharge
38
     */
39
    public function __construct(\DateTime $Date, $Amount, $Quantity, $ID_ServiceCharge)
40
    {
41
        $this->Date = $Date->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $Date->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $Date.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
42
        $this->Amount = $Amount;
43
        $this->Quantity = $Quantity;
44
        $this->ID_ServiceCharge = $ID_ServiceCharge;
45
    }
46
47
    /**
48
     * @return \DateTime
49
     */
50
    public function getDate()
51
    {
52
        if ($this->Date == null) {
53
            return null;
54
        } else {
55
            try {
56
                return new \DateTime($this->Date);
57
            } catch (\Exception $e) {
58
                return false;
59
            }
60
        }
61
    }
62
63
    /**
64
     * @param \DateTime $Date
65
     * @return \Gueststream\PMS\IQWare\API\cServiceChargeALaCarte
66
     */
67
    public function setDate(\DateTime $Date)
68
    {
69
        $this->Date = $Date->format(\DateTime::ATOM);
0 ignored issues
show
Documentation Bug introduced by
It seems like $Date->format(\DateTime::ATOM) of type string is incompatible with the declared type object<DateTime> of property $Date.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
70
        return $this;
71
    }
72
73
    /**
74
     * @return float
75
     */
76
    public function getAmount()
77
    {
78
        return $this->Amount;
79
    }
80
81
    /**
82
     * @param float $Amount
83
     * @return \Gueststream\PMS\IQWare\API\cServiceChargeALaCarte
84
     */
85
    public function setAmount($Amount)
86
    {
87
        $this->Amount = $Amount;
88
        return $this;
89
    }
90
91
    /**
92
     * @return int
93
     */
94
    public function getQuantity()
95
    {
96
        return $this->Quantity;
97
    }
98
99
    /**
100
     * @param int $Quantity
101
     * @return \Gueststream\PMS\IQWare\API\cServiceChargeALaCarte
102
     */
103
    public function setQuantity($Quantity)
104
    {
105
        $this->Quantity = $Quantity;
106
        return $this;
107
    }
108
109
    /**
110
     * @return int
111
     */
112
    public function getID_ServiceCharge()
113
    {
114
        return $this->ID_ServiceCharge;
115
    }
116
117
    /**
118
     * @param int $ID_ServiceCharge
119
     * @return \Gueststream\PMS\IQWare\API\cServiceChargeALaCarte
120
     */
121
    public function setID_ServiceCharge($ID_ServiceCharge)
122
    {
123
        $this->ID_ServiceCharge = $ID_ServiceCharge;
124
        return $this;
125
    }
126
127
    /**
128
     * @return string
129
     */
130
    public function getReference()
131
    {
132
        return $this->Reference;
133
    }
134
135
    /**
136
     * @param string $Reference
137
     * @return \Gueststream\PMS\IQWare\API\cServiceChargeALaCarte
138
     */
139
    public function setReference($Reference)
140
    {
141
        $this->Reference = $Reference;
142
        return $this;
143
    }
144
}
145